+#include <TimeLib.h>
+#include <Time.h>
#include <InputDebounce.h>
#include <Wiegand.h>
#include <ESP8266WiFi.h>
+#include <WiFiUdp.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <WiFiManager.h>
// files to store card/fob data in
#define CARD_TMPFILE "/cards.tmp"
#define CARD_FILE "/cards.dat"
+#define LOG_FILE "/log.dat"
// how long to hold the latch open in millis
#define LATCH_HOLD 5000
+// webserver for configuration portnumber
+#define CONFIG_PORT 80
+
+// ntp server to use
+#define NTP_SERVER "1.uk.pool.ntp.org"
+
/***************************
* code below
*/
WIEGAND wg;
-ESP8266WebServer server(80);
+ESP8266WebServer server(CONFIG_PORT);
+
+const unsigned int localPort = 2390;
+IPAddress ntpServerIP;
+
+const int NTP_PACKET_SIZE = 48; // NTP time stamp is in the first 48 bytes of the message
+
+byte packetBuffer[ NTP_PACKET_SIZE]; //buffer to hold incoming and outgoing packets
+
+WiFiUDP udp;
+
+
+/* compose and send an NTP time request packet */
+void ntp_send()
+{
+ if (ntpServerIP == INADDR_NONE) {
+ WiFi.hostByName(NTP_SERVER, ntpServerIP);
+ Serial.print("Got NTP server " NTP_SERVER " address ");
+ Serial.println(ntpServerIP);
+ }
+
+
+ memset(packetBuffer, 0, NTP_PACKET_SIZE);
+ // Initialize values needed to form NTP request
+ // (see URL above for details on the packets)
+ packetBuffer[0] = 0b11100011; // LI, Version, Mode
+ packetBuffer[1] = 0; // Stratum, or type of clock
+ packetBuffer[2] = 6; // Polling Interval
+ packetBuffer[3] = 0xEC; // Peer Clock Precision
+ // 8 bytes of zero for Root Delay & Root Dispersion
+ packetBuffer[12] = 49;
+ packetBuffer[13] = 0x4E;
+ packetBuffer[14] = 49;
+ packetBuffer[15] = 52;
+
+ // all NTP fields have been given values, now
+ // you can send a packet requesting a timestamp:
+ udp.beginPacket(ntpServerIP, 123); //NTP requests are to port 123
+ udp.write(packetBuffer, NTP_PACKET_SIZE);
+ udp.endPacket();
+
+ Serial.println("Sending NTP request");
+}
+
+/* request a time update from NTP and parse the result */
+time_t ntp_fetch()
+{
+ while (udp.parsePacket() > 0); // discard old udp packets
+ ntp_send();
+ uint32_t beginWait = millis();
+ while (millis() - beginWait < 2500) {
+ int size = udp.parsePacket();
+ if (size >= NTP_PACKET_SIZE) {
+ udp.read(packetBuffer, NTP_PACKET_SIZE);
+
+ // this is NTP time (seconds since Jan 1 1900):
+ unsigned long secsSince1900 = packetBuffer[40] << 24 | packetBuffer[41] << 16 | packetBuffer[42] << 8 | packetBuffer[43];
+ const unsigned long seventyYears = 2208988800UL;
+ time_t unixtime = secsSince1900 - seventyYears;
+
+ Serial.print("NTP update unixtime=");
+ Serial.println(unixtime);
+ return unixtime;
+ }
+ }
+ Serial.println("No NTP response");
+ return 0;
+}
+
+/* how big is a file */
int fileSize(const char *filename)
{
int ret = -1;
return ret;
}
+
+/* HTTP page request for / */
void handleRoot()
{
char mtime[16];
</head>\
<body>\
<h1>Door Lock!</h1>\
- <p>Uptime: " + (String)mtime + "</p>";
+ <p>Uptime: " + (String)mtime + "</p>\n";
+
+ if (timeStatus() == timeSet) {
+ time_t when = now();
+ out += "<p>Time now: " + getDate(when) + " " + getTime(when) + "</p>\n";
+ }
+
+
+ FSInfo fs_info;
+ if (SPIFFS.info(fs_info)) {
+ out += "<p>Onboard Flash disk: - Size:"+String(fs_info.totalBytes)+" Used:"+String(fs_info.usedBytes)+"</p>\n";
+ }
+
+ out += "<p>Lock is currently ";
+ if (digitalRead(SENSE) == HIGH) out += "LOCKED"; else out += "OPEN";
+ out += "</p>\n";
if (SPIFFS.exists(CARD_FILE)) {
<li><a href=\"/reset\">Reset Configuration</a>\
<li><a href=\"/upload\">Upload Cardlist</a>";
- FSInfo fs_info;
- if (SPIFFS.info(fs_info)) {
- out += "<li><a href=\"/format\">Format SPIFFS</a> - Size:"+String(fs_info.totalBytes)+" Used:"+String(fs_info.usedBytes);
+
+ if (SPIFFS.exists(LOG_FILE)) {
+ out += "<li><a href=\"/wipelog\">Wipe log file</a>";
+ out += "<li><a href=\"/download_logfile\">Download full logfile</a>";
}
-
- out += "<li>Lock is currently ";
- if (digitalRead(SENSE) == HIGH) out += "LOCKED"; else out += "OPEN";
+
- out += "</ul>\
- </body>\
+ out += "</ul>";
+
+ if (SPIFFS.exists(LOG_FILE)) out += printLog(true, 10);
+
+ out += "</body>\
</html>";
server.send( 200, "text/html", out);
f.close();
}
+void handleWipelog()
+{
+ if (!server.authenticate(www_username, www_password))
+ return server.requestAuthentication();
+
+ SPIFFS.remove(LOG_FILE);
+ server.send(200, "text/plain", "logfile deleted");
+}
+
+void handleDownloadLogfile()
+{
+ if (!server.authenticate(www_username, www_password))
+ return server.requestAuthentication();
+
+ String result = printLog(false, 0);
+ server.send(200, "text/csv", result);
+}
+
void handleNotFound() {
String out = "File Not found\n\n";
server.send(404, "text/plain", out);
SPIFFS.remove(CARD_FILE);
SPIFFS.rename(CARD_TMPFILE, CARD_FILE);
}
+ out += "</p><a href=\"/\">Back</a>";
server.send(upload_code, "text/plain", out);
}
server.send(200, "text/plain", "");
}
-
-static InputDebounce release_button;
-
-void setup() {
- // some serial, for debug
- Serial.begin(115200);
-
- // The lock mechanism, set HIGH to turn on and connect ground to output pin
- pinMode(MOSFET, OUTPUT);
- digitalWrite(MOSFET, LOCK_CLOSE);
-
- // lock sense microswitch
- pinMode(SENSE, INPUT_PULLUP);
-
- // emergency door release switch
- pinMode(ERELEASE, INPUT);
-
- // indicators on the keyfob reader
- pinMode(BUZZER, OUTPUT);
- pinMode(DOORLED, OUTPUT);
- digitalWrite(BUZZER, BUZZ_OFF);
- digitalWrite(DOORLED, DLED_RED);
-
- Serial.println("DoorLock. Testing WiFi config...");
-
- // if we have no config, enter config mode
- WiFiManager wfm;
- wfm.autoConnect(MANAGER_AP);
-
- // we have config, enable web server
- server.on( "/", handleRoot );
- server.on( "/reset", handleReset );
- server.onFileUpload( handleFileUpload);
- server.on( "/upload", HTTP_GET, handleUploadRequest);
- server.on( "/upload", HTTP_POST, handleUploadComplete);
- server.on( "/download", handleDownload );
- server.onNotFound( handleNotFound );
- server.begin();
-
- // advertise we exist via MDNS
- if (!MDNS.begin("doorlock")) {
- Serial.println("Error setting up MDNS responder.");
- } else {
- MDNS.addService("http", "tcp", 80);
- }
-
- // enable internal flash filesystem
- SPIFFS.begin();
-
- // init wiegand keyfob reader
- Serial.println("Starting Wiegand test reader");
- wg.begin(WD0, WD0, WD1, WD1);
-
- // setup button debounce for the release switch
- release_button.setup(ERELEASE, 20, InputDebounce::PIM_EXT_PULL_DOWN_RES);
+String getTime(time_t when)
+{
+ String ans;
+ int h = hour(when);
+ int m = minute(when);
+ int s = second(when);
+
+ if (h<10) ans += "0";
+ ans += String(h) + ":";
+ if (m<10) ans += "0";
+ ans += String(m) + ":";
+ if (s<10) ans += "0";
+ ans += String(s);
+
+ return ans;
}
-unsigned long locktime = 0;
-
-
-void unlock_door()
+String getDate(time_t when)
{
- digitalWrite(DOORLED, DLED_GREEN);
- digitalWrite(MOSFET, LOCK_OPEN);
- if (locktime == 0) {
- digitalWrite(BUZZER, BUZZ_ON);
- delay(100);
- digitalWrite(BUZZER, BUZZ_OFF);
- delay(50);
- digitalWrite(BUZZER, BUZZ_ON);
- delay(100);
- digitalWrite(BUZZER, BUZZ_OFF);
- }
- locktime = millis();
+ String ans;
+
+ ans += String(year(when)) + "-" + String(month(when)) + "-" + String(day(when));
+ return ans;
}
+
int sanityCheck(const char * filename)
{
int count = 0;
return answer;
}
-void loop() {
- unsigned long now = millis();
+void logEntry(time_t when, uint32_t card)
+{
+ unsigned char entry[8];
+
+ File f = SPIFFS.open(LOG_FILE, "a");
+ if (!f) {
+ Serial.println("Error opening log file");
+ return;
+ }
+
+ // compose the record to write
+ ((uint32_t *)entry)[0] = when;
+ ((uint32_t *)entry)[1] = card;
+ f.write(entry, 8);
+ f.close();
+}
+
+String printLog(int html, int last)
+{
+ String out;
+ File f = SPIFFS.open(LOG_FILE, "r");
+ if (!f) return String("Could not open log file");
+
+ unsigned char entry[8];
+ uint32_t * data = (uint32_t *)entry;
+
+ if (last != 0) {
+ // print only the last N items
+ int pos = f.size() / 8;
+ if (pos > last) pos -= last; else pos = 0;
+ f.seek( pos * 8, SeekSet);
+ if (html) out += "Last " + String(last) + " log entries :-";
+ }
+ if (html) out += "<ul>";
+
+ while (f.available()) {
+ f.read(entry, 8);
+ if (html) out += "<li> ";
+ out += getDate( data[0] );
+ out += " ";
+ out += getTime( data[0] );
+ if (html) out += " - "; else out += "," + String(data[1]) + ",";
+
+ if (data[1] == 0) {
+ if (html) out += "<i>";
+ out += "Emergency Release";
+ if (html) out += "</i>";
+ } else {
+ String whom = findKeyfob(data[1]);
+ if (whom == "") {
+ if (html) out += "<i>by ";
+ out += "Unknown keyfob";
+ if (html) out += "</i>";
+ } else {
+ out += whom;
+ }
+ if (html) out += " (" + String(data[1]) + ")";
+ }
+ out += "\n";
+ }
+ f.close();
+ if (html) out += "</ul>";
+ return out;
+}
+
+
+static InputDebounce release_button;
+
+/********************************************
+ * Main setup routine
+ */
+void setup() {
+ // some serial, for debug
+ Serial.begin(115200);
+
+ // The lock mechanism, set HIGH to turn on and connect ground to output pin
+ pinMode(MOSFET, OUTPUT);
+ digitalWrite(MOSFET, LOCK_CLOSE);
+
+ // lock sense microswitch
+ pinMode(SENSE, INPUT_PULLUP);
+
+ // emergency door release switch
+ pinMode(ERELEASE, INPUT);
+
+ // indicators on the keyfob reader
+ pinMode(BUZZER, OUTPUT);
+ pinMode(DOORLED, OUTPUT);
+ digitalWrite(BUZZER, BUZZ_OFF);
+ digitalWrite(DOORLED, DLED_RED);
+ Serial.println("DoorLock. Testing WiFi config...");
+
+ // if we have no config, enter config mode
+ WiFiManager wfm;
+ wfm.autoConnect(MANAGER_AP);
+
+ // we have config, enable web server
+ server.on( "/", handleRoot );
+ server.on( "/reset", handleReset );
+ server.on( "/download", handleDownload );
+ server.on( "/wipelog", handleWipelog );
+ server.on( "/download_logfile", handleDownloadLogfile );
+ server.onFileUpload( handleFileUpload);
+ server.on( "/upload", HTTP_GET, handleUploadRequest);
+ server.on( "/upload", HTTP_POST, handleUploadComplete);
+ server.onNotFound( handleNotFound );
+ server.begin();
+
+ // advertise we exist via MDNS
+ if (!MDNS.begin("doorlock")) {
+ Serial.println("Error setting up MDNS responder.");
+ } else {
+ MDNS.addService("http", "tcp", 80);
+ }
+
+ // enable internal flash filesystem
+ SPIFFS.begin();
+
+ // init wiegand keyfob reader
+ Serial.println("Starting Wiegand test reader");
+ wg.begin(WD0, WD0, WD1, WD1);
+
+ // setup button debounce for the release switch
+ release_button.setup(ERELEASE, 20, InputDebounce::PIM_EXT_PULL_DOWN_RES);
+
+ // listener port for replies from NTP
+ udp.begin(localPort);
+ setSyncProvider(ntp_fetch);
+}
+
+unsigned long locktime = 0;
+
+
+void unlock_door()
+{
+ digitalWrite(DOORLED, DLED_GREEN);
+ digitalWrite(MOSFET, LOCK_OPEN);
+ if (locktime == 0) {
+ digitalWrite(BUZZER, BUZZ_ON);
+ delay(100);
+ digitalWrite(BUZZER, BUZZ_OFF);
+ delay(50);
+ digitalWrite(BUZZER, BUZZ_ON);
+ delay(100);
+ digitalWrite(BUZZER, BUZZ_OFF);
+ }
+ locktime = millis();
+}
+
+
+void loop() {
// is the latch held open ?
if (locktime != 0) {
- if (locktime + LATCH_HOLD < now) {
+ if (locktime + LATCH_HOLD < millis()) {
locktime = 0;
digitalWrite(MOSFET, LOCK_CLOSE);
digitalWrite(DOORLED, DLED_RED);
// handle web requests
server.handleClient();
- unsigned int ertime = release_button.process(now);
+ unsigned int ertime = release_button.process(millis());
unsigned int count = release_button.getStateOnCount();
static unsigned last_count = 0;
if (ertime > 0) {
last_count = count;
Serial.println("Door Release button triggered.");
unlock_door();
+ logEntry(now(), 0);
} else {
// buttons is still pressed, do nothing
}
Serial.print("Unlocking door for ");
Serial.println(who);
unlock_door();
+ logEntry(now(), code);
}
}
--- /dev/null
+<?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="297mm"
+ height="210mm"
+ viewBox="0 0 1052.3622 744.09448"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.91 r13725"
+ sodipodi:docname="wiring_wiegand.svg">
+ <defs
+ id="defs4" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.70710678"
+ inkscape:cx="513.5001"
+ inkscape:cy="213.52055"
+ inkscape:document-units="mm"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1576"
+ inkscape:window-height="947"
+ inkscape:window-x="299"
+ inkscape:window-y="67"
+ inkscape:window-maximized="0"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:snap-intersection-paths="true"
+ inkscape:object-nodes="true">
+ <sodipodi:guide
+ position="253.5,130.25"
+ orientation="1,0"
+ id="guide4668" />
+ <sodipodi:guide
+ position="637.00001,131.5"
+ orientation="1,0"
+ id="guide4680" />
+ <sodipodi:guide
+ position="217.5,539"
+ orientation="1,0"
+ id="guide4759" />
+ </sodipodi:namedview>
+ <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></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-308.26772)">
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff00ff;stroke-width:3.49730349;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 439,439.3622 0,49.6843 98,0 0,382.8614 100,0"
+ id="path4797"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 842.87128,765.98396 0,-173.24117"
+ id="path4741"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff0000;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 823.7794,596.27833 0,82.73149 42.42641,0 0,96.87363"
+ id="path4739"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 695.79307,485.96967 0,56.56854 44.54773,0 0,-72.12489 101.11627,0 0,48.08326"
+ id="path4737"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" />
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff0000;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 684.47936,475.36307 0,82.02439 67.88226,0 0,-73.53911 72.83199,0 0,31.81981"
+ id="path4735"
+ inkscape:connector-curvature="0" />
+ <g
+ id="g4531">
+ <rect
+ y="763.53845"
+ x="660.53888"
+ height="133.57143"
+ width="270.71429"
+ id="rect4136"
+ style="opacity:1;fill:#800000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <g
+ transform="matrix(1.5555626,0,0,1.5555626,-126.46962,-201.7018)"
+ id="g4172">
+ <rect
+ style="opacity:1;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4142"
+ width="60.714287"
+ height="25"
+ x="608.39282"
+ y="629.24353" />
+ <g
+ id="g4167"
+ transform="translate(2.1428571,-38.571429)">
+ <circle
+ r="4.6428571"
+ cy="680.31494"
+ cx="621.07141"
+ id="path4144"
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <circle
+ r="4.6428571"
+ cy="680.31494"
+ cx="636.60712"
+ id="path4144-3"
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <circle
+ r="4.6428571"
+ cy="680.31494"
+ cx="652.14282"
+ id="path4144-6"
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ </g>
+ </g>
+ <g
+ transform="translate(238.396,145.46197)"
+ id="g4181">
+ <rect
+ style="opacity:1;fill:#005b00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4138"
+ width="67.85714"
+ height="82.14286"
+ x="448.57144"
+ y="646.64789" />
+ <rect
+ style="opacity:1;fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4140"
+ width="48.571419"
+ height="55.714287"
+ x="457.85715"
+ y="666.64789" />
+ <circle
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="path4179"
+ cx="460"
+ cy="656.64795"
+ r="3.5714285" />
+ </g>
+ <rect
+ y="786.39563"
+ x="641.25317"
+ height="90"
+ width="29.285715"
+ id="rect4186"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <rect
+ y="832.10986"
+ x="921.25311"
+ height="56.42857"
+ width="25.714285"
+ id="rect4188"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="100%"
+ id="text4205"
+ y="855.6814"
+ x="882.68176"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:100%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="855.6814"
+ x="882.68176"
+ id="tspan4207"
+ sodipodi:role="line">Programming/</tspan><tspan
+ id="tspan4209"
+ y="865.6814"
+ x="882.68176"
+ sodipodi:role="line">Debug Port</tspan></text>
+ <g
+ transform="translate(366.25314,292.60483)"
+ id="g4228">
+ <rect
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4224"
+ width="21.428572"
+ height="21.428572"
+ x="409.64285"
+ y="529.14789" />
+ <circle
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="path4226"
+ cx="420.35715"
+ cy="539.86218"
+ r="6.0714288" />
+ </g>
+ <g
+ id="g4228-7"
+ transform="translate(367.32458,257.24772)">
+ <rect
+ style="opacity:1;fill:#999999;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4224-5"
+ width="21.428572"
+ height="21.428572"
+ x="409.64285"
+ y="529.14789" />
+ <circle
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="path4226-3"
+ cx="420.35715"
+ cy="539.86218"
+ r="6.0714288" />
+ </g>
+ <g
+ id="text4253"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4485"
+ style=""
+ d="m 780.57721,780.88922 q 0.25391,0.40039 0.49316,0.60059 0.23926,0.20019 0.55664,0.20019 l 0.0293,0 0,0.41992 -0.1416,0 q -0.46875,0 -0.77148,-0.0342 -0.29786,-0.0342 -0.50782,-0.13183 -0.20996,-0.0977 -0.36133,-0.27344 -0.14648,-0.17578 -0.31738,-0.45898 l -1.35254,-2.25098 -0.83008,0 0,2.06055 q 0,0.21972 0.0635,0.35644 0.0684,0.13184 0.18067,0.2002 0.1123,0.0684 0.25878,0.0928 0.15137,0.0195 0.31739,0.0195 l 0.13183,0 0,0.41992 -2.91015,0 0,-0.41992 0.12695,0 q 0.16602,0 0.3125,-0.0195 0.15137,-0.0244 0.26367,-0.0928 0.11231,-0.0684 0.17578,-0.2002 0.0684,-0.13672 0.0684,-0.35644 l 0,-4.95117 q 0,-0.21973 -0.0684,-0.35157 -0.0635,-0.13672 -0.17578,-0.20996 -0.1123,-0.0732 -0.26367,-0.0928 -0.14648,-0.0244 -0.3125,-0.0244 l -0.12695,0 0,-0.41992 2.69043,0 q 1.29882,0 1.93359,0.4834 0.63477,0.47852 0.63477,1.44531 0,0.40039 -0.13184,0.70313 -0.12695,0.29785 -0.33691,0.51758 -0.20997,0.21972 -0.47364,0.36621 -0.26367,0.14648 -0.52734,0.23437 l 1.37207,2.16797 z m -3.20313,-2.39746 0.70313,0 q 0.43945,0 0.73242,-0.0977 0.29297,-0.0976 0.46875,-0.29296 0.17578,-0.19532 0.24902,-0.48829 0.0781,-0.29296 0.0781,-0.68359 0,-0.40039 -0.083,-0.67871 -0.083,-0.2832 -0.26855,-0.45899 -0.18555,-0.18066 -0.4834,-0.25878 -0.29297,-0.083 -0.71777,-0.083 l -0.67872,0 0,3.04199 z" />
+ <path
+ id="path4487"
+ style=""
+ d="m 784.34674,777.18805 q -0.55664,0 -0.85937,0.4541 -0.29786,0.44922 -0.35157,1.31836 l 2.29981,0 q 0,-0.39551 -0.0586,-0.72266 -0.0586,-0.32714 -0.18554,-0.56152 -0.12696,-0.23437 -0.33692,-0.36133 -0.20507,-0.12695 -0.50781,-0.12695 z m 0.12207,5.01953 q -0.54199,0 -0.97656,-0.18066 -0.42969,-0.18555 -0.72754,-0.53711 -0.29785,-0.35157 -0.45898,-0.85938 -0.15625,-0.51269 -0.15625,-1.16211 0,-1.40136 0.57617,-2.10937 0.57617,-0.70801 1.64062,-0.70801 0.4834,0 0.86914,0.15137 0.38574,0.15136 0.6543,0.4541 0.26855,0.29785 0.41016,0.74707 0.14648,0.44433 0.14648,1.03516 l 0,0.45898 -3.33008,0 q 0.01,0.54687 0.10742,0.94238 0.10254,0.39063 0.28809,0.64453 0.19043,0.25391 0.46387,0.37598 0.27343,0.11719 0.62988,0.11719 0.25879,0 0.47852,-0.0586 0.2246,-0.0586 0.40527,-0.15625 0.18066,-0.0976 0.31738,-0.21972 0.1416,-0.12696 0.22949,-0.26367 0.0684,0.0293 0.12696,0.12207 0.0635,0.0928 0.0635,0.21972 0,0.15137 -0.10742,0.32715 -0.10742,0.1709 -0.32715,0.31738 -0.21972,0.14649 -0.55175,0.24414 -0.32715,0.0977 -0.77149,0.0977 z" />
+ <path
+ id="path4489"
+ style=""
+ d="m 789.04889,782.20758 q -0.37598,0 -0.68359,-0.0684 -0.30274,-0.0635 -0.51758,-0.19531 -0.21485,-0.13672 -0.33203,-0.33203 -0.11719,-0.2002 -0.11719,-0.46387 0,-0.2002 0.0635,-0.33203 0.0684,-0.13672 0.16113,-0.21484 0.0977,-0.0781 0.20508,-0.10743 0.1123,-0.0342 0.20019,-0.0342 0,0.26368 0.0537,0.49317 0.0537,0.22949 0.18067,0.40527 0.12695,0.1709 0.33203,0.27344 0.20996,0.0977 0.51269,0.0977 0.26856,0 0.47364,-0.0635 0.20507,-0.0684 0.34179,-0.18555 0.1416,-0.12207 0.21485,-0.28808 0.0732,-0.1709 0.0732,-0.3711 0,-0.18555 -0.0586,-0.31738 -0.0537,-0.13672 -0.19531,-0.25391 -0.13672,-0.11718 -0.37597,-0.23926 -0.23926,-0.12207 -0.60059,-0.27832 -0.38574,-0.17089 -0.67383,-0.32714 -0.2832,-0.16114 -0.46875,-0.34668 -0.18555,-0.18555 -0.27832,-0.41993 -0.0928,-0.23925 -0.0928,-0.5664 0,-0.3418 0.13183,-0.60547 0.13672,-0.26367 0.38575,-0.43945 0.24902,-0.18067 0.5957,-0.27344 0.34668,-0.0928 0.77148,-0.0928 0.35645,0 0.62989,0.0732 0.27343,0.0732 0.45898,0.20019 0.18555,0.12207 0.27832,0.29297 0.0928,0.16602 0.0928,0.35156 0,0.27344 -0.19043,0.43946 -0.18554,0.16113 -0.53222,0.16113 0,-0.50293 -0.20996,-0.78125 -0.20508,-0.27832 -0.64942,-0.27832 -0.2539,0 -0.43457,0.0586 -0.18066,0.0586 -0.29785,0.16602 -0.1123,0.10742 -0.16601,0.25391 -0.0537,0.14648 -0.0537,0.32226 0,0.19043 0.0684,0.33203 0.0684,0.13672 0.21485,0.25391 0.15137,0.11719 0.38574,0.22949 0.23926,0.10742 0.57129,0.24414 0.39551,0.16602 0.67871,0.32715 0.2832,0.16113 0.46387,0.35156 0.18554,0.19043 0.27343,0.42969 0.0879,0.23926 0.0879,0.55176 0,0.39062 -0.14161,0.68359 -0.1416,0.29297 -0.40039,0.49317 -0.25879,0.19531 -0.625,0.29296 -0.36132,0.0977 -0.80566,0.0977 z" />
+ <path
+ id="path4491"
+ style=""
+ d="m 794.21002,777.18805 q -0.55664,0 -0.85937,0.4541 -0.29785,0.44922 -0.35157,1.31836 l 2.29981,0 q 0,-0.39551 -0.0586,-0.72266 -0.0586,-0.32714 -0.18555,-0.56152 -0.12695,-0.23437 -0.33692,-0.36133 -0.20507,-0.12695 -0.50781,-0.12695 z m 0.12207,5.01953 q -0.54199,0 -0.97656,-0.18066 -0.42969,-0.18555 -0.72754,-0.53711 -0.29785,-0.35157 -0.45898,-0.85938 -0.15625,-0.51269 -0.15625,-1.16211 0,-1.40136 0.57617,-2.10937 0.57617,-0.70801 1.64062,-0.70801 0.4834,0 0.86914,0.15137 0.38575,0.15136 0.6543,0.4541 0.26856,0.29785 0.41016,0.74707 0.14648,0.44433 0.14648,1.03516 l 0,0.45898 -3.33008,0 q 0.01,0.54687 0.10743,0.94238 0.10253,0.39063 0.28808,0.64453 0.19043,0.25391 0.46387,0.37598 0.27344,0.11719 0.62988,0.11719 0.25879,0 0.47852,-0.0586 0.22461,-0.0586 0.40527,-0.15625 0.18066,-0.0976 0.31738,-0.21972 0.1416,-0.12696 0.2295,-0.26367 0.0684,0.0293 0.12695,0.12207 0.0635,0.0928 0.0635,0.21972 0,0.15137 -0.10742,0.32715 -0.10742,0.1709 -0.32715,0.31738 -0.21972,0.14649 -0.55175,0.24414 -0.32715,0.0977 -0.77149,0.0977 z" />
+ <path
+ id="path4493"
+ style=""
+ d="m 799.46393,781.68024 q 0.18066,0 0.33203,-0.0195 0.15137,-0.0195 0.30762,-0.0488 l 0,0.43945 q -0.0635,0.0293 -0.16602,0.0586 -0.10254,0.0293 -0.22461,0.0488 -0.11719,0.0244 -0.24902,0.0342 -0.13184,0.0146 -0.24903,0.0146 -0.38085,0 -0.65429,-0.083 -0.27344,-0.0781 -0.44922,-0.25879 -0.17578,-0.18066 -0.26367,-0.47851 -0.083,-0.29785 -0.083,-0.72754 l 0,-3.33984 -0.76172,0 0,-0.4004 q 0.18066,0 0.39551,-0.0732 0.21973,-0.0732 0.38574,-0.24414 0.1709,-0.18555 0.27344,-0.43945 0.10742,-0.25879 0.18555,-0.64453 l 0.45898,0 0,1.23047 1.30859,0 0,0.57129 -1.30859,0 0,3.36914 q 0,0.51269 0.20508,0.75195 0.20996,0.23926 0.55664,0.23926 z" />
+ </g>
+ <g
+ id="text4253-5"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4517"
+ style=""
+ d="m 765.80396,854.20184 0,-0.41992 0.12695,0 q 0.1709,0 0.31738,-0.0244 0.15137,-0.0244 0.26367,-0.0977 0.11231,-0.0781 0.17578,-0.21973 0.0635,-0.1416 0.0635,-0.37597 l 0,-4.90235 q 0,-0.21972 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.1123,-0.0732 -0.26367,-0.0928 -0.14649,-0.0244 -0.3125,-0.0244 l -0.12695,0 0,-0.41992 2.80761,0 q 0.62989,0 1.09375,0.14649 0.46387,0.1416 0.7666,0.41503 0.30274,0.26856 0.44922,0.6543 0.15137,0.38574 0.15137,0.87403 0,0.44433 -0.1416,0.85449 -0.13672,0.41015 -0.4541,0.72754 -0.31739,0.3125 -0.83008,0.50293 -0.5127,0.18554 -1.25488,0.18554 l -0.62989,0 0,1.68946 q 0,0.21972 0.0635,0.35644 0.0684,0.13184 0.18066,0.2002 0.11231,0.0684 0.25879,0.0928 0.15137,0.0195 0.31739,0.0195 l 0.33203,0 0,0.41992 -3.11035,0 z m 1.958,-3.25195 0.53223,0 q 0.4541,0 0.77637,-0.0928 0.32226,-0.0977 0.52734,-0.30762 0.20508,-0.21484 0.29785,-0.54688 0.0977,-0.33691 0.0977,-0.81054 0,-0.41992 -0.083,-0.72754 -0.083,-0.3125 -0.26855,-0.51758 -0.18555,-0.20508 -0.4834,-0.30273 -0.29297,-0.10254 -0.71778,-0.10254 l -0.67871,0 0,3.4082 z" />
+ <path
+ id="path4519"
+ style=""
+ d="m 774.67603,854.20184 -2.88575,0 0,-0.41992 0.0293,0 q 0.1709,0 0.31738,-0.0244 0.15137,-0.0244 0.25879,-0.0977 0.11231,-0.0781 0.17578,-0.21973 0.0684,-0.1416 0.0684,-0.37597 l 0,-3.12012 q 0,-0.21973 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.1123,-0.0732 -0.26367,-0.0977 -0.14648,-0.0244 -0.3125,-0.0244 l -0.0293,0 0,-0.41992 1.53809,0 0.19043,0.99121 0.0488,0 q 0.0977,-0.22461 0.20019,-0.41993 0.10254,-0.20019 0.24903,-0.34668 0.15136,-0.15136 0.37109,-0.23437 0.21973,-0.0879 0.55176,-0.0879 0.54687,0 0.81054,0.19043 0.26856,0.19043 0.26856,0.53711 0,0.15625 -0.0537,0.28808 -0.0488,0.13184 -0.16113,0.2295 -0.11231,0.0928 -0.28809,0.14648 -0.17578,0.0488 -0.42969,0.0488 0,-0.41504 -0.11719,-0.5957 -0.11718,-0.18555 -0.41015,-0.18555 -0.18555,0 -0.33203,0.10742 -0.14649,0.10254 -0.25879,0.27832 -0.10742,0.1709 -0.18555,0.39551 -0.0732,0.22461 -0.12207,0.46387 -0.0439,0.23437 -0.0635,0.46875 -0.0195,0.23437 -0.0195,0.4248 l 0,1.57227 q 0,0.21972 0.0635,0.35644 0.0684,0.13184 0.18066,0.2002 0.11231,0.0684 0.25879,0.0928 0.15137,0.0195 0.31739,0.0195 l 0.27832,0 0,0.41992 z" />
+ <path
+ id="path4521"
+ style=""
+ d="m 781.38501,851.51141 q 0,1.41114 -0.60059,2.09961 -0.5957,0.68848 -1.74804,0.68848 -0.542,0 -0.97168,-0.1709 -0.42969,-0.1709 -0.73242,-0.51758 -0.29786,-0.34668 -0.45899,-0.86914 -0.15625,-0.52734 -0.15625,-1.23047 0,-1.40136 0.59082,-2.08496 0.5957,-0.68359 1.75781,-0.68359 0.542,0 0.97168,0.1709 0.42969,0.16601 0.72754,0.51269 0.30274,0.3418 0.45899,0.86426 0.16113,0.51758 0.16113,1.2207 z m -3.70117,0 q 0,0.55664 0.0732,0.98145 0.0732,0.4248 0.23438,0.71289 0.16601,0.2832 0.4248,0.42969 0.26367,0.14648 0.63965,0.14648 0.37597,0 0.63476,-0.14648 0.25879,-0.14649 0.41993,-0.42969 0.16113,-0.28809 0.22949,-0.71289 0.0732,-0.42481 0.0732,-0.98145 0,-0.55664 -0.0732,-0.97656 -0.0732,-0.41992 -0.23438,-0.69824 -0.16113,-0.2832 -0.4248,-0.42481 -0.25879,-0.1416 -0.63477,-0.1416 -0.37597,0 -0.63476,0.1416 -0.25879,0.14161 -0.41992,0.42481 -0.16114,0.27832 -0.23438,0.69824 -0.0732,0.41992 -0.0732,0.97656 z" />
+ <path
+ id="path4523"
+ style=""
+ d="m 787.20532,849.05048 q 0,0.10742 -0.0342,0.20507 -0.0293,0.0928 -0.0928,0.16602 -0.0635,0.0684 -0.16602,0.1123 -0.0976,0.0391 -0.23437,0.0391 0,-0.0586 -0.0147,-0.11719 -0.0146,-0.0586 -0.0537,-0.10742 -0.0342,-0.0537 -0.0977,-0.083 -0.0635,-0.0342 -0.16601,-0.0342 -0.12696,0 -0.22949,0.0293 -0.10254,0.0293 -0.2002,0.0928 0.1709,0.20996 0.27832,0.49805 0.1123,0.2832 0.1123,0.71289 0,0.37109 -0.1123,0.68847 -0.1123,0.3125 -0.33691,0.542 -0.21973,0.22949 -0.56153,0.36132 -0.33691,0.12696 -0.79101,0.12696 -0.0586,0 -0.13184,0 -0.0732,-0.005 -0.14648,-0.005 -0.0733,-0.005 -0.13672,-0.01 -0.0635,-0.01 -0.10254,-0.0146 -0.0977,0.0488 -0.18555,0.10742 -0.0879,0.0586 -0.15625,0.13184 -0.0635,0.0732 -0.10254,0.16601 -0.0391,0.0928 -0.0391,0.20508 0,0.12207 0.0439,0.19532 0.0488,0.0732 0.13183,0.11718 0.083,0.0391 0.19531,0.0537 0.11719,0.01 0.24903,0.01 l 1.13281,0 q 0.44922,0 0.76172,0.1123 0.3125,0.11231 0.50781,0.3125 0.2002,0.19532 0.28809,0.47364 0.0928,0.27343 0.0928,0.5957 0,0.42969 -0.16113,0.77637 -0.15625,0.34668 -0.4834,0.58593 -0.32715,0.24415 -0.83008,0.37598 -0.49805,0.13184 -1.17676,0.13184 -1.04492,0 -1.5625,-0.38575 -0.51757,-0.38574 -0.51757,-1.07421 0,-0.29297 0.10253,-0.5127 0.10254,-0.21973 0.27344,-0.37598 0.17578,-0.15625 0.40039,-0.2539 0.22461,-0.0977 0.47364,-0.1416 -0.10254,-0.0439 -0.2002,-0.11719 -0.0977,-0.0732 -0.17578,-0.17578 -0.0781,-0.10254 -0.12695,-0.23438 -0.0488,-0.13183 -0.0488,-0.29297 0,-0.29785 0.15625,-0.51269 0.15625,-0.21973 0.49804,-0.42481 -0.21484,-0.0879 -0.38574,-0.23925 -0.16601,-0.15625 -0.2832,-0.35157 -0.11231,-0.20019 -0.17578,-0.43457 -0.0586,-0.23437 -0.0586,-0.4834 0,-0.43457 0.11719,-0.77636 0.11719,-0.3418 0.35156,-0.58106 0.23438,-0.23925 0.58594,-0.36621 0.35156,-0.12695 0.8252,-0.12695 0.18066,0 0.35644,0.0293 0.17578,0.0244 0.32227,0.0732 0.15137,0.0439 0.26855,0.10254 0.12207,0.0586 0.19532,0.12207 0.0732,-0.0781 0.17089,-0.1709 0.0977,-0.0977 0.21973,-0.17578 0.12207,-0.083 0.26367,-0.13672 0.14649,-0.0537 0.3125,-0.0537 0.15137,0 0.25879,0.0439 0.11231,0.0391 0.18555,0.11231 0.0732,0.0684 0.10742,0.16601 0.0391,0.0928 0.0391,0.19532 z m -4.21875,6.03027 q 0,0.21973 0.0586,0.41016 0.0586,0.19043 0.20507,0.32714 0.14649,0.13672 0.39551,0.21485 0.24903,0.0781 0.62988,0.0781 0.53711,0 0.88379,-0.0928 0.35157,-0.0879 0.55664,-0.24902 0.20508,-0.16114 0.28809,-0.38575 0.083,-0.21972 0.083,-0.48339 0,-0.2295 -0.0684,-0.38086 -0.0635,-0.14649 -0.19531,-0.23438 -0.12696,-0.083 -0.31739,-0.11719 -0.19043,-0.0342 -0.43945,-0.0342 l -0.98144,0 q -0.20997,0 -0.41016,0.0391 -0.19531,0.0342 -0.35156,0.13672 -0.15137,0.10253 -0.24414,0.28808 -0.0928,0.18555 -0.0928,0.4834 z m 0.58106,-4.5166 q 0,0.63965 0.20996,0.9375 0.21484,0.29785 0.69824,0.29785 0.24414,0 0.41016,-0.0732 0.17089,-0.0732 0.27832,-0.22461 0.10742,-0.15137 0.15136,-0.38574 0.0488,-0.23926 0.0488,-0.56641 0,-0.67383 -0.20508,-0.99609 -0.20507,-0.32227 -0.69336,-0.32227 -0.48339,0 -0.69335,0.33203 -0.20508,0.32715 -0.20508,1.00098 z" />
+ <path
+ id="path4525"
+ style=""
+ d="m 790.55493,854.20184 -2.88574,0 0,-0.41992 0.0293,0 q 0.17089,0 0.31738,-0.0244 0.15137,-0.0244 0.25879,-0.0977 0.1123,-0.0781 0.17578,-0.21973 0.0684,-0.1416 0.0684,-0.37597 l 0,-3.12012 q 0,-0.21973 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.11231,-0.0732 -0.26367,-0.0977 -0.14649,-0.0244 -0.3125,-0.0244 l -0.0293,0 0,-0.41992 1.53809,0 0.19043,0.99121 0.0488,0 q 0.0977,-0.22461 0.2002,-0.41993 0.10254,-0.20019 0.24902,-0.34668 0.15137,-0.15136 0.3711,-0.23437 0.21972,-0.0879 0.55175,-0.0879 0.54688,0 0.81055,0.19043 0.26856,0.19043 0.26856,0.53711 0,0.15625 -0.0537,0.28808 -0.0488,0.13184 -0.16113,0.2295 -0.1123,0.0928 -0.28808,0.14648 -0.17579,0.0488 -0.42969,0.0488 0,-0.41504 -0.11719,-0.5957 -0.11719,-0.18555 -0.41016,-0.18555 -0.18554,0 -0.33203,0.10742 -0.14648,0.10254 -0.25879,0.27832 -0.10742,0.1709 -0.18554,0.39551 -0.0733,0.22461 -0.12207,0.46387 -0.0439,0.23437 -0.0635,0.46875 -0.0195,0.23437 -0.0195,0.4248 l 0,1.57227 q 0,0.21972 0.0635,0.35644 0.0684,0.13184 0.18066,0.2002 0.1123,0.0684 0.25879,0.0928 0.15137,0.0195 0.31738,0.0195 l 0.27832,0 0,0.41992 z" />
+ <path
+ id="path4527"
+ style=""
+ d="m 793.3186,852.75165 q 0,0.46875 0.19532,0.70312 0.20019,0.2295 0.61523,0.2295 0.30273,0 0.54688,-0.0977 0.24902,-0.0977 0.41992,-0.27832 0.17578,-0.18067 0.26855,-0.43945 0.0928,-0.25879 0.0928,-0.57618 l 0,-0.81054 -0.63965,0.0293 q -0.42481,0.0195 -0.71289,0.10743 -0.28321,0.083 -0.45899,0.23925 -0.17578,0.15137 -0.2539,0.37598 -0.0733,0.22461 -0.0733,0.51758 z m 1.21094,-3.51074 q -0.28808,0 -0.46875,0.083 -0.17578,0.0781 -0.27832,0.22461 -0.0977,0.14649 -0.13184,0.34668 -0.0342,0.2002 -0.0342,0.43457 -0.41504,0 -0.63477,-0.1416 -0.21484,-0.1416 -0.21484,-0.48828 0,-0.25879 0.1416,-0.43945 0.1416,-0.18067 0.38574,-0.29297 0.24902,-0.11719 0.57617,-0.1709 0.32715,-0.0537 0.69824,-0.0537 0.45899,0 0.80078,0.0928 0.3418,0.0879 0.57129,0.29297 0.2295,0.20508 0.3418,0.53711 0.11719,0.32715 0.11719,0.80566 l 0,2.59278 q 0,0.20996 0.0342,0.34668 0.0342,0.13672 0.10742,0.21972 0.0732,0.083 0.19043,0.11719 0.12207,0.0342 0.28809,0.0342 l 0.0293,0 0,0.41992 -1.35254,0 -0.15625,-0.85937 -0.083,0 q -0.15625,0.20996 -0.30274,0.38574 -0.14648,0.17578 -0.32226,0.30273 -0.17579,0.12696 -0.4004,0.19532 -0.21972,0.0732 -0.53222,0.0732 -0.33203,0 -0.62012,-0.0977 -0.2832,-0.0928 -0.49316,-0.28808 -0.20508,-0.2002 -0.32227,-0.49805 -0.11719,-0.30273 -0.11719,-0.71289 0,-0.7959 0.56641,-1.18164 0.56641,-0.38574 1.71387,-0.41992 l 0.83008,-0.0293 0,-0.60059 q 0,-0.26855 -0.0293,-0.49316 -0.0293,-0.22949 -0.12695,-0.39062 -0.0977,-0.16602 -0.28321,-0.25391 -0.18066,-0.0928 -0.48828,-0.0928 z" />
+ <path
+ id="path4529"
+ style=""
+ d="m 800.44263,853.78192 0,0.41992 -2.69043,0 0,-0.41992 0.13183,0 q 0.1709,0 0.3125,-0.0244 0.1416,-0.0244 0.24414,-0.0977 0.10254,-0.0781 0.15625,-0.21973 0.0586,-0.1416 0.0586,-0.37597 l 0,-3.12012 q 0,-0.21973 -0.0586,-0.35156 -0.0586,-0.13672 -0.16113,-0.20996 -0.10254,-0.0732 -0.24414,-0.0977 -0.1416,-0.0244 -0.30762,-0.0244 l -0.0293,0 0,-0.41992 1.56738,0 0.13184,0.81054 0.0488,0 q 0.15137,-0.27832 0.31739,-0.4541 0.16601,-0.18066 0.35156,-0.27832 0.19043,-0.10254 0.39551,-0.13672 0.20996,-0.0391 0.44433,-0.0391 0.24414,0 0.46387,0.0488 0.21973,0.0488 0.40527,0.15625 0.19043,0.10742 0.33692,0.2832 0.15136,0.1709 0.24414,0.41992 l 0.083,0 q 0.15136,-0.27832 0.32714,-0.4541 0.17579,-0.18066 0.3711,-0.27832 0.20019,-0.10254 0.41504,-0.13672 0.21972,-0.0391 0.4541,-0.0391 0.38086,0 0.68359,0.11719 0.30274,0.1123 0.5127,0.35156 0.20996,0.23437 0.32226,0.60547 0.11231,0.37109 0.11231,0.88379 l 0,2.36328 q 0,0.23437 0.0586,0.37597 0.0586,0.14161 0.16113,0.21973 0.10254,0.0732 0.24414,0.0977 0.14161,0.0244 0.30762,0.0244 l 0.0293,0 0,0.41992 -1.73828,0 0,-3.45215 q 0,-0.32714 -0.0586,-0.58105 -0.0537,-0.25391 -0.18066,-0.42969 -0.12207,-0.17578 -0.32227,-0.26367 -0.20019,-0.0928 -0.48828,-0.0928 -0.3125,0 -0.52734,0.12207 -0.20996,0.11719 -0.3418,0.32226 -0.13183,0.20508 -0.19043,0.47364 -0.0537,0.26855 -0.0537,0.57129 l 0,2.19238 q 0,0.23437 0.0586,0.37597 0.0586,0.14161 0.16113,0.21973 0.10254,0.0732 0.24414,0.0977 0.1416,0.0244 0.30762,0.0244 l 0.0293,0 0,0.41992 -1.73828,0 0,-3.45215 q 0,-0.32714 -0.0586,-0.58105 -0.0537,-0.25391 -0.18067,-0.42969 -0.12207,-0.17578 -0.32226,-0.26367 -0.2002,-0.0928 -0.48828,-0.0928 -0.32715,0 -0.55176,0.13183 -0.21973,0.13184 -0.35645,0.35645 -0.13671,0.22461 -0.19531,0.51758 -0.0586,0.29297 -0.0586,0.61523 l 0,2.10938 q 0,0.21972 0.0635,0.35644 0.0684,0.13184 0.18067,0.2002 0.1123,0.0684 0.25879,0.0928 0.15136,0.0195 0.31738,0.0195 l 0.0293,0 z" />
+ </g>
+ <g
+ id="text4275"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4496"
+ style=""
+ d="m 836.11292,773.1004 q -0.86915,0 -1.51856,-0.26367 -0.64453,-0.26367 -1.07422,-0.74707 -0.4248,-0.4834 -0.63476,-1.16211 -0.20996,-0.67871 -0.20996,-1.5039 0,-0.81055 0.21972,-1.48438 0.22461,-0.67383 0.66406,-1.15723 0.44434,-0.48339 1.09864,-0.75195 0.65429,-0.26855 1.51855,-0.26855 0.55664,0 0.9668,0.0879 0.41504,0.083 0.68848,0.23437 0.27832,0.15137 0.41503,0.35645 0.13672,0.20507 0.13672,0.44433 0,0.16114 -0.0732,0.29297 -0.0732,0.12695 -0.20019,0.21973 -0.12207,0.0879 -0.29297,0.13672 -0.16602,0.0488 -0.36133,0.0488 0,-0.23437 -0.0684,-0.46386 -0.0684,-0.22949 -0.22461,-0.41016 -0.15625,-0.18555 -0.41016,-0.29785 -0.2539,-0.11719 -0.62011,-0.11719 -0.63477,0 -1.08399,0.20996 -0.44433,0.20508 -0.72754,0.60547 -0.2832,0.39551 -0.41015,0.98145 -0.12696,0.58105 -0.12696,1.33301 0,0.74707 0.13184,1.32812 0.13184,0.58105 0.42969,0.97656 0.29785,0.39551 0.77148,0.60059 0.47363,0.20508 1.15723,0.20508 0.28808,0 0.55664,-0.0293 0.27344,-0.0293 0.4834,-0.0928 l 0,-1.61133 q 0,-0.21973 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20508 -0.11231,-0.0732 -0.26368,-0.0977 -0.14648,-0.0244 -0.3125,-0.0244 l -0.0391,0 0,-0.41992 2.59766,0 0,0.41992 -0.0391,0 q -0.14161,0 -0.26856,0.0244 -0.12695,0.0244 -0.21973,0.10254 -0.0928,0.0732 -0.14648,0.21973 -0.0537,0.1416 -0.0537,0.37597 l 0,1.79688 q -0.50293,0.23437 -1.03516,0.34668 -0.53222,0.1123 -1.17675,0.1123 z" />
+ <path
+ id="path4498"
+ style=""
+ d="m 842.22131,772.58282 0,0.41993 -2.69043,0 0,-0.41993 0.083,0 q 0.1709,0 0.31738,-0.0244 0.15137,-0.0244 0.25879,-0.0977 0.11231,-0.0781 0.17578,-0.21972 0.0684,-0.1416 0.0684,-0.37598 l 0,-3.12012 q 0,-0.21972 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.1123,-0.0732 -0.26367,-0.0977 -0.14648,-0.0244 -0.3125,-0.0244 l -0.0293,0 0,-0.41992 1.61622,0 0.13183,0.81055 0.0488,0 q 0.15625,-0.27832 0.32715,-0.45411 0.17578,-0.18066 0.36621,-0.27832 0.19531,-0.10254 0.41016,-0.13672 0.21972,-0.0391 0.45898,-0.0391 0.39551,0 0.70312,0.11719 0.3125,0.1123 0.52735,0.35156 0.21973,0.23438 0.33203,0.60547 0.11719,0.37109 0.11719,0.88379 l 0,2.36328 q 0,0.23438 0.0537,0.37598 0.0586,0.1416 0.16113,0.21972 0.10254,0.0733 0.24414,0.0977 0.1416,0.0244 0.30762,0.0244 l 0.0342,0 0,0.41993 -1.74317,0 0,-3.45215 q 0,-0.32715 -0.0586,-0.58106 -0.0586,-0.2539 -0.19043,-0.42968 -0.12695,-0.17579 -0.33691,-0.26368 -0.20996,-0.0928 -0.5127,-0.0928 -0.3418,0 -0.57617,0.13184 -0.22949,0.13183 -0.37109,0.35644 -0.14161,0.22461 -0.20508,0.51758 -0.0586,0.29297 -0.0586,0.61523 l 0,2.10938 q 0,0.21973 0.0635,0.35644 0.0684,0.13184 0.18066,0.2002 0.11231,0.0684 0.25879,0.0928 0.15137,0.0195 0.31739,0.0195 l 0.0293,0 z" />
+ <path
+ id="path4500"
+ style=""
+ d="m 850.75647,771.90411 q 0,0.21973 0.0635,0.35645 0.0684,0.13184 0.18066,0.20508 0.11231,0.0732 0.25879,0.0977 0.15137,0.0195 0.31738,0.0195 l 0.083,0 0,0.41993 -1.69434,0 -0.10742,-0.89844 -0.0391,0 q -0.1123,0.22949 -0.25879,0.41504 -0.1416,0.18066 -0.32715,0.3125 -0.18554,0.12695 -0.41992,0.19531 -0.23437,0.0732 -0.52734,0.0732 -0.49317,0 -0.87403,-0.16113 -0.38086,-0.16602 -0.63965,-0.50293 -0.25878,-0.3418 -0.39062,-0.86426 -0.13184,-0.52246 -0.13184,-1.24023 0,-0.72266 0.13184,-1.25 0.13184,-0.52735 0.39062,-0.86914 0.25879,-0.3418 0.63965,-0.50293 0.38086,-0.16602 0.87403,-0.16602 0.28808,0 0.52246,0.0635 0.23437,0.0635 0.41992,0.18066 0.19043,0.11719 0.33691,0.27832 0.14649,0.16114 0.25391,0.35645 l 0.0586,0 q -0.0146,-0.24414 -0.0293,-0.45899 -0.01,-0.18554 -0.0195,-0.36621 -0.01,-0.18554 -0.01,-0.27343 l 0,-0.82032 q 0,-0.21972 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.11231,-0.0732 -0.26367,-0.0928 -0.14649,-0.0244 -0.3125,-0.0244 l -0.083,0 0,-0.41992 1.84082,0 0,6.49902 z m -2.2998,0.55664 q 0.39062,0 0.64941,-0.12695 0.26367,-0.13183 0.41992,-0.39551 0.16113,-0.26367 0.22461,-0.66406 0.0684,-0.40039 0.0684,-0.94238 0,-0.52246 -0.0684,-0.92285 -0.0635,-0.40039 -0.22461,-0.66895 -0.15625,-0.27344 -0.41992,-0.41504 -0.26367,-0.1416 -0.65918,-0.1416 -0.32715,0 -0.56152,0.1416 -0.23438,0.1416 -0.38575,0.41504 -0.14648,0.27344 -0.21484,0.67871 -0.0684,0.40039 -0.0684,0.92285 0,1.06446 0.28809,1.5918 0.28808,0.52734 0.95215,0.52734 z" />
+ </g>
+ <g
+ id="text4275-2"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4503"
+ style=""
+ d="m 861.47571,772.56329 q 0.29785,0 0.5664,-0.083 0.26856,-0.083 0.47364,-0.27344 0.20508,-0.19043 0.32715,-0.49805 0.12207,-0.30762 0.12207,-0.75683 0,-0.31739 -0.12696,-0.57129 -0.12207,-0.25879 -0.35644,-0.43946 -0.23438,-0.18066 -0.57129,-0.27832 -0.33692,-0.10254 -0.75684,-0.10254 l -0.31738,0 0,-0.50781 0.31738,0 q 0.33203,0 0.61524,-0.10742 0.28808,-0.11231 0.49804,-0.3125 0.21485,-0.2002 0.33692,-0.4834 0.12207,-0.28808 0.12207,-0.64453 0,-0.29297 -0.0586,-0.52246 -0.0586,-0.22949 -0.19043,-0.39063 -0.12695,-0.16113 -0.33203,-0.24414 -0.20019,-0.083 -0.48828,-0.083 -0.34179,0 -0.55664,0.12207 -0.21484,0.12207 -0.33691,0.32714 -0.12207,0.20508 -0.16602,0.47364 -0.0439,0.26855 -0.0439,0.5664 -0.18067,0 -0.33692,-0.0293 -0.15625,-0.0293 -0.27344,-0.10254 -0.11718,-0.0781 -0.18554,-0.2002 -0.0635,-0.12695 -0.0635,-0.31738 0,-0.28809 0.12207,-0.53223 0.12695,-0.24902 0.37598,-0.42968 0.24902,-0.18067 0.61523,-0.27833 0.36621,-0.10253 0.84961,-0.10253 0.47363,0 0.85938,0.10742 0.38574,0.10742 0.65918,0.3125 0.27832,0.20019 0.42968,0.49804 0.15137,0.29297 0.15137,0.67383 0,0.33692 -0.12207,0.63477 -0.11719,0.29785 -0.33203,0.54199 -0.21484,0.23926 -0.50781,0.41016 -0.29297,0.1709 -0.63965,0.2539 0.18555,0.0195 0.39551,0.0684 0.20996,0.0439 0.41504,0.13184 0.20507,0.0879 0.39062,0.21972 0.19043,0.13184 0.33203,0.32227 0.14649,0.19043 0.22949,0.44434 0.0879,0.24902 0.0879,0.58105 0,0.40039 -0.10742,0.71777 -0.10742,0.31739 -0.29785,0.55665 -0.18555,0.23437 -0.43457,0.40039 -0.24902,0.16601 -0.53223,0.26855 -0.2832,0.10254 -0.58105,0.14648 -0.29785,0.0488 -0.58594,0.0488 -0.49316,0 -0.84961,-0.0928 -0.35644,-0.0879 -0.59082,-0.23926 -0.22949,-0.15137 -0.34179,-0.35156 -0.10743,-0.20508 -0.10743,-0.42481 0,-0.30273 0.1709,-0.46875 0.1709,-0.17089 0.45899,-0.17089 0,0.26367 0.083,0.48828 0.0879,0.21972 0.24903,0.38086 0.16113,0.16113 0.39551,0.2539 0.23925,0.0879 0.54199,0.0879 z" />
+ <path
+ id="path4505"
+ style=""
+ d="m 864.62024,768.06134 0,-0.41992 2.5,0 0,0.41992 -0.12695,0 q -0.30274,0 -0.45411,0.11719 -0.14648,0.11719 -0.14648,0.36621 0,0.083 0.0195,0.1709 0.0195,0.083 0.0586,0.19531 l 0.67871,1.88965 q 0.0635,0.17578 0.13183,0.39062 0.0684,0.20996 0.12696,0.41504 0.0635,0.20508 0.1123,0.39063 0.0488,0.18066 0.0684,0.30761 l 0.0342,0 q 0.0244,-0.10742 0.0781,-0.26367 0.0586,-0.16113 0.12696,-0.34668 0.0732,-0.19043 0.14648,-0.38574 0.0781,-0.19531 0.14649,-0.37598 l 0.71777,-1.94824 q 0.0488,-0.12207 0.0684,-0.23437 0.0244,-0.11231 0.0244,-0.19532 0,-0.25878 -0.16601,-0.37597 -0.16114,-0.11719 -0.49317,-0.11719 l -0.0732,0 0,-0.41992 2.14356,0 0,0.41992 -0.12207,0 q -0.14649,0 -0.24903,0.0342 -0.10254,0.0293 -0.18555,0.11719 -0.083,0.0879 -0.16113,0.23926 -0.0732,0.15136 -0.16601,0.39062 l -1.57715,4.16016 -0.91309,0 -1.60644,-4.40918 q -0.0586,-0.15625 -0.12207,-0.25879 -0.0635,-0.10254 -0.14649,-0.16113 -0.083,-0.0635 -0.19043,-0.0879 -0.10742,-0.0244 -0.2539,-0.0244 l -0.0293,0 z" />
+ <path
+ id="path4507"
+ style=""
+ d="m 872.86243,772.56329 q 0.29785,0 0.5664,-0.083 0.26856,-0.083 0.47364,-0.27344 0.20507,-0.19043 0.32714,-0.49805 0.12207,-0.30762 0.12207,-0.75683 0,-0.31739 -0.12695,-0.57129 -0.12207,-0.25879 -0.35644,-0.43946 -0.23438,-0.18066 -0.57129,-0.27832 -0.33692,-0.10254 -0.75684,-0.10254 l -0.31738,0 0,-0.50781 0.31738,0 q 0.33203,0 0.61524,-0.10742 0.28808,-0.11231 0.49804,-0.3125 0.21485,-0.2002 0.33692,-0.4834 0.12207,-0.28808 0.12207,-0.64453 0,-0.29297 -0.0586,-0.52246 -0.0586,-0.22949 -0.19043,-0.39063 -0.12695,-0.16113 -0.33203,-0.24414 -0.20019,-0.083 -0.48828,-0.083 -0.3418,0 -0.55664,0.12207 -0.21484,0.12207 -0.33691,0.32714 -0.12207,0.20508 -0.16602,0.47364 -0.0439,0.26855 -0.0439,0.5664 -0.18067,0 -0.33692,-0.0293 -0.15625,-0.0293 -0.27344,-0.10254 -0.11718,-0.0781 -0.18554,-0.2002 -0.0635,-0.12695 -0.0635,-0.31738 0,-0.28809 0.12207,-0.53223 0.12695,-0.24902 0.37598,-0.42968 0.24902,-0.18067 0.61523,-0.27833 0.36621,-0.10253 0.84961,-0.10253 0.47363,0 0.85938,0.10742 0.38574,0.10742 0.65918,0.3125 0.27832,0.20019 0.42968,0.49804 0.15137,0.29297 0.15137,0.67383 0,0.33692 -0.12207,0.63477 -0.11719,0.29785 -0.33203,0.54199 -0.21485,0.23926 -0.50781,0.41016 -0.29297,0.1709 -0.63965,0.2539 0.18554,0.0195 0.39551,0.0684 0.20996,0.0439 0.41503,0.13184 0.20508,0.0879 0.39063,0.21972 0.19043,0.13184 0.33203,0.32227 0.14649,0.19043 0.22949,0.44434 0.0879,0.24902 0.0879,0.58105 0,0.40039 -0.10742,0.71777 -0.10742,0.31739 -0.29785,0.55665 -0.18555,0.23437 -0.43457,0.40039 -0.24902,0.16601 -0.53223,0.26855 -0.2832,0.10254 -0.58105,0.14648 -0.29785,0.0488 -0.58594,0.0488 -0.49316,0 -0.84961,-0.0928 -0.35644,-0.0879 -0.59082,-0.23926 -0.22949,-0.15137 -0.3418,-0.35156 -0.10742,-0.20508 -0.10742,-0.42481 0,-0.30273 0.1709,-0.46875 0.1709,-0.17089 0.45899,-0.17089 0,0.26367 0.083,0.48828 0.0879,0.21972 0.24903,0.38086 0.16113,0.16113 0.3955,0.2539 0.23926,0.0879 0.542,0.0879 z" />
+ </g>
+ <g
+ id="text4275-7"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4510"
+ style=""
+ d="m 889.26099,769.42365 q 0,0.82519 -0.20508,1.5039 -0.20508,0.67871 -0.60547,1.16211 -0.40039,0.4834 -0.98633,0.74707 -0.58594,0.26367 -1.34277,0.26367 -0.7959,0 -1.38672,-0.26367 -0.59082,-0.26367 -0.98145,-0.74707 -0.39062,-0.4834 -0.58593,-1.16211 -0.19532,-0.68359 -0.19532,-1.51367 0,-0.83008 0.19532,-1.50391 0.19531,-0.67871 0.58593,-1.15722 0.39063,-0.47852 0.98633,-0.73731 0.59571,-0.26367 1.3916,-0.26367 0.75684,0 1.33789,0.26367 0.58106,0.25879 0.98145,0.74219 0.40039,0.47852 0.60547,1.15723 0.20508,0.67382 0.20508,1.50879 z m -5.18067,0 q 0,0.74218 0.10742,1.32812 0.11231,0.58105 0.35645,0.98633 0.24414,0.40039 0.62988,0.61523 0.39063,0.20996 0.94727,0.20996 0.55664,0 0.94238,-0.20996 0.39063,-0.21484 0.62988,-0.61523 0.24414,-0.40528 0.35157,-0.98633 0.10742,-0.58594 0.10742,-1.32812 0,-0.74219 -0.10742,-1.32325 -0.10743,-0.58593 -0.35157,-0.98633 -0.23925,-0.40039 -0.625,-0.61035 -0.38086,-0.20996 -0.9375,-0.20996 -0.55664,0 -0.94726,0.20996 -0.39063,0.20996 -0.63965,0.61035 -0.24414,0.4004 -0.35645,0.98633 -0.10742,0.58106 -0.10742,1.32325 z" />
+ <path
+ id="path4512"
+ style=""
+ d="m 895.10083,771.91388 q 0,0.21973 0.0635,0.35644 0.0684,0.13184 0.18066,0.2002 0.11231,0.0684 0.25879,0.0928 0.15137,0.0195 0.31738,0.0195 l 0.0293,0 0,0.41993 -1.58691,0 -0.13184,-0.81055 -0.0488,0 q -0.15137,0.2832 -0.33691,0.45898 -0.18067,0.17579 -0.38574,0.27832 -0.20508,0.0977 -0.42969,0.13184 -0.22461,0.0391 -0.46875,0.0391 -0.39551,0 -0.70313,-0.1123 -0.30761,-0.11231 -0.51758,-0.35156 -0.20996,-0.23926 -0.32226,-0.61036 -0.10742,-0.37109 -0.10742,-0.88378 l 0,-2.39747 q 0,-0.21972 -0.0684,-0.35156 -0.0635,-0.13672 -0.17578,-0.20996 -0.11231,-0.0732 -0.26368,-0.0977 -0.14648,-0.0244 -0.3125,-0.0244 l -0.0293,0 0,-0.41992 1.79199,0 0,3.45215 q 0,0.32715 0.0488,0.58105 0.0537,0.25391 0.1709,0.42969 0.12207,0.17578 0.32226,0.26855 0.20508,0.0879 0.50781,0.0879 0.33204,0 0.56641,-0.11718 0.23926,-0.11719 0.39063,-0.32715 0.15625,-0.21485 0.22949,-0.5127 0.0732,-0.29785 0.0732,-0.65918 l 0,-2.06054 q 0,-0.23438 -0.0684,-0.37598 -0.0635,-0.14648 -0.17578,-0.21973 -0.10742,-0.0781 -0.25879,-0.10254 -0.14648,-0.0244 -0.31738,-0.0244 l -0.0293,0 0,-0.41992 1.78711,0 0,4.27246 z" />
+ <path
+ id="path4514"
+ style=""
+ d="m 898.8313,772.57306 q 0.18066,0 0.33203,-0.0195 0.15137,-0.0195 0.30762,-0.0488 l 0,0.43945 q -0.0635,0.0293 -0.16602,0.0586 -0.10254,0.0293 -0.22461,0.0488 -0.11719,0.0244 -0.24902,0.0342 -0.13184,0.0147 -0.24902,0.0147 -0.38086,0 -0.6543,-0.083 -0.27344,-0.0781 -0.44922,-0.25879 -0.17578,-0.18067 -0.26367,-0.47852 -0.083,-0.29785 -0.083,-0.72754 l 0,-3.33984 -0.76172,0 0,-0.40039 q 0.18067,0 0.39551,-0.0733 0.21973,-0.0732 0.38574,-0.24414 0.1709,-0.18554 0.27344,-0.43945 0.10742,-0.25879 0.18555,-0.64453 l 0.45898,0 0,1.23047 1.30859,0 0,0.57129 -1.30859,0 0,3.36914 q 0,0.51269 0.20508,0.75195 0.20996,0.23926 0.55664,0.23926 z" />
+ </g>
+ </g>
+ <g
+ id="g4382"
+ transform="translate(223.34472,-171.42289)">
+ <rect
+ y="502.98877"
+ x="162.61934"
+ height="107.49637"
+ width="107.49639"
+ id="rect4366"
+ style="opacity:1;fill:#cccccc;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <rect
+ y="535.93365"
+ x="203.51039"
+ height="41.606586"
+ width="25.714285"
+ id="rect4368"
+ style="opacity:1;fill:#666666;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="0%"
+ id="text4370"
+ y="518.07654"
+ x="216.44383"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="518.07654"
+ x="216.44383"
+ id="tspan4372"
+ sodipodi:role="line">Door Release</tspan></text>
+ </g>
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4374"
+ style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Noto Serif;font-style:normal;font-weight:normal;font-size:25px;line-height:0%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Noto Serif;font-stretch:normal;font-variant:normal;text-anchor:middle;text-align:center"><flowRegion
+ id="flowRegion4376"><rect
+ id="rect4378"
+ width="227.85715"
+ height="205"
+ x="109.28571"
+ y="141.95163" /></flowRegion><flowPara
+ id="flowPara4380"></flowPara></flowRoot> <g
+ id="g4411"
+ transform="translate(-20.203051,-292.94424)">
+ <text
+ sodipodi:linespacing="0%"
+ id="text4275-1"
+ y="706.11218"
+ x="313.37125"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="706.11218"
+ x="313.37125"
+ id="tspan4277-2"
+ sodipodi:role="line">Gnd</tspan></text>
+ <path
+ id="rect4388"
+ transform="translate(0,308.26772)"
+ d="m 164.28516,370.52344 0,260 65,0 0,-260 -65,0 z m 32.5,10 a 7.1428571,7.1428571 0 0 1 7.14257,7.14258 7.1428571,7.1428571 0 0 1 -7.14257,7.14257 7.1428571,7.1428571 0 0 1 -7.14258,-7.14257 7.1428571,7.1428571 0 0 1 7.14258,-7.14258 z m 0,225 a 7.1428571,7.1428571 0 0 1 7.14257,7.14258 7.1428571,7.1428571 0 0 1 -7.14257,7.14257 7.1428571,7.1428571 0 0 1 -7.14258,-7.14257 7.1428571,7.1428571 0 0 1 7.14258,-7.14258 z"
+ style="opacity:1;fill:#e6e6e6;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ inkscape:connector-curvature="0" />
+ <rect
+ y="740.21973"
+ x="184.99945"
+ height="137.14285"
+ width="44.285713"
+ id="rect4409"
+ style="opacity:1;fill:#b3b3b3;fill-opacity:1;fill-rule:nonzero;stroke:#4d4d4d;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ </g>
+ <g
+ id="g4446">
+ <rect
+ ry="20.203051"
+ y="743.25549"
+ x="134.3503"
+ height="190.91884"
+ width="112.12693"
+ id="rect4417"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99921262;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <ellipse
+ ry="11.111678"
+ rx="10.606602"
+ cy="797.8139"
+ cx="215.73863"
+ id="path4419"
+ style="opacity:1;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:1.77165353;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <g
+ id="text4421"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:48.72301483px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#b3b3b3;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1">
+ <path
+ id="path4444"
+ style=""
+ d="m 190.41376,896.18084 c 0.70692,0 4.51341,-3.80648 4.51341,-4.54059 0,-1.33227 -3.48022,-2.06638 -4.51341,-2.06638 -1.03318,0 -4.5134,0.73411 -4.5134,2.06638 0,0.73411 3.80649,4.54059 4.5134,4.54059 z m 7.34108,-7.36827 c 0.65254,0 4.59498,-3.91524 4.59498,-4.56778 0,-0.2447 -0.10876,-0.46221 -0.2719,-0.62535 -2.90924,-2.88205 -7.64016,-4.48621 -11.66416,-4.48621 -4.02399,0 -8.75491,1.60416 -11.66415,4.48621 -0.16314,0.16314 -0.2719,0.38065 -0.2719,0.62535 0,0.65254 3.94243,4.56778 4.59498,4.56778 0.40783,0 3.31708,-2.71891 7.34107,-2.71891 3.99681,0 6.96044,2.71891 7.34108,2.71891 z m 7.42265,-7.39545 c 0.62535,0 4.54059,-3.91525 4.54059,-4.56779 0,-0.21751 -0.10875,-0.43502 -0.27189,-0.59816 -4.86686,-4.86686 -12.20794,-7.55859 -19.03243,-7.55859 -6.82448,0 -14.16556,2.69173 -19.03242,7.55859 -0.16314,0.16314 -0.2719,0.38065 -0.2719,0.59816 0,0.65254 3.91525,4.56779 4.5406,4.56779 0.29908,0 6.55259,-5.76411 14.76372,-5.76411 5.87287,0 9.65216,2.06638 14.13838,5.54659 0.16313,0.10876 0.40784,0.21752 0.62535,0.21752 z m 7.36827,-7.36827 c 0.62535,0 4.56778,-3.91524 4.56778,-4.56778 0,-0.24471 -0.10876,-0.46222 -0.27189,-0.62536 -6.87886,-6.82448 -16.80291,-10.60378 -26.42789,-10.60378 -9.62497,0 -19.54902,3.7793 -26.42788,10.60378 -0.16314,0.16314 -0.27189,0.38065 -0.27189,0.62536 0,0.65254 3.94243,4.56778 4.56778,4.56778 0.21751,0 0.43503,-0.10876 0.59816,-0.2447 6.2807,-5.51941 13.05081,-8.59179 21.53383,-8.59179 8.48303,0 15.25314,3.07238 21.53384,8.59179 0.16313,0.13594 0.38065,0.2447 0.59816,0.2447 z" />
+ </g>
+ </g>
+ <g
+ id="g4647"
+ transform="translate(1.5,-6.5)">
+ <path
+ inkscape:connector-curvature="0"
+ id="path4581"
+ d="m 636,809.3622 -384,0"
+ style="fill:none;fill-rule:evenodd;stroke:#fff006;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="0%"
+ id="text4583"
+ y="804.86218"
+ x="275.5"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="804.86218"
+ x="275.5"
+ id="tspan4585"
+ sodipodi:role="line">Yellow: Beep</tspan></text>
+ </g>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.33423"
+ y="805.6051"
+ id="text4587"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4589"
+ x="646.33423"
+ y="805.6051">2</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.31042"
+ y="794.15735"
+ id="text4591"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4593"
+ x="646.31042"
+ y="794.15735">1</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.25"
+ y="816.99243"
+ id="text4595"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4597"
+ x="646.25"
+ y="816.99243">3</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.23901"
+ y="828.41455"
+ id="text4599"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4601"
+ x="646.23901"
+ y="828.41455">4</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.31775"
+ y="839.79822"
+ id="text4603"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4605"
+ x="646.31775"
+ y="839.79822">5</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.21338"
+ y="851.26428"
+ id="text4607"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4609"
+ x="646.21338"
+ y="851.26428">6</tspan></text>
+ <flowRoot
+ xml:space="preserve"
+ id="flowRoot4611"
+ style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Noto Serif;font-style:normal;font-weight:normal;font-size:7.5px;line-height:0%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Noto Serif;font-stretch:normal;font-variant:normal;text-anchor:middle;text-align:center"><flowRegion
+ id="flowRegion4613"><rect
+ id="rect4615"
+ width="47.72971"
+ height="109.248"
+ x="613.06158"
+ y="467.26218" /></flowRegion><flowPara
+ id="flowPara4617"></flowPara></flowRoot> <flowRoot
+ xml:space="preserve"
+ id="flowRoot4619"
+ style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Noto Serif;font-style:normal;font-weight:normal;font-size:7.5px;line-height:0%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Noto Serif;font-stretch:normal;font-variant:normal;text-anchor:middle;text-align:center"><flowRegion
+ id="flowRegion4621"><rect
+ id="rect4623"
+ width="37.123108"
+ height="129.04698"
+ x="618.71844"
+ y="449.93805" /></flowRegion><flowPara
+ id="flowPara4625"></flowPara></flowRoot> <path
+ style="fill:#0000ff;fill-rule:evenodd;stroke:#0000ff;stroke-width:3.55140352;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 637.75,826.3622 -384.25,0"
+ id="path4627"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="273.25"
+ y="823.36218"
+ id="text4629"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4631"
+ x="273.25"
+ y="823.36218">Blue: LED</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#008000;stroke-width:3.56663203;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 637.25,837.3622 -383.49959,0"
+ id="path4633"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.50488997px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="273.09454"
+ y="835.65668"
+ id="text4635"
+ sodipodi:linespacing="0%"
+ transform="scale(1.000652,0.99934843)"><tspan
+ sodipodi:role="line"
+ id="tspan4637"
+ x="273.09454"
+ y="835.65668">Green: D0</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.20789"
+ y="862.68274"
+ id="text4639"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4641"
+ x="646.20789"
+ y="862.68274">7</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="646.25"
+ y="874.11218"
+ id="text4643"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4645"
+ x="646.25"
+ y="874.11218">8</tspan></text>
+ <rect
+ style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#808080;stroke-width:0.74946541;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ id="rect4666"
+ width="383.50055"
+ height="2.7938416"
+ x="253.62473"
+ y="847.6936" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="272.25"
+ y="846.61218"
+ id="text4676"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4678"
+ x="272.25"
+ y="846.61218">white: D1</tspan></text>
+ <g
+ id="g4704"
+ transform="translate(-78.488853,27.577164)">
+ <text
+ sodipodi:linespacing="0%"
+ id="text4682"
+ y="461.02676"
+ x="763.06378"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40.62021255px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="461.02676"
+ x="763.06378"
+ id="tspan4686"
+ sodipodi:role="line"></tspan></text>
+ <text
+ sodipodi:linespacing="0%"
+ id="text4694"
+ y="379.45053"
+ x="766.50897"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:44.92547989px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="379.45053"
+ x="766.50897"
+ id="tspan4698"
+ sodipodi:role="line"></tspan></text>
+ <text
+ sodipodi:linespacing="0%"
+ id="text4700"
+ y="417.38031"
+ x="767.91797"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:25px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="417.38031"
+ x="767.91797"
+ id="tspan4702"
+ sodipodi:role="line">12v d.c.</tspan></text>
+ </g>
+ <g
+ id="g4726">
+ <rect
+ y="515.66815"
+ x="810.34436"
+ height="80.610176"
+ width="50.204582"
+ id="rect4712"
+ style="opacity:1;fill:#008000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <rect
+ y="563.04431"
+ x="833.67889"
+ height="20.506096"
+ width="20.506096"
+ id="rect4714"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <rect
+ y="531.22455"
+ x="829.43622"
+ height="21.920311"
+ width="14.142136"
+ id="rect4716"
+ style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ <text
+ sodipodi:linespacing="0%"
+ id="text4718"
+ y="524.86053"
+ x="835.3075"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="524.86053"
+ x="835.3075"
+ id="tspan4720"
+ sodipodi:role="line">12v IN</tspan></text>
+ <text
+ sodipodi:linespacing="0%"
+ id="text4722"
+ y="593.44989"
+ x="835.31299"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ xml:space="preserve"><tspan
+ y="593.44989"
+ x="835.31299"
+ id="tspan4724"
+ sodipodi:role="line">3.3v Out</tspan></text>
+ </g>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff0000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 253.5,758.20578 356.02605,0 0.70711,-200.11122 74.2462,-0.7071"
+ id="path4743"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="269.05634"
+ y="753.96313"
+ id="text4745"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4747"
+ x="269.05634"
+ y="753.96313">Red: 12v</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3.52711511;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 253.5,773.05502 369.46107,0 0,-230.51681 72.832,0"
+ id="path4749"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="277.5"
+ y="769.05499"
+ id="text4751"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4753"
+ x="277.5"
+ y="769.05499">Black: ground</tspan><tspan
+ sodipodi:role="line"
+ x="277.5"
+ y="769.05499"
+ id="tspan4755" /></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ffff00;stroke-width:3.93187785;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 637,791.79335 -76.84366,0 -86.381,0 0,-227.88871 -256.27534,0"
+ id="path4757"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="237"
+ y="559.36218"
+ id="text4761"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4763"
+ x="237"
+ y="559.36218">Yellow: NC</tspan><tspan
+ sodipodi:role="line"
+ x="237"
+ y="559.36218"
+ id="tspan4765" /></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#008000;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 637,814.3622 -183.72702,0 0,-231.43821 -235.77298,0"
+ id="path4767"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="236.5"
+ y="578.42401"
+ id="text4769"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4771"
+ x="236.5"
+ y="578.42401">Green: NO</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff6600;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 637,860.8622 -202,0 0,-258.5 -217.5,0"
+ id="path4773"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="241.5"
+ y="598.86218"
+ id="text4775"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4777"
+ x="241.5"
+ y="598.86218">Orange: COM</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ff0000;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 610.23316,558.09456 -114.23316,0 0,-22.23236 -278.5,0"
+ id="path4779"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="232.5"
+ y="532.36218"
+ id="text4781"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4783"
+ x="232.5"
+ y="532.36218">Red: 12v</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3.54330709;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ d="m 217.5,513.3622 373.14357,0 0,-185.78445 300.78331,0 0,435.9607"
+ id="path4785"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="236.23833"
+ y="509.47308"
+ id="text4787"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4789"
+ x="236.23833"
+ y="509.47308">Black: Gnd</tspan></text>
+ <path
+ style="fill:none;fill-rule:evenodd;stroke:#ffff00;stroke-width:3.54330707;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ d="m 413.30391,564.45852 0,-125.39627"
+ id="path4791"
+ inkscape:connector-curvature="0" />
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:7.5px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="439.82037"
+ y="435.17319"
+ id="text4793"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4795"
+ x="439.82037"
+ y="435.17319">NO COM NC</tspan></text>
+ <text
+ xml:space="preserve"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:25px;line-height:0%;font-family:'Noto Serif';-inkscape-font-specification:'Noto Serif';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ x="244.65895"
+ y="1028.3206"
+ id="text4799"
+ sodipodi:linespacing="0%"><tspan
+ sodipodi:role="line"
+ id="tspan4801"
+ x="244.65895"
+ y="1028.3206">Hackspace Door wiring v1: Jan 2017</tspan></text>
+ </g>
+</svg>