commit 6290cb58f889f55f280d4d70d89b4b0824b612d3
Author: Martin Toutant <martin.toutant@inrae.fr>
Date:   Wed Aug 10 14:18:18 2022 +0200

    add svg of uml

diff --git a/.$SicpaDeviceConnectionsUML.drawio.bkp b/.$SicpaDeviceConnectionsUML.drawio.bkp
new file mode 100644
index 0000000..2b89833
--- /dev/null
+++ b/.$SicpaDeviceConnectionsUML.drawio.bkp
@@ -0,0 +1 @@
+<mxfile host="Electron" modified="2022-08-10T08:31:18.348Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/19.0.3 Chrome/102.0.5005.63 Electron/19.0.3 Safari/537.36" etag="nHRoeu3GVzqqag5-wIx3" version="19.0.3" type="device"><diagram id="0P8m6wT8aCn1QEJA0v6a" name="Page-1">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</diagram></mxfile>
\ No newline at end of file
diff --git a/SicpaDeviceConnectionsUML.drawio b/SicpaDeviceConnectionsUML.drawio
index 2b89833..38aa962 100644
--- a/SicpaDeviceConnectionsUML.drawio
+++ b/SicpaDeviceConnectionsUML.drawio
@@ -1 +1 @@
-<mxfile host="Electron" modified="2022-08-10T08:31:18.348Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/19.0.3 Chrome/102.0.5005.63 Electron/19.0.3 Safari/537.36" etag="nHRoeu3GVzqqag5-wIx3" version="19.0.3" type="device"><diagram id="0P8m6wT8aCn1QEJA0v6a" name="Page-1">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</diagram></mxfile>
\ No newline at end of file
+<mxfile host="Electron" modified="2022-08-10T12:17:47.384Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/19.0.3 Chrome/102.0.5005.63 Electron/19.0.3 Safari/537.36" etag="Sodck1ESQTRWAWvu3eEG" version="19.0.3" type="device"><diagram id="0P8m6wT8aCn1QEJA0v6a" name="Page-1">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</diagram></mxfile>
\ No newline at end of file
diff --git a/SicpaDeviceConnectionsUML.drawio.svg b/SicpaDeviceConnectionsUML.drawio.svg
new file mode 100644
index 0000000..176ede0
--- /dev/null
+++ b/SicpaDeviceConnectionsUML.drawio.svg
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Do not edit this file with editors other than diagrams.net -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1909px" height="819px" viewBox="-0.5 -0.5 1909 819" content="&lt;mxfile host=&quot;Electron&quot; modified=&quot;2022-08-10T12:17:52.957Z&quot; agent=&quot;5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/19.0.3 Chrome/102.0.5005.63 Electron/19.0.3 Safari/537.36&quot; etag=&quot;QUdR0bIVcVNCICFCIG55&quot; version=&quot;19.0.3&quot; type=&quot;device&quot;&gt;&lt;diagram id=&quot;0P8m6wT8aCn1QEJA0v6a&quot; name=&quot;Page-1&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;" style="background-color: rgb(255, 255, 255);"><defs><clipPath id="mx-clip-219-634-451-28-0"><rect x="219" y="634" width="451" height="28"/></clipPath><clipPath id="mx-clip-219-664-451-28-0"><rect x="219" y="664" width="451" height="28"/></clipPath><clipPath id="mx-clip-1452-496-384-28-0"><rect x="1452" y="496" width="384" height="28"/></clipPath><clipPath id="mx-clip-1452-526-384-28-0"><rect x="1452" y="526" width="384" height="28"/></clipPath><clipPath id="mx-clip-1452-556-384-28-0"><rect x="1452" y="556" width="384" height="28"/></clipPath><clipPath id="mx-clip-1452-586-384-28-0"><rect x="1452" y="586" width="384" height="28"/></clipPath><clipPath id="mx-clip-1452-616-384-28-0"><rect x="1452" y="616" width="384" height="28"/></clipPath><clipPath id="mx-clip-1539-319-211-28-0"><rect x="1539" y="319" width="211" height="28"/></clipPath><clipPath id="mx-clip-1539-349-211-28-0"><rect x="1539" y="349" width="211" height="28"/></clipPath><clipPath id="mx-clip-807-649-496-28-0"><rect x="807" y="649" width="496" height="28"/></clipPath><clipPath id="mx-clip-807-315-511-28-0"><rect x="807" y="315" width="511" height="28"/></clipPath><clipPath id="mx-clip-807-345-511-28-0"><rect x="807" y="345" width="511" height="28"/></clipPath><clipPath id="mx-clip-807-375-511-28-0"><rect x="807" y="375" width="511" height="28"/></clipPath><clipPath id="mx-clip-807-160-316-28-0"><rect x="807" y="160" width="316" height="28"/></clipPath><style type="text/css">@import url(https://fonts.googleapis.com/css?family=Ubuntu+Mono);&#xa;</style></defs><g><rect x="774" y="75" width="1102.5" height="711" fill="none" stroke="#006666" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><rect x="31.5" y="75" width="720" height="708" fill="none" stroke="#d79b00" stroke-width="3" stroke-dasharray="9 9" pointer-events="all"/><path d="M 211.5 633 L 211.5 594 L 676.5 594 L 676.5 633" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 211.5 633 L 211.5 693 L 676.5 693 L 676.5 633" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 633 L 676.5 633" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="443.5" y="620.5">ConnectionServiceProvider</text></g><rect x="211.5" y="633" width="465" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-219-634-451-28-0)" text-anchor="middle" font-size="15px"><text x="443.5" y="653.5">GetConnectionInstance(ConnexionType) : IConnectionService </text></g><rect x="211.5" y="663" width="465" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-219-664-451-28-0)" text-anchor="middle" font-size="15px"><text x="443.5" y="683.5">MACAddress : string</text></g><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 128px; height: 1px; padding-top: 35px; margin-left: 22px;"><div data-drawio-colors="color: #FF8000; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 14px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(255, 128, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">Forms.Android</div></div></div></foreignObject><text x="86" y="39" fill="#FF8000" font-family="Ubuntu Mono" font-size="14px" text-anchor="middle" font-weight="bold">Forms.Android</text></switch></g><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 35px; margin-left: 517px;"><div data-drawio-colors="color: #006666; " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 14px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 102, 102); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">Forms</div></div></div></foreignObject><text x="546" y="39" fill="#006666" font-family="Ubuntu Mono" font-size="14px" text-anchor="middle" font-weight="bold">Forms</text></switch></g><path d="M 1644 456 L 1644 390.18" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1644 379.68 L 1649.25 390.18 L 1638.75 390.18 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 278px; margin-left: 1095px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Hérite</div></div></div></foreignObject><text x="1095" y="281" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Hérite</text></switch></g><path d="M 1445.25 495 L 1445.25 456 L 1842.75 456 L 1842.75 495" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1445.25 495 L 1445.25 645 L 1842.75 645 L 1842.75 495" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1445.25 495 L 1842.75 495" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="1643.5" y="482.5">TeoBalance</text></g><rect x="1445.25" y="495" width="397.5" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1452-496-384-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="515.5">GetCommandCode() : byte[]</text></g><rect x="1445.25" y="525" width="397.5" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1452-526-384-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="545.5">GetCommandName() : string</text></g><rect x="1445.25" y="555" width="397.5" height="30" fill="#f5f5f5" stroke="#666666" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="#333333" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1452-556-384-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="575.5">ConnectionService : IConnectionService</text></g><rect x="1445.25" y="585" width="397.5" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1452-586-384-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="605.5">TeoDataReceivedEvent : EventHandler&lt;string&gt;</text></g><rect x="1445.25" y="615" width="397.5" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1452-616-384-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="635.5">TeoPeseeReceivedEvent : EventHandler&lt;ReponsePesee&gt;</text></g><path d="M 1531.5 318 L 1531.5 279 L 1756.5 279 L 1756.5 318" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1531.5 318 L 1531.5 378 L 1756.5 378 L 1756.5 318" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1531.5 318 L 1756.5 318" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="1643.5" y="305.5">Device</text></g><rect x="1531.5" y="318" width="225" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1539-319-211-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="338.5">Name : string</text></g><rect x="1531.5" y="348" width="225" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-1539-349-211-28-0)" text-anchor="middle" font-size="15px"><text x="1643.5" y="368.5">MACAddress : string</text></g><path d="M 1310.25 651 L 1381.5 651 L 1381.5 579.31 L 1442.69 579.36" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1433.86 584.6 L 1444.37 579.36 L 1433.87 574.1" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 411px; margin-left: 917px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Fournit</div></div></div></foreignObject><text x="917" y="415" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Fournit</text></switch></g><path d="M 800.25 648 L 800.25 609 L 1310.25 609 L 1310.25 648" fill="#dae8fc" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 648 L 800.25 678 L 1310.25 678 L 1310.25 648" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 648 L 1310.25 648" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="1054.75" y="635.5">&lt;&lt; IConnectionServiceProvider &gt;&gt;</text></g><rect x="800.25" y="648" width="510" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-807-649-496-28-0)" text-anchor="middle" font-size="15px"><text x="1054.75" y="668.5">GetConnectionServiceInstance(ConnexionType) : IConnectionService </text></g><path d="M 676.5 643.5 L 788.07 643.5" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="none"/><path d="M 798.57 643.5 L 788.07 647 L 788.07 640 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 429px; margin-left: 497px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Implémente</div></div></div></foreignObject><text x="497" y="433" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Implémente</text></switch></g><path d="M 211.5 658.55 L 121.5 658.55 L 121.5 256.55 L 208.15 256.5" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 199.33 261.76 L 209.82 256.5 L 199.32 251.26" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 658.55 L 121.5 658.55 L 121.5 339 L 208.15 339" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 199.32 344.25 L 209.82 339 L 199.32 333.75" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 658.55 L 121.5 658.55 L 121.5 418.55 L 208.15 418.5" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 199.33 423.76 L 209.82 418.5 L 199.32 413.26" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 384px; margin-left: 81px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Instancie</div></div></div></foreignObject><text x="81" y="388" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Instancie</text></switch></g><path d="M 800.25 313.5 L 800.25 274.5 L 1325.25 274.5 L 1325.25 313.5" fill="#dae8fc" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 313.5 L 800.25 403.5 L 1325.25 403.5 L 1325.25 313.5" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 313.5 L 1325.25 313.5" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="1062.25" y="301">&lt;&lt; IConnectionService &gt;&gt;</text></g><rect x="800.25" y="313.5" width="525" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-807-315-511-28-0)" text-anchor="middle" font-size="15px"><text x="1062.25" y="334">Connect(Device) : Task&lt;bool&gt;</text></g><rect x="800.25" y="343.5" width="525" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-807-345-511-28-0)" text-anchor="middle" font-size="15px"><text x="1062.25" y="364">SendCommand(byte[]) : Task&lt;bool&gt;</text></g><rect x="800.25" y="373.5" width="525" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-807-375-511-28-0)" text-anchor="middle" font-size="15px"><text x="1062.25" y="394">DataReceivedEvent : EventHandler&lt;string&gt;</text></g><path d="M 481.5 256.55 L 571.5 256.55 L 571.5 339 L 788.07 339" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="none"/><path d="M 798.57 339 L 788.07 342.5 L 788.07 335.5 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 279 L 211.5 234 L 481.5 234 L 481.5 279" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 279 L 481.5 279" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="346" y="263.5">InternConnectionService</text></g><path d="M 481.5 418.55 L 571.5 418.55 L 571.5 339 L 788.07 339" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="none"/><path d="M 798.57 339 L 788.07 342.5 L 788.07 335.5 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 441 L 211.5 396 L 481.5 396 L 481.5 441" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 441 L 481.5 441" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="346" y="425.5">BluetoothConnectionService</text></g><path d="M 481.5 339 L 788.07 339" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="none"/><path d="M 798.57 339 L 788.07 342.5 L 788.07 335.5 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 226px; margin-left: 451px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Implémente</div></div></div></foreignObject><text x="451" y="230" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Implémente</text></switch></g><path d="M 211.5 361.5 L 211.5 316.5 L 481.5 316.5 L 481.5 361.5" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 361.5 L 481.5 361.5" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="346" y="346">WifiConnectionService</text></g><path d="M 1130.25 538.55 L 1149.05 538.55 L 1149.05 605.65" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1143.8 596.82 L 1149.05 607.32 L 1154.3 596.82" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 385px; margin-left: 771px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Injecte dépendance</div></div></div></foreignObject><text x="771" y="388" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Injecte dépendance</text></switch></g><path d="M 905.25 538.55 L 414.05 538.55 L 414.05 590.65" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 408.8 581.82 L 414.05 592.32 L 419.3 581.82" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 359px; margin-left: 441px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Register singleton</div></div></div></foreignObject><text x="441" y="363" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Register singleton</text></switch></g><path d="M 905.25 561 L 905.25 516 L 1130.25 516 L 1130.25 561" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 905.25 561 L 1130.25 561" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="1017.25" y="545.5">DependencyService</text></g><path d="M 800.25 159 L 800.25 120 L 1130.25 120 L 1130.25 159" fill="#dae8fc" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 159 L 800.25 189 L 1130.25 189 L 1130.25 159" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 800.25 159 L 1130.25 159" fill="none" stroke="#6c8ebf" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="964.75" y="146.5">&lt;&lt; IBluetoothService &gt;&gt;</text></g><rect x="800.25" y="159" width="330" height="30" fill="none" stroke="#999999" stroke-width="0.75" stroke-dasharray="0.75 0.75" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" clip-path="url(#mx-clip-807-160-316-28-0)" text-anchor="middle" font-size="15px"><text x="964.75" y="179.5">GetBondedDevices() : ICollection&lt;Device&gt;</text></g><path d="M 1445.25 570 L 1381.5 570 L 1381.5 478.55 L 1018.5 478.55 L 1018.5 512.65" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 1013.25 503.82 L 1018.5 514.32 L 1023.75 503.82" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 318px; margin-left: 770px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Appelle</div></div></div></foreignObject><text x="770" y="322" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Appelle</text></switch></g><path d="M 481.5 154.5 L 788.07 154.5" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" stroke-dasharray="4.5 4.5" pointer-events="none"/><path d="M 798.57 154.5 L 788.07 158 L 788.07 151 Z" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g transform="translate(-0.5 -0.5)scale(1.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 103px; margin-left: 403px;"><div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 11px; font-family: &quot;Ubuntu Mono&quot;; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; background-color: rgb(255, 255, 255); white-space: nowrap;">Implémente</div></div></div></foreignObject><text x="403" y="107" fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" font-size="11px" text-anchor="middle">Implémente</text></switch></g><path d="M 211.5 177 L 211.5 132 L 481.5 132 L 481.5 177" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><path d="M 211.5 177 L 481.5 177" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/><g fill="rgb(0, 0, 0)" font-family="Ubuntu Mono" pointer-events="none" text-anchor="middle" font-size="18px"><text x="346" y="161.5">BluetoothService</text></g><path d="M 1445.25 570 L 1381.5 570 L 1381.5 339 L 1325.25 339" fill="none" stroke="rgb(0, 0, 0)" stroke-width="1.5" stroke-miterlimit="10" pointer-events="none"/></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>
\ No newline at end of file
