From 9b016f2a9a56da980457c5c0f46faa98218bafb9 Mon Sep 17 00:00:00 2001
From: "Dr. Martin Goik" <goik@hdm-stuttgart.de>
Date: Tue, 24 Nov 2020 11:39:40 +0100
Subject: [PATCH] Initializing JDBC chapter

---
 Doc/DbDevel/Ref/Fig/concurrentOptimistic.svg  | 1538 ------------
 .../Ref/Fig/concurrentOptimisticFail.svg      | 2076 -----------------
 Doc/DbDevel/Ref/Screen/accountTransferSum.png |  Bin 30650 -> 0 bytes
 Doc/DbDevel/dbDevel.xml                       |  363 +--
 4 files changed, 4 insertions(+), 3973 deletions(-)
 delete mode 100644 Doc/DbDevel/Ref/Fig/concurrentOptimistic.svg
 delete mode 100644 Doc/DbDevel/Ref/Fig/concurrentOptimisticFail.svg
 delete mode 100644 Doc/DbDevel/Ref/Screen/accountTransferSum.png

diff --git a/Doc/DbDevel/Ref/Fig/concurrentOptimistic.svg b/Doc/DbDevel/Ref/Fig/concurrentOptimistic.svg
deleted file mode 100644
index dc3f98471..000000000
--- a/Doc/DbDevel/Ref/Fig/concurrentOptimistic.svg
+++ /dev/null
@@ -1,1538 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:ns1="http://sozi.baierouge.fr"
-   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"
-   sodipodi:docname="concurrentOptimistic.svg"
-   inkscape:version="0.48.4 r9939"
-   version="1.2"
-   id="svg2"
-   height="245.16989"
-   width="474.46835">
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="2.3643056"
-     inkscape:cx="238.64055"
-     inkscape:cy="141.53026"
-     inkscape:document-units="mm"
-     inkscape:current-layer="layer1"
-     showgrid="true"
-     inkscape:window-width="1920"
-     inkscape:window-height="1176"
-     inkscape:window-x="0"
-     inkscape:window-y="24"
-     inkscape:window-maximized="1"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     inkscape:snap-global="true"
-     objecttolerance="10000"
-     guidetolerance="10000"
-     units="mm"
-     fit-margin-top="0"
-     fit-margin-left="0"
-     fit-margin-right="0"
-     fit-margin-bottom="0">
-    <inkscape:grid
-       type="xygrid"
-       id="grid4604"
-       empspacing="5"
-       visible="true"
-       enabled="true"
-       snapvisiblegridlinesonly="true"
-       originx="-36.03125px"
-       originy="-264.83011px" />
-  </sodipodi:namedview>
-  <defs
-     id="defs4">
-    <marker
-       inkscape:stockid="DiamondMend"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="DiamondMend"
-       style="overflow:visible">
-      <path
-         id="path4249"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(0.4,0,0,0.4,-2.6,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path4158"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutL"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutL"
-       style="overflow:visible">
-      <path
-         id="path4309"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lstart"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lstart">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path3841" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareM"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareM"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path3914"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lend"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lend">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path3844" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondM"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondM">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path3923" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMH"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMH">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path4656" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendB"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendB">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path4659" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMU"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMU"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path5221"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lend3"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lend3">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5224" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMo"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMo">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path5799" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendO"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendO">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5802" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondM1"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondM1">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path6393" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendV"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendV">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6396" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMN"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMN"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path7813"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LstartP"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LstartP">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path7816" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMb"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMb"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path9491"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendX"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendX">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path9494" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareM8"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareM8"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path10143"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendT"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendT">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path10146" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMNT"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMNT"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path12195"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LstartPJ"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LstartPJ">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path12198" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMNTL"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMNTL"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path12907"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lendx"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lendx">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path12910" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMoY"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMoY">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path13187" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendOe"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendOe">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path13190" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt"
-       style="overflow:visible">
-      <path
-         id="path4692"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt-8"
-       style="overflow:visible">
-      <path
-         id="path4692-6"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt-3"
-       style="overflow:visible">
-      <path
-         id="path4692-7"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1MendK"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1MendK">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5820"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mendw"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mendw">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6591"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6594"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6-6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6594-3"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-8"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-5" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-3"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-1"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-1" />
-    </marker>
-  </defs>
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     transform="translate(-36.03125,-542.36221)"
-     id="layer1"
-     inkscape:groupmode="layer"
-     inkscape:label="Layer 1">
-    <rect
-       y="542.20227"
-       x="330.04712"
-       height="219.77139"
-       width="136.03505"
-       id="view50-5"
-       style="fill:#f2f2f2;stroke:none" />
-    <rect
-       transform="translate(0,502.36221)"
-       y="40"
-       x="125"
-       height="220"
-       width="90"
-       id="rect6832"
-       style="fill:#f2f2f2;stroke:none" />
-    <text
-       transform="translate(0,308.2677)"
-       sodipodi:linespacing="125%"
-       id="text3004"
-       y="81.43441"
-       x="97.984795"
-       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="81.43441"
-         x="97.984795"
-         id="tspan3006"
-         sodipodi:role="line" /></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="51.716835"
-       y="584.505"
-       id="text4576"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan4578"
-         x="51.716835"
-         y="584.505">Database</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="45"
-       y="602.36218"
-       id="text4580"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan4582"
-         x="45"
-         y="602.36218">(persistent)</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="45"
-       y="722.36218"
-       id="text4584"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         x="45"
-         y="722.36218"
-         id="tspan4588">Client</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="35"
-       y="742.36218"
-       id="text4592"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan4594"
-         x="35"
-         y="742.36218">(transient)</tspan></text>
-    <g
-       id="g4179"
-       transform="translate(1,19.000027)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(196,114.00003)"
-       id="g4179-5">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-5"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-2"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-3"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-7"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-5"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-6"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(116,159.00003)"
-       id="g4179-8">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(1,159.00006)"
-       id="g4179-51">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-1"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-25"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-31"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-8"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-8"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(196,19.000027)"
-       id="g4179-2">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-6"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-6"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-43"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-1"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-9"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-5"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(196,159.00006)"
-       id="g4179-8-6">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7-8"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5-3"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4-2"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71-7"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60-8"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="380"
-       y="667.36218"
-       id="text3223"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3225"
-         x="380"
-         y="667.36218">still</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="380"
-       y="677.36218"
-       id="text3227"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3229"
-         x="380"
-         y="677.36218">equal</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1MendK)"
-       d="m 375,672.36221 -15,10"
-       id="path3231"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6)"
-       d="m 385,682.36221 -25,45"
-       id="path3231-0"
-       inkscape:connector-curvature="0" />
-    <g
-       transform="translate(296,159.00003)"
-       id="g4179-8-6-9">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7-8-8"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5-3-6"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4-2-5"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71-7-2"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1-0-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60-8-8"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mendw)"
-       d="m 360,732.36221 75,0"
-       id="path3231-0-4"
-       inkscape:connector-curvature="0" />
-    <text
-       sodipodi:linespacing="125%"
-       id="text5005"
-       y="752.36218"
-       x="415"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="752.36218"
-         x="415"
-         id="tspan5007"
-         sodipodi:role="line">+1</tspan></text>
-    <g
-       transform="translate(296,19.000027)"
-       id="g4179-8-6-9-3">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7-8-8-0"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5-3-6-7"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4-2-5-2"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71-7-2-3"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1-0-0-5"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60-8-8-6"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <text
-       sodipodi:linespacing="125%"
-       id="text6824"
-       y="557.36218"
-       x="130"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="557.36218"
-         x="130"
-         id="tspan6826"
-         sodipodi:role="line">Transaction 1</tspan></text>
-    <text
-       sodipodi:linespacing="125%"
-       id="text6828"
-       y="557.36218"
-       x="360"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="557.36218"
-         x="360"
-         id="tspan6830"
-         sodipodi:role="line">Transaction 2</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 165,717.36221 90,0"
-       id="path3231-0-2"
-       inkscape:connector-curvature="0" />
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="220"
-       y="732.36218"
-       id="text7197"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan7199"
-         x="220"
-         y="732.36218">edit</tspan></text>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 45,135 305,0"
-       id="path7201"
-       inkscape:connector-curvature="0"
-       transform="translate(0,502.36221)"
-       sodipodi:nodetypes="cc" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 450,712.36221 0,-110"
-       id="path3231-0-2-2"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 350,602.36221 0,60"
-       id="path3231-0-2-0"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 155,602.36221 0,105"
-       id="path3231-0-2-6"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g7293"
-       transform="translate(-104,-119.99997)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <g
-       id="g7303"
-       transform="translate(148,-124.99997)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7273"
-         y="777.36218"
-         x="304"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="304"
-           id="tspan7275"
-           sodipodi:role="line">w</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7277"
-         y="787.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="307"
-           id="tspan7279"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7281"
-         y="800.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="800.36218"
-           x="307"
-           id="tspan7283"
-           sodipodi:role="line">i</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7285"
-         y="811.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="307"
-           id="tspan7287"
-           sodipodi:role="line">t</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7289"
-         y="821.36218"
-         x="306"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="821.36218"
-           x="306"
-           id="tspan7291"
-           sodipodi:role="line">e</tspan></text>
-    </g>
-    <g
-       id="g7293-1"
-       transform="translate(106,-159.99997)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257-0"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259-6"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261-0"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263-7"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265-8"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267-0"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269-7"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271-3"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 366.13897,637.36221 143.86103,0"
-       id="path7201-9"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="cc" />
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="445"
-       y="787.36218"
-       id="text7375"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan7377"
-         x="445"
-         y="787.36218">Time</tspan></text>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#DiamondMend);marker-end:url(#Arrow1Lend)"
-       d="m 119.60006,773.96791 375,0"
-       id="path7379"
-       inkscape:connector-curvature="0" />
-    <g
-       id="group10">
-      <rect
-         transform="translate(36.03125,542.36221)"
-         y="25.000002"
-         x="8.96875"
-         height="40"
-         width="125"
-         id="view10"
-         style="fill:none;stroke:#0000ff;stroke-width:0.70866141999999999;stroke-miterlimit:4;stroke-dasharray:none" />
-      <text
-         sodipodi:linespacing="125%"
-         id="text6782"
-         y="577.36218"
-         x="110"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;fill-opacity:1;stroke:#0000ff;font-family:Sans;stroke-width:1.06299213;stroke-miterlimit:4;stroke-dasharray:none"
-         xml:space="preserve"><tspan
-           y="577.36218"
-           x="110"
-           id="tspan6784"
-           sodipodi:role="line">10</tspan></text>
-    </g>
-    <g
-       id="group05"
-       transform="translate(-3.2479553,-0.08120905)">
-      <rect
-         style="fill:none;stroke:#0000ff;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"
-         id="view05"
-         width="480"
-         height="245"
-         x="35"
-         y="542.36218">
-        <title
-           id="title4622">Occ</title>
-      </rect>
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:#0000ff;stroke-width:0.35433072;stroke-miterlimit:4;stroke-dasharray:none;font-family:Sans"
-         x="493.24796"
-         y="557.44342"
-         id="text7223"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan7225"
-           x="493.24796"
-           y="557.44342">05</tspan></text>
-    </g>
-    <g
-       transform="translate(0,2.8740234e-5)"
-       id="group20">
-      <rect
-         inkscape:label="#view20"
-         y="542.36224"
-         x="35"
-         height="205"
-         width="180"
-         id="view20"
-         style="fill:none;stroke:#0000ff;stroke-width:0.70866144;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" />
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="200"
-         y="582.36218"
-         id="text8119"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8121"
-           x="200"
-           y="582.36218">20</tspan></text>
-    </g>
-    <g
-       id="group30">
-      <rect
-         transform="translate(36.03125,542.36221)"
-         y="165"
-         x="98.96875"
-         height="40"
-         width="150"
-         id="view30"
-         style="fill:none;stroke:#0000ff;stroke-width:0.99921260000000001;stroke-miterlimit:4;stroke-dasharray:none">
-        <title
-           id="title4592">Client side change</title>
-      </rect>
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="265"
-         y="707.36218"
-         id="text8123"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8125"
-           x="265"
-           y="707.36218">30</tspan></text>
-    </g>
-    <g
-       id="group40">
-      <rect
-         transform="translate(36.03125,542.36221)"
-         y="25.000002"
-         x="293.96875"
-         height="175"
-         width="85"
-         id="view40"
-         style="fill:none;stroke:#0000ff;stroke-width:0.99921262000000000;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" />
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="400"
-         y="577.36218"
-         id="text8127"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8129"
-           x="400"
-           y="577.36218">40</tspan></text>
-    </g>
-    <g
-       id="group50">
-      <rect
-         style="fill:none;stroke:#0000ff"
-         id="view50"
-         width="136.03505"
-         height="219.77139"
-         x="330.26273"
-         y="542.71747" />
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="450"
-         y="552.36218"
-         id="text8131"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8133"
-           x="450"
-           y="552.36218">50</tspan></text>
-    </g>
-  </g>
-  <script
-     id="sozi-script"
-     ns1:version="14.10-05142318">function namespace(b,d,a){var c=b;d.split(&quot;.&quot;).forEach(function(e){if(typeof c[e]===&quot;undefined&quot;){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,&quot;sozi.events&quot;,function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,&quot;sozi.proto&quot;,function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,&quot;sozi.actions&quot;,function(A,g){var u=namespace(g,&quot;sozi.player&quot;);var v=namespace(g,&quot;sozi.display&quot;);var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C&gt;0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B&gt;0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener(&quot;mousemove&quot;,q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&amp;&amp;(Math.abs(B.clientX-i)&gt;m||Math.abs(B.clientY-h)&gt;m)){r=true}if(r){sozi.events.fire(&quot;sozi.player.cleanup&quot;);v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener(&quot;mousemove&quot;,q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&amp;&amp;B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName(&quot;a&quot;);for(var D=0;D&lt;C.length;D+=1){C[D].addEventListener(&quot;click&quot;,z,false);C[D].addEventListener(&quot;contextmenu&quot;,z,false)}var B=n.documentElement;B.addEventListener(&quot;click&quot;,e,false);B.addEventListener(&quot;mousedown&quot;,f,false);B.addEventListener(&quot;mouseup&quot;,c,false);B.addEventListener(&quot;contextmenu&quot;,p,false);B.addEventListener(&quot;DOMMouseScroll&quot;,j,false);g.onmousewheel=j;B.addEventListener(&quot;keypress&quot;,l,false);B.addEventListener(&quot;keydown&quot;,b,false)}sozi.events.listen(&quot;sozi.display.ready&quot;,k)});namespace(this,&quot;sozi.animation&quot;,function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&amp;&amp;g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length&gt;0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l&gt;=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},&quot;strong-accelerate&quot;:function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},&quot;strong-decelerate&quot;:function(l){return 1-Math.pow(1-l,5)},&quot;accelerate-decelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l&lt;=0.5?n:1-n},&quot;strong-accelerate-decelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l&lt;=0.5?n:1-n},&quot;decelerate-accelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l&lt;=0.5?n:1-n},&quot;strong-decelerate-accelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l&lt;=0.5?n:1-n},&quot;immediate-beginning&quot;:function(l){return 1},&quot;immediate-end&quot;:function(l){return l===1?1:0},&quot;immediate-middle&quot;:function(l){return l&gt;=0.5?1:0}}});namespace(this,&quot;sozi.display&quot;,function(c,g){var f=&quot;http://www.w3.org/2000/svg&quot;;var b=&quot;http://www.w3.org/1999/xlink&quot;;var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName===&quot;rect&quot;){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:[&quot;width&quot;,&quot;height&quot;,&quot;angle&quot;],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q&lt;this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&amp;&amp;l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,&quot;rect&quot;);var m=i.createElementNS(f,&quot;clipPath&quot;);m.setAttribute(&quot;id&quot;,&quot;sozi-clip-path-&quot;+n.id+&quot;-&quot;+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,&quot;g&quot;);l.setAttribute(&quot;clip-path&quot;,&quot;url(#sozi-clip-path-&quot;+n.id+&quot;-&quot;+o+&quot;)&quot;);n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,&quot;g&quot;);this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,&quot;use&quot;);this.svgLayer.setAttributeNS(b,&quot;href&quot;,&quot;#&quot;+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute(&quot;x&quot;,this.clipped?l:0);this.svgClipRect.setAttribute(&quot;y&quot;,this.clipped?r:0);this.svgClipRect.setAttribute(&quot;width&quot;,this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute(&quot;height&quot;,this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute(&quot;transform&quot;,&quot;scale(&quot;+q+&quot;)translate(&quot;+p+&quot;,&quot;+o+&quot;)rotate(&quot;+(-this.angle)+&quot;,&quot;+this.cx+&quot;,&quot;+this.cy+&quot;)&quot;);return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw&quot;Failed to create a primary viewport. A primary viewport already exists.&quot;}else{e=this}}this.svgGroup=i.createElementNS(f,&quot;g&quot;);this.svgGroup.setAttribute(&quot;class&quot;,&quot;sozi-viewport&quot;);this.svgGroup.setAttribute(&quot;id&quot;,&quot;sozi-viewport-&quot;+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l&gt;=this.x&amp;&amp;l&lt;this.x+this.width&amp;&amp;m&gt;=this.y&amp;&amp;m&lt;this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+this.x+&quot;,&quot;+this.y+&quot;)&quot;);for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute(&quot;width&quot;,h);l.setAttribute(&quot;height&quot;,j);sozi.events.fire(&quot;sozi.display.ready&quot;)}function a(){var l=i.documentElement;l.setAttribute(&quot;width&quot;,g.innerWidth);l.setAttribute(&quot;height&quot;,g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen(&quot;sozi.document.ready&quot;,d);g.addEventListener(&quot;resize&quot;,a,false)});namespace(this,&quot;sozi.document&quot;,function(c,e){var g=e.document;var b=&quot;http://sozi.baierouge.fr&quot;;var d={title:&quot;Untitled&quot;,sequence:&quot;0&quot;,hide:&quot;true&quot;,clip:&quot;true&quot;,&quot;show-in-frame-list&quot;:&quot;true&quot;,&quot;timeout-enable&quot;:&quot;false&quot;,&quot;timeout-ms&quot;:&quot;5000&quot;,&quot;transition-duration-ms&quot;:&quot;1000&quot;,&quot;transition-zoom-percent&quot;:&quot;0&quot;,&quot;transition-profile&quot;:&quot;linear&quot;,&quot;transition-path-hide&quot;:&quot;true&quot;};var h=[&quot;g&quot;,&quot;image&quot;,&quot;path&quot;,&quot;rect&quot;,&quot;circle&quot;,&quot;ellipse&quot;,&quot;line&quot;,&quot;polyline&quot;,&quot;polygon&quot;,&quot;text&quot;,&quot;clippath&quot;];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-zoom-percent&quot;)){l.setTransitionZoomPercent(parseInt(j(k,&quot;transition-zoom-percent&quot;),10))}if(typeof l.transitionProfile===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-profile&quot;)){l.setTransitionProfile(sozi.animation.profiles[j(k,&quot;transition-profile&quot;)])}if(typeof l.transitionPath===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-path&quot;)){var n=g.getElementById(k.getAttributeNS(b,&quot;transition-path&quot;));if(n&amp;&amp;n.nodeName===&quot;path&quot;){l.setTransitionPath(n);if(j(k,&quot;transition-path-hide&quot;)===&quot;true&quot;){n.style.visibility=&quot;hidden&quot;}}}if(k.hasAttributeNS(b,&quot;refid&quot;)){var m=g.getElementById(k.getAttributeNS(b,&quot;refid&quot;));if(m){l.setAtElement(m);if(j(k,&quot;hide&quot;)===&quot;true&quot;){m.style.visibility=&quot;hidden&quot;}}}if(k.hasAttributeNS(b,&quot;clip&quot;)){l.setClipped(j(k,&quot;clip&quot;)===&quot;true&quot;)}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,&quot;layer&quot;);for(var n=0;n&lt;p.length;n+=1){var s=p[n].getAttributeNS(b,&quot;group&quot;);if(s&amp;&amp;l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o=&quot;http://www.w3.org/2000/svg&quot;;var q=g.createElementNS(o,&quot;g&quot;);var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute(&quot;id&quot;))!==-1){if(q.firstChild){q.setAttribute(&quot;id&quot;,&quot;sozi-wrapper-&quot;+t);c.idLayerList.push(&quot;sozi-wrapper-&quot;+t);r.insertBefore(q,u);q=g.createElementNS(o,&quot;g&quot;)}c.idLayerList.push(u.getAttribute(&quot;id&quot;))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute(&quot;id&quot;,&quot;sozi-wrapper-&quot;+k.length);c.idLayerList.push(&quot;sozi-wrapper-&quot;+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,&quot;frame&quot;));m.sort(function(u,t){var w=parseInt(j(u,&quot;sequence&quot;),10);var v=parseInt(j(t,&quot;sequence&quot;),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute(&quot;id&quot;),title:j(v,&quot;title&quot;),showInFrameList:j(v,&quot;show-in-frame-list&quot;)===&quot;true&quot;,sequence:parseInt(j(v,&quot;sequence&quot;),10),timeoutEnable:j(v,&quot;timeout-enable&quot;)===&quot;true&quot;,timeoutMs:parseInt(j(v,&quot;timeout-ms&quot;),10),transitionDurationMs:parseInt(j(v,&quot;transition-duration-ms&quot;),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search(&quot;sozi-wrapper-[0-9]+&quot;)!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,&quot;layer&quot;));t.forEach(function(y){var z=y.getAttributeNS(b,&quot;group&quot;);if(z&amp;&amp;c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k&lt;c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute(&quot;viewBox&quot;);a();sozi.events.fire(&quot;sozi.document.ready&quot;)}e.addEventListener(&quot;load&quot;,f,false)});namespace(this,&quot;sozi.framelist&quot;,function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f=&quot;decelerate&quot;;var a=&quot;http://www.w3.org/2000/svg&quot;;function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&amp;&amp;x!==i&amp;&amp;x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x&lt;=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x&lt;0){x=0}}p.setAttribute(&quot;transform&quot;,&quot;translate(0,&quot;+x+&quot;)&quot;);y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j&gt;=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j&gt;k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute(&quot;transform&quot;,&quot;translate(0,&quot;+x+&quot;)&quot;);y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,&quot;g&quot;);i.setAttribute(&quot;id&quot;,&quot;sozi-toc&quot;);o.documentElement.appendChild(i);p=o.createElementNS(a,&quot;g&quot;);i.appendChild(p);var y=o.createElementNS(a,&quot;rect&quot;);y.setAttribute(&quot;id&quot;,&quot;sozi-toc-background&quot;);y.setAttribute(&quot;x&quot;,c);y.setAttribute(&quot;y&quot;,c);y.setAttribute(&quot;rx&quot;,c);y.setAttribute(&quot;ry&quot;,c);y.addEventListener(&quot;click&quot;,l,false);y.addEventListener(&quot;mousedown&quot;,l,false);y.addEventListener(&quot;mouseout&quot;,n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,&quot;text&quot;);C.appendChild(o.createTextNode(D.title));C.setAttribute(&quot;id&quot;,&quot;sozi-toc-&quot;+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute(&quot;class&quot;,&quot;sozi-toc-current&quot;)}var B=C.getBBox().width;j+=C.getBBox().height;if(B&gt;A){A=B}C.setAttribute(&quot;x&quot;,2*c);C.setAttribute(&quot;y&quot;,j+c);C.addEventListener(&quot;click&quot;,g(E),false);C.addEventListener(&quot;mousedown&quot;,l,false)}});var x=o.createElementNS(a,&quot;path&quot;);x.setAttribute(&quot;class&quot;,&quot;sozi-toc-arrow&quot;);x.setAttribute(&quot;d&quot;,&quot;M&quot;+(A+3*c)+&quot;,&quot;+(5*c)+&quot; l&quot;+(4*c)+&quot;,0 l-&quot;+(2*c)+&quot;,-&quot;+(3*c)+&quot; z&quot;);x.addEventListener(&quot;click&quot;,r,false);x.addEventListener(&quot;mousedown&quot;,l,false);i.appendChild(x);var z=o.createElementNS(a,&quot;path&quot;);z.setAttribute(&quot;class&quot;,&quot;sozi-toc-arrow&quot;);z.setAttribute(&quot;d&quot;,&quot;M&quot;+(A+3*c)+&quot;,&quot;+(7*c)+&quot; l&quot;+(4*c)+&quot;,0 l-&quot;+(2*c)+&quot;,&quot;+(3*c)+&quot; z&quot;);z.addEventListener(&quot;click&quot;,d,false);z.addEventListener(&quot;mousedown&quot;,l,false);i.appendChild(z);y.setAttribute(&quot;width&quot;,A+7*c);y.setAttribute(&quot;height&quot;,j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+h+&quot;,0)&quot;);t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+w+&quot;,0)&quot;)}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName(&quot;sozi-toc-current&quot;));y.forEach(function(A){A.removeAttribute(&quot;class&quot;)});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById(&quot;sozi-toc-&quot;+z.id).setAttribute(&quot;class&quot;,&quot;sozi-toc-current&quot;)}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen(&quot;sozi.player.ready&quot;,q);sozi.events.listen(&quot;sozi.player.cleanup&quot;,u.hide);sozi.events.listen(&quot;sozi.player.framechange&quot;,m)});namespace(this,&quot;sozi.framenumber&quot;,function(a,d){var g=d.document;var e;var k,i;var f;var b=&quot;http://www.w3.org/2000/svg&quot;;function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute(&quot;r&quot;,n);e.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+l+&quot;,&quot;+l+&quot;)&quot;)}function c(){e=g.createElementNS(b,&quot;g&quot;);k=g.createElementNS(b,&quot;text&quot;);f=g.createElementNS(b,&quot;circle&quot;);e.setAttribute(&quot;id&quot;,&quot;sozi-framenumber&quot;);f.setAttribute(&quot;cx&quot;,0);f.setAttribute(&quot;cy&quot;,0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute(&quot;text-anchor&quot;,&quot;middle&quot;);k.setAttribute(&quot;dominant-baseline&quot;,&quot;central&quot;);k.setAttribute(&quot;x&quot;,0);k.setAttribute(&quot;y&quot;,0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen(&quot;sozi.player.ready&quot;,c);sozi.events.listen(&quot;sozi.player.framechange&quot;,j)});namespace(this,&quot;sozi.links&quot;,function(c,e){var b=&quot;http://www.w3.org/2000/svg&quot;;var a=&quot;http://www.w3.org/1999/xlink&quot;;function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,&quot;a&quot;);for(var j=0;j&lt;h.length;j+=1){var g=h[j].getAttributeNS(a,&quot;href&quot;);if(g&amp;&amp;g[0]===&quot;#&quot;){h[j].addEventListener(&quot;click&quot;,f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen(&quot;sozi.document.ready&quot;,d)});namespace(this,&quot;sozi.location&quot;,function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):&quot;1&quot;;var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f&lt;0){return 0}else{if(f&gt;=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash=&quot;#&quot;+sozi.document.frames[f].id}d.addEventListener(&quot;hashchange&quot;,e,false);sozi.events.listen(&quot;sozi.player.framechange&quot;,c)});namespace(this,&quot;sozi.player&quot;,function(d,g){var l;var c;var i;var e=500;var n=-10;var j=&quot;linear&quot;;var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o&lt;0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x&gt;0&amp;&amp;x&lt;=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire(&quot;sozi.player.cleanup&quot;);f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire(&quot;sozi.player.framechange&quot;,o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle&gt;180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle&lt;-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&amp;&amp;q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire(&quot;sozi.player.framechange&quot;,o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire(&quot;sozi.player.cleanup&quot;);k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire(&quot;sozi.player.framechange&quot;,r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f&lt;=d.currentFrameIndex){o-=1}if(o&gt;=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o&gt;=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f&gt;=d.currentFrameIndex){o+=1}if(o&lt;sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex&lt;sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire(&quot;sozi.player.cleanup&quot;);c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance(&quot;player&quot;,sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire(&quot;sozi.player.ready&quot;)}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&amp;&amp;q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&amp;&amp;q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen(&quot;sozi.display.ready&quot;,a)});</script>
-  <style
-     id="sozi-style"
-     ns1:version="14.10-05142318">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style>
-  <script
-     id="sozi-extras-media-script"
-     ns1:version="14.10-05142318">this.addEventListener(&quot;load&quot;,function(){var h=&quot;http://www.w3.org/2000/svg&quot;,l=&quot;http://sozi.baierouge.fr&quot;,s=&quot;http://www.w3.org/1999/xhtml&quot;,m=this,o=m.document,q=[],r,e,d,c,p,a,g,f,b;function n(i){i.stopPropagation()}function t(i,j,k){sozi.events.listen(&quot;sozi.player.framechange&quot;,function(u){var v=sozi.document.frames[u].id;if(v===j){i.play()}else{if(v===k){i.pause()}}})}q.push(o.getElementsByTagNameNS(l,&quot;video&quot;));q.push(o.getElementsByTagNameNS(l,&quot;audio&quot;));r=[];for(c=0;c&lt;q.length;c+=1){for(e=0;e&lt;q[c].length;e+=1){p=q[c][e].parentNode;b=o.createElementNS(s,&quot;source&quot;);b.setAttribute(&quot;type&quot;,q[c][e].getAttributeNS(l,&quot;type&quot;));b.setAttribute(&quot;src&quot;,q[c][e].getAttributeNS(l,&quot;src&quot;));for(d=0;d&lt;r.length;d+=1){if(r[d].rect===p){break}}if(d===r.length){p.setAttribute(&quot;visibility&quot;,&quot;hidden&quot;);f=o.createElementNS(s,q[c][e].localName);f.setAttribute(&quot;controls&quot;,&quot;controls&quot;);if(q[c][e].localName===&quot;video&quot;){f.setAttribute(&quot;width&quot;,p.getAttribute(&quot;width&quot;));f.setAttribute(&quot;height&quot;,p.getAttribute(&quot;height&quot;))}f.addEventListener(&quot;click&quot;,n,false);f.addEventListener(&quot;contextmenu&quot;,n,false);g=o.createElementNS(s,&quot;html&quot;);g.appendChild(f);a=o.createElementNS(h,&quot;foreignObject&quot;);a.setAttribute(&quot;x&quot;,p.getAttribute(&quot;x&quot;));a.setAttribute(&quot;y&quot;,p.getAttribute(&quot;y&quot;));a.setAttribute(&quot;width&quot;,p.getAttribute(&quot;width&quot;));a.setAttribute(&quot;height&quot;,p.getAttribute(&quot;height&quot;));a.appendChild(g);p.parentNode.insertBefore(a,p.nextSibling);if(q[c][e].hasAttributeNS(l,&quot;start-frame&quot;)){t(f,q[c][e].getAttributeNS(l,&quot;start-frame&quot;),q[c][e].getAttributeNS(l,&quot;stop-frame&quot;))}r.push({rect:q[c][e].parentNode,htmlMedia:f})}r[d].htmlMedia.appendChild(b)}}},false);</script>
-  <ns1:frame
-     id="view10Frame"
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="2"
-     ns1:title="Persistent database object"
-     ns1:refid="group10" />
-  <ns1:frame
-     ns1:refid="group20"
-     ns1:title="Copy to client side"
-     ns1:sequence="3"
-     ns1:hide="true"
-     ns1:clip="true"
-     ns1:show-in-frame-list="true"
-     ns1:timeout-enable="false"
-     ns1:timeout-ms="5000.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-profile="linear"
-     ns1:transition-path-hide="true"
-     id="view20Frame" />
-  <ns1:frame
-     id="view30Frame"
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="4"
-     ns1:title="Modify on client side"
-     ns1:refid="group30" />
-  <ns1:frame
-     ns1:refid="group40"
-     ns1:title="Re-read from database"
-     ns1:sequence="5"
-     ns1:hide="true"
-     ns1:clip="true"
-     ns1:show-in-frame-list="true"
-     ns1:timeout-enable="false"
-     ns1:timeout-ms="5000.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-profile="linear"
-     ns1:transition-path-hide="true"
-     id="view40Frame" />
-  <ns1:frame
-     id="view50Frame"
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="6"
-     ns1:title="Commit or abort"
-     ns1:refid="group50" />
-  <ns1:frame
-     id="view05Frame"
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="1"
-     ns1:title="Occ"
-     ns1:refid="group05" />
-  <ns1:frame
-     id="group05Frame2"
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="7"
-     ns1:title="Occ"
-     ns1:refid="group05" />
-</svg>
diff --git a/Doc/DbDevel/Ref/Fig/concurrentOptimisticFail.svg b/Doc/DbDevel/Ref/Fig/concurrentOptimisticFail.svg
deleted file mode 100644
index 183527e9b..000000000
--- a/Doc/DbDevel/Ref/Fig/concurrentOptimisticFail.svg
+++ /dev/null
@@ -1,2076 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:ns1="http://sozi.baierouge.fr"
-   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"
-   sodipodi:docname="concurrentOptimisticFail.svg"
-   inkscape:version="0.48.4 r9939"
-   version="1.2"
-   id="svg2"
-   height="418.78125"
-   width="536.09375">
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="2.1424092"
-     inkscape:cx="335.3683"
-     inkscape:cy="222.97191"
-     inkscape:document-units="mm"
-     inkscape:current-layer="layer1"
-     showgrid="true"
-     inkscape:window-width="1920"
-     inkscape:window-height="1176"
-     inkscape:window-x="0"
-     inkscape:window-y="24"
-     inkscape:window-maximized="1"
-     showguides="true"
-     inkscape:guide-bbox="true"
-     inkscape:snap-global="false"
-     objecttolerance="10000"
-     guidetolerance="10000"
-     units="mm"
-     fit-margin-top="0"
-     fit-margin-left="0"
-     fit-margin-right="0"
-     fit-margin-bottom="0">
-    <inkscape:grid
-       type="xygrid"
-       id="grid4604"
-       empspacing="5"
-       visible="true"
-       enabled="true"
-       snapvisiblegridlinesonly="true"
-       originx="-37.27414px"
-       originy="-243.20196px" />
-  </sodipodi:namedview>
-  <defs
-     id="defs4">
-    <marker
-       inkscape:stockid="DiamondMend"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="DiamondMend"
-       style="overflow:visible">
-      <path
-         id="path4249"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(0.4,0,0,0.4,-2.6,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path4158"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutL"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutL"
-       style="overflow:visible">
-      <path
-         id="path4309"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lstart"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lstart">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path3841" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareM"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareM"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path3914"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lend"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lend">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path3844" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondM"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondM">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path3923" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMH"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMH">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path4656" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendB"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendB">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path4659" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMU"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMU"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path5221"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lend3"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lend3">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5224" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMo"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMo">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path5799" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendO"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendO">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5802" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondM1"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondM1">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path6393" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendV"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendV">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6396" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMN"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMN"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path7813"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LstartP"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LstartP">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path7816" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMb"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMb"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path9491"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendX"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendX">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path9494" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareM8"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareM8"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path10143"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendT"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendT">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path10146" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMNT"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMNT"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path12195"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LstartPJ"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LstartPJ">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(0.8,0,0,0.8,10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path12198" />
-    </marker>
-    <marker
-       inkscape:stockid="SquareMNTL"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="SquareMNTL"
-       style="overflow:visible">
-      <path
-         inkscape:connector-curvature="0"
-         id="path12907"
-         d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="scale(0.4,0.4)" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Lendx"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Lendx">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path12910" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="DiamondMoY"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="DiamondMoY">
-      <path
-         inkscape:connector-curvature="0"
-         transform="scale(0.4,0.4)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z"
-         id="path13187" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1LendOe"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1LendOe">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.8,0,0,-0.8,-10,0)"
-         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path13190" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt"
-       style="overflow:visible">
-      <path
-         id="path4692"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt-8"
-       style="overflow:visible">
-      <path
-         id="path4692-6"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       inkscape:stockid="EmptyTriangleOutLt"
-       orient="auto"
-       refY="0"
-       refX="0"
-       id="EmptyTriangleOutLt-3"
-       style="overflow:visible">
-      <path
-         id="path4692-7"
-         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         transform="matrix(0.8,0,0,0.8,-4.8,0)"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1MendK"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1MendK">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5820"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mendw"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mendw">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6591"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6594"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6-6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6594-3"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-8"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-5" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-3"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-1"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         inkscape:connector-curvature="0"
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-1" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-33"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-55"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-39"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-559"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-88"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-57"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6-9"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6594-5"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1MendK-6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1MendK">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path5820-7"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-4"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-3"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-6"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-06"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-5"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-58"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-16"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-6"
-         inkscape:connector-curvature="0" />
-    </marker>
-    <marker
-       style="overflow:visible"
-       id="Arrow1Mend6z-45"
-       refX="0"
-       refY="0"
-       orient="auto"
-       inkscape:stockid="Arrow1Mend6z">
-      <path
-         transform="matrix(-0.4,0,0,-0.4,-4,0)"
-         style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
-         id="path6949-9"
-         inkscape:connector-curvature="0" />
-    </marker>
-  </defs>
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     transform="translate(-37.27414,-390.37897)"
-     id="layer1"
-     inkscape:groupmode="layer"
-     inkscape:label="Layer 1">
-    <rect
-       y="417.87314"
-       x="349.56961"
-       height="199.09865"
-       width="75.529861"
-       id="rect6832-8-7"
-       style="fill:#f2f2f2;stroke:none" />
-    <rect
-       y="418.67703"
-       x="220.14207"
-       height="198.29477"
-       width="60.255787"
-       id="rect6832-8"
-       style="fill:#f2f2f2;stroke:none" />
-    <rect
-       y="542.20227"
-       x="470.04712"
-       height="219.77136"
-       width="59.100609"
-       id="view50-5"
-       style="fill:#f2f2f2;stroke:none" />
-    <rect
-       transform="translate(0,502.36221)"
-       y="40"
-       x="125"
-       height="220"
-       width="90"
-       id="rect6832"
-       style="fill:#f2f2f2;stroke:none" />
-    <text
-       transform="translate(0,308.2677)"
-       sodipodi:linespacing="125%"
-       id="text3004"
-       y="81.43441"
-       x="97.984795"
-       style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="81.43441"
-         x="97.984795"
-         id="tspan3006"
-         sodipodi:role="line" /></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="51.716835"
-       y="590.13226"
-       id="text4576"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan4578"
-         x="51.716835"
-         y="590.13226">Database</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="57.058464"
-       y="728.79333"
-       id="text4584"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         x="57.058464"
-         y="728.79333"
-         id="tspan4588">Client 1</tspan></text>
-    <g
-       id="g4179"
-       transform="translate(1,19.000027)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(116,159.00003)"
-       id="g4179-8">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(1,159.00006)"
-       id="g4179-51">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-1"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-25"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-31"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-8"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-8"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       transform="translate(338.00974,158.19616)"
-       id="g4179-8-6">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-7-8"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-5-3"
-           sodipodi:role="line">Sid</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-4-2"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-71-7"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-1-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-60-8"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="434.38489"
-       y="695.90057"
-       id="text3223"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3225"
-         x="434.38489"
-         y="695.90057">not</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="428.35568"
-       y="711.52783"
-       id="text3227"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3229"
-         x="428.35568"
-         y="711.52783">equal</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1MendK)"
-       d="m 458.72716,693.6655 21.97929,-5.67601"
-       id="path3231"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6)"
-       d="m 463.50182,711.70447 15.59684,18.87333"
-       id="path3231-0"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 165,717.36221 90,0"
-       id="path3231-0-2"
-       inkscape:connector-curvature="0" />
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="220"
-       y="732.36218"
-       id="text7197"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan7199"
-         x="220"
-         y="732.36218">edit</tspan></text>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 45,135 440.8587,-0.40195"
-       id="path7201"
-       inkscape:connector-curvature="0"
-       transform="translate(0,502.36221)"
-       sodipodi:nodetypes="cc" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 490,598.34272 0,64.01949"
-       id="path3231-0-2-0"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 155,602.36221 0,105"
-       id="path3231-0-2-6"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g7293"
-       transform="translate(-104,-119.99997)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <g
-       id="g7293-1"
-       transform="translate(246,-159.99997)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257-0"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259-6"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261-0"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263-7"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265-8"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267-0"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269-7"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271-3"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="540.64636"
-       y="763.52502"
-       id="text7375"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan7377"
-         x="540.64636"
-         y="763.52502">Time</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#DiamondMend);marker-end:url(#Arrow1Lend)"
-       d="m 119.60006,773.96791 448.14069,-0.99788"
-       id="path7379"
-       inkscape:connector-curvature="0" />
-    <g
-       transform="translate(368.98903,-340.85261)"
-       id="group30">
-      <rect
-         y="764.0553"
-         x="-142.33704"
-         height="187.11328"
-         width="197.42996"
-         id="view30"
-         style="fill:none;stroke:#0000ff;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none">
-        <title
-           id="title4592">Client side change</title>
-      </rect>
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="-140.96068"
-         y="944.93225"
-         id="text8123"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8125"
-           x="-140.96068"
-           y="944.93225">30</tspan></text>
-    </g>
-    <g
-       id="g4179-9"
-       transform="translate(100.20207,19.313639)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-54"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-7"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-9"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-5"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-56"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-3"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       id="g4179-92"
-       transform="translate(256.14621,15.21178)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-60"
-         y="564.81512"
-         x="141.5784"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="564.81512"
-           x="141.5784"
-           id="tspan4598-72"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-2"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-9"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-10"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-603"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="46.346935"
-       y="436.62521"
-       id="text4584-8"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         x="46.346935"
-         y="436.62521"
-         id="tspan4588-5">Client 2</tspan></text>
-    <g
-       transform="translate(8.0389767,42.606576)"
-       id="g9512">
-      <g
-         transform="translate(91.788679,-161.47396)"
-         id="g4179-9-6">
-        <text
-           xml:space="preserve"
-           style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-           x="144"
-           y="563.36218"
-           id="text4596-54-5"
-           sodipodi:linespacing="125%"><tspan
-             sodipodi:role="line"
-             id="tspan4598-7-8"
-             x="144"
-             y="563.36218">Jim</tspan></text>
-        <text
-           xml:space="preserve"
-           style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-           x="145"
-           y="579.36218"
-           id="text4600-9-6"
-           sodipodi:linespacing="125%"><tspan
-             sodipodi:role="line"
-             id="tspan4602-5-2"
-             x="145"
-             y="579.36218">37</tspan></text>
-        <rect
-           style="fill:none;stroke:#000000"
-           id="rect4175-56-7"
-           width="25"
-           height="30"
-           x="140"
-           y="50"
-           transform="translate(0,502.36221)" />
-        <path
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-           d="m 140,65 25,0 0,0"
-           id="path4177-3-3"
-           inkscape:connector-curvature="0"
-           transform="translate(0,502.36221)" />
-      </g>
-    </g>
-    <g
-       transform="translate(-6.4311811,41.802678)"
-       id="g9480">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-54-6"
-         y="402.79425"
-         x="314.40662"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="402.79425"
-           x="314.40662"
-           id="tspan4598-7-2"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-9-3"
-         y="418.04306"
-         x="318.28616"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="418.04306"
-           x="318.28616"
-           id="tspan4602-5-4"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         y="391.04309"
-         x="313.28616"
-         height="30"
-         width="25"
-         id="rect4175-56-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         inkscape:connector-curvature="0"
-         id="path4177-3-7"
-         d="m 313.28617,406.0431 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 252.81184,570.77087 0.76737,-104.10474"
-       id="path3231-0-2-20"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g7293-7"
-       transform="translate(-7.2565342,-287.73251)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257-3"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259-3"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261-9"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263-1"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265-4"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267-2"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269-9"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271-1"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="270.72177"
-       y="445.92776"
-       id="text7197-1"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan7199-7"
-         x="270.72177"
-         y="445.92776">edit</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 265.1876,448.28729 39.35444,0"
-       id="path3231-0-2-8"
-       inkscape:connector-curvature="0" />
-    <g
-       transform="translate(44.264561,41.842249)"
-       id="g9480-3">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-54-6-7"
-         y="402.79425"
-         x="314.40662"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="402.79425"
-           x="314.40662"
-           id="tspan4598-7-2-3"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-9-3-9"
-         y="418.04306"
-         x="318.28616"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="418.04306"
-           x="318.28616"
-           id="tspan4602-5-4-1"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         y="391.04309"
-         x="313.28616"
-         height="30"
-         width="25"
-         id="rect4175-56-0-3"
-         style="fill:none;stroke:#000000" />
-      <path
-         inkscape:connector-curvature="0"
-         id="path4177-3-7-8"
-         d="m 313.28617,406.0431 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       id="g4179-9-68"
-       transform="translate(218.35463,15.577937)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-54-3"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-7-1"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-9-0"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-5-5"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-56-8"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-3-5"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       id="g4179-9-68-9"
-       transform="translate(217.95269,-77.272243)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-54-3-9"
-         y="563.36218"
-         x="144"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="563.36218"
-           x="144"
-           id="tspan4598-7-1-8"
-           sodipodi:role="line">Jim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-9-0-5"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-5-5-1"
-           sodipodi:role="line">37</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-56-8-7"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-3-5-6"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       id="g7293-1-0"
-       transform="translate(111.31837,-251.55711)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7257-0-0"
-         y="777.36218"
-         x="250"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="250"
-           id="tspan7259-6-5"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7261-0-5"
-         y="787.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="249"
-           id="tspan7263-7-0"
-           sodipodi:role="line">e</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7265-8-2"
-         y="797.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="797.36218"
-           x="249"
-           id="tspan7267-0-3"
-           sodipodi:role="line">a</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7269-7-1"
-         y="811.36218"
-         x="249"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="249"
-           id="tspan7271-3-0"
-           sodipodi:role="line">d</tspan></text>
-    </g>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 371.73925,567.8398 -0.0365,-61.09622"
-       id="path3231-0-2-20-0"
-       inkscape:connector-curvature="0" />
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="304.20624"
-       y="482.57654"
-       id="text3223-9"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3225-0"
-         x="304.20624"
-         y="482.57654">still</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="299.38284"
-       y="494.98822"
-       id="text3227-0"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan3229-6"
-         x="299.38284"
-         y="494.98822">equal</tspan></text>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1MendK)"
-       d="M 336.58747,479.13567 360.57651,460.5973"
-       id="path3231-05"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6)"
-       d="m 336.53875,491.54736 25.24361,6.01096"
-       id="path3231-0-5"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g4179-92-0"
-       transform="translate(255.33392,-119.07492)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-60-4"
-         y="564.81512"
-         x="141.5784"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="564.81512"
-           x="141.5784"
-           id="tspan4598-72-0"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-2-1"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-9-3"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-10-8"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-603-3"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 409.84366,464.14583 0.40195,101.78441"
-       id="path3231-0-2-6-1"
-       inkscape:connector-curvature="0" />
-    <g
-       id="g7303-6"
-       transform="translate(107.76957,-300.04669)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text7273-5"
-         y="777.36218"
-         x="304"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="777.36218"
-           x="304"
-           id="tspan7275-4"
-           sodipodi:role="line">w</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7277-7"
-         y="787.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="787.36218"
-           x="307"
-           id="tspan7279-8"
-           sodipodi:role="line">r</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7281-2"
-         y="800.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="800.36218"
-           x="307"
-           id="tspan7283-5"
-           sodipodi:role="line">i</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7285-3"
-         y="811.36218"
-         x="307"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="811.36218"
-           x="307"
-           id="tspan7287-0"
-           sodipodi:role="line">t</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text7289-7"
-         y="821.36218"
-         x="306"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="821.36218"
-           x="306"
-           id="tspan7291-4"
-           sodipodi:role="line">e</tspan></text>
-    </g>
-    <g
-       id="g4179-92-6"
-       transform="translate(337.73342,15.577937)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-60-2"
-         y="564.81512"
-         x="141.5784"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="564.81512"
-           x="141.5784"
-           id="tspan4598-72-8"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-2-6"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-9-2"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-10-5"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-603-6"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <g
-       id="g4179-92-6-9"
-       transform="translate(337.73343,111.64371)">
-      <text
-         sodipodi:linespacing="125%"
-         id="text4596-60-2-0"
-         y="564.81512"
-         x="141.5784"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="564.81512"
-           x="141.5784"
-           id="tspan4598-72-8-6"
-           sodipodi:role="line">Kim</tspan></text>
-      <text
-         sodipodi:linespacing="125%"
-         id="text4600-2-6-5"
-         y="579.36218"
-         x="145"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans"
-         xml:space="preserve"><tspan
-           y="579.36218"
-           x="145"
-           id="tspan4602-9-2-3"
-           sodipodi:role="line">38</tspan></text>
-      <rect
-         transform="translate(0,502.36221)"
-         y="50"
-         x="140"
-         height="30"
-         width="25"
-         id="rect4175-10-5-0"
-         style="fill:none;stroke:#000000" />
-      <path
-         transform="translate(0,502.36221)"
-         inkscape:connector-curvature="0"
-         id="path4177-603-6-1"
-         d="m 140,65 25,0 0,0"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
-    <text
-       sodipodi:linespacing="125%"
-       id="text10060"
-       y="554.27484"
-       x="475.19913"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="554.27484"
-         x="475.19913"
-         id="tspan10062"
-         sodipodi:role="line">Rollback</tspan></text>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 45.11468,532.49558 310.62728,-0.40195"
-       id="path7201-1"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="cc" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 375.11467,532.09362 32.4787,-0.40195"
-       id="path7201-5"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="cc" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 414.50565,532.09362 149.44581,0"
-       id="path7201-5-7"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="cc" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0"
-       d="m 505.54706,636.80129 61.01707,0"
-       id="path7201-5-7-5"
-       inkscape:connector-curvature="0"
-       sodipodi:nodetypes="cc" />
-    <g
-       transform="translate(-358.53836,-298.24603)"
-       id="group10">
-      <rect
-         ry="0"
-         y="688.97858"
-         x="396.16928"
-         height="418.05881"
-         width="535.38202"
-         id="view10"
-         style="fill:none;stroke:#0000ff;stroke-width:0.70866144;stroke-miterlimit:4;stroke-dasharray:none" />
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="908.26019"
-         y="734.47485"
-         id="text10132"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan10134"
-           x="908.26019"
-           y="734.47485">10</tspan></text>
-    </g>
-    <g
-       transform="translate(495.67035,-201.51711)"
-       id="group40">
-      <rect
-         ry="0"
-         y="760.83972"
-         x="-147.96432"
-         height="189.52496"
-         width="219.9391"
-         id="view30-3"
-         style="fill:none;stroke:#0000ff;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none">
-        <title
-           id="title4592-2">Client side change</title>
-      </rect>
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="-140.96068"
-         y="944.93225"
-         id="text8123-2"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan8125-2"
-           x="-140.96068"
-           y="944.93225">40</tspan></text>
-    </g>
-    <g
-       id="group20"
-       transform="translate(2.3062254,4.9968216)">
-      <rect
-         style="fill:none;stroke:#0000ff;stroke-width:1.0629921;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"
-         id="rect15119"
-         width="233.31313"
-         height="209.09776"
-         x="49.192089"
-         y="562.08331" />
-      <text
-         xml:space="preserve"
-         style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#0000ff;fill-opacity:1;stroke:none;font-family:Sans"
-         x="55.342022"
-         y="765.41553"
-         id="text15121"
-         sodipodi:linespacing="125%"><tspan
-           sodipodi:role="line"
-           id="tspan15123"
-           x="55.342022"
-           y="765.41553">20</tspan></text>
-    </g>
-    <text
-       sodipodi:linespacing="125%"
-       id="text3922"
-       y="409.10367"
-       x="271.74283"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="409.10367"
-         x="271.74283"
-         id="tspan3924"
-         sodipodi:role="line">Long transaction</tspan></text>
-    <path
-       transform="translate(37.27659,416.00309)"
-       inkscape:connector-curvature="0"
-       id="path3926"
-       d="M 183.18731,-24.142754 182.91552,5.4824942"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    <path
-       inkscape:connector-curvature="0"
-       id="path3926-7"
-       d="m 426.07399,392.53982 -0.27179,29.62525"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 275.95029,798.17759 -149.01838,-0.0137"
-       id="path3231-0-2-20-0-5"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 415.6607,798.50858 113.48769,-0.31162"
-       id="path3231-0-2-20-0-8"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 384.93054,404.84493 39.91682,0.0568"
-       id="path3231-0-2-20-0-3"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)"
-       d="m 268.87567,404.57314 -46.51281,-0.21498"
-       id="path3231-0-2-20-0-9"
-       inkscape:connector-curvature="0" />
-    <path
-       sodipodi:nodetypes="cc"
-       inkscape:connector-curvature="0"
-       id="path3926-3"
-       d="m 124.68365,762.58463 0.65419,44.94976"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    <path
-       sodipodi:nodetypes="cc"
-       inkscape:connector-curvature="0"
-       id="path3926-39"
-       d="m 530.23246,762.37525 0.0262,45.64194"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    <text
-       sodipodi:linespacing="125%"
-       id="text3922-7"
-       y="800.83777"
-       x="295.25751"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       xml:space="preserve"><tspan
-         y="800.83777"
-         x="295.25751"
-         id="tspan3924-5"
-         sodipodi:role="line">Long transaction</tspan></text>
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
-       x="374.57156"
-       y="613.15881"
-       id="text6011"
-       sodipodi:linespacing="125%"><tspan
-         sodipodi:role="line"
-         id="tspan6013"
-         x="374.57156"
-         y="613.15881">Commit</tspan></text>
-  </g>
-  <script
-     id="sozi-script"
-     ns1:version="14.10-05142318">function namespace(b,d,a){var c=b;d.split(&quot;.&quot;).forEach(function(e){if(typeof c[e]===&quot;undefined&quot;){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,&quot;sozi.events&quot;,function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,&quot;sozi.proto&quot;,function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,&quot;sozi.actions&quot;,function(A,g){var u=namespace(g,&quot;sozi.player&quot;);var v=namespace(g,&quot;sozi.display&quot;);var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C&gt;0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B&gt;0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener(&quot;mousemove&quot;,q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&amp;&amp;(Math.abs(B.clientX-i)&gt;m||Math.abs(B.clientY-h)&gt;m)){r=true}if(r){sozi.events.fire(&quot;sozi.player.cleanup&quot;);v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener(&quot;mousemove&quot;,q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&amp;&amp;B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName(&quot;a&quot;);for(var D=0;D&lt;C.length;D+=1){C[D].addEventListener(&quot;click&quot;,z,false);C[D].addEventListener(&quot;contextmenu&quot;,z,false)}var B=n.documentElement;B.addEventListener(&quot;click&quot;,e,false);B.addEventListener(&quot;mousedown&quot;,f,false);B.addEventListener(&quot;mouseup&quot;,c,false);B.addEventListener(&quot;contextmenu&quot;,p,false);B.addEventListener(&quot;DOMMouseScroll&quot;,j,false);g.onmousewheel=j;B.addEventListener(&quot;keypress&quot;,l,false);B.addEventListener(&quot;keydown&quot;,b,false)}sozi.events.listen(&quot;sozi.display.ready&quot;,k)});namespace(this,&quot;sozi.animation&quot;,function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&amp;&amp;g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length&gt;0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l&gt;=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},&quot;strong-accelerate&quot;:function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},&quot;strong-decelerate&quot;:function(l){return 1-Math.pow(1-l,5)},&quot;accelerate-decelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l&lt;=0.5?n:1-n},&quot;strong-accelerate-decelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l&lt;=0.5?n:1-n},&quot;decelerate-accelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l&lt;=0.5?n:1-n},&quot;strong-decelerate-accelerate&quot;:function(l){var m=l&lt;=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l&lt;=0.5?n:1-n},&quot;immediate-beginning&quot;:function(l){return 1},&quot;immediate-end&quot;:function(l){return l===1?1:0},&quot;immediate-middle&quot;:function(l){return l&gt;=0.5?1:0}}});namespace(this,&quot;sozi.display&quot;,function(c,g){var f=&quot;http://www.w3.org/2000/svg&quot;;var b=&quot;http://www.w3.org/1999/xlink&quot;;var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName===&quot;rect&quot;){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:[&quot;width&quot;,&quot;height&quot;,&quot;angle&quot;],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q&lt;this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&amp;&amp;l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,&quot;rect&quot;);var m=i.createElementNS(f,&quot;clipPath&quot;);m.setAttribute(&quot;id&quot;,&quot;sozi-clip-path-&quot;+n.id+&quot;-&quot;+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,&quot;g&quot;);l.setAttribute(&quot;clip-path&quot;,&quot;url(#sozi-clip-path-&quot;+n.id+&quot;-&quot;+o+&quot;)&quot;);n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,&quot;g&quot;);this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,&quot;use&quot;);this.svgLayer.setAttributeNS(b,&quot;href&quot;,&quot;#&quot;+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute(&quot;x&quot;,this.clipped?l:0);this.svgClipRect.setAttribute(&quot;y&quot;,this.clipped?r:0);this.svgClipRect.setAttribute(&quot;width&quot;,this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute(&quot;height&quot;,this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute(&quot;transform&quot;,&quot;scale(&quot;+q+&quot;)translate(&quot;+p+&quot;,&quot;+o+&quot;)rotate(&quot;+(-this.angle)+&quot;,&quot;+this.cx+&quot;,&quot;+this.cy+&quot;)&quot;);return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw&quot;Failed to create a primary viewport. A primary viewport already exists.&quot;}else{e=this}}this.svgGroup=i.createElementNS(f,&quot;g&quot;);this.svgGroup.setAttribute(&quot;class&quot;,&quot;sozi-viewport&quot;);this.svgGroup.setAttribute(&quot;id&quot;,&quot;sozi-viewport-&quot;+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l&gt;=this.x&amp;&amp;l&lt;this.x+this.width&amp;&amp;m&gt;=this.y&amp;&amp;m&lt;this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+this.x+&quot;,&quot;+this.y+&quot;)&quot;);for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute(&quot;width&quot;,h);l.setAttribute(&quot;height&quot;,j);sozi.events.fire(&quot;sozi.display.ready&quot;)}function a(){var l=i.documentElement;l.setAttribute(&quot;width&quot;,g.innerWidth);l.setAttribute(&quot;height&quot;,g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen(&quot;sozi.document.ready&quot;,d);g.addEventListener(&quot;resize&quot;,a,false)});namespace(this,&quot;sozi.document&quot;,function(c,e){var g=e.document;var b=&quot;http://sozi.baierouge.fr&quot;;var d={title:&quot;Untitled&quot;,sequence:&quot;0&quot;,hide:&quot;true&quot;,clip:&quot;true&quot;,&quot;show-in-frame-list&quot;:&quot;true&quot;,&quot;timeout-enable&quot;:&quot;false&quot;,&quot;timeout-ms&quot;:&quot;5000&quot;,&quot;transition-duration-ms&quot;:&quot;1000&quot;,&quot;transition-zoom-percent&quot;:&quot;0&quot;,&quot;transition-profile&quot;:&quot;linear&quot;,&quot;transition-path-hide&quot;:&quot;true&quot;};var h=[&quot;g&quot;,&quot;image&quot;,&quot;path&quot;,&quot;rect&quot;,&quot;circle&quot;,&quot;ellipse&quot;,&quot;line&quot;,&quot;polyline&quot;,&quot;polygon&quot;,&quot;text&quot;,&quot;clippath&quot;];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-zoom-percent&quot;)){l.setTransitionZoomPercent(parseInt(j(k,&quot;transition-zoom-percent&quot;),10))}if(typeof l.transitionProfile===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-profile&quot;)){l.setTransitionProfile(sozi.animation.profiles[j(k,&quot;transition-profile&quot;)])}if(typeof l.transitionPath===&quot;undefined&quot;||k.hasAttributeNS(b,&quot;transition-path&quot;)){var n=g.getElementById(k.getAttributeNS(b,&quot;transition-path&quot;));if(n&amp;&amp;n.nodeName===&quot;path&quot;){l.setTransitionPath(n);if(j(k,&quot;transition-path-hide&quot;)===&quot;true&quot;){n.style.visibility=&quot;hidden&quot;}}}if(k.hasAttributeNS(b,&quot;refid&quot;)){var m=g.getElementById(k.getAttributeNS(b,&quot;refid&quot;));if(m){l.setAtElement(m);if(j(k,&quot;hide&quot;)===&quot;true&quot;){m.style.visibility=&quot;hidden&quot;}}}if(k.hasAttributeNS(b,&quot;clip&quot;)){l.setClipped(j(k,&quot;clip&quot;)===&quot;true&quot;)}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,&quot;layer&quot;);for(var n=0;n&lt;p.length;n+=1){var s=p[n].getAttributeNS(b,&quot;group&quot;);if(s&amp;&amp;l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o=&quot;http://www.w3.org/2000/svg&quot;;var q=g.createElementNS(o,&quot;g&quot;);var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute(&quot;id&quot;))!==-1){if(q.firstChild){q.setAttribute(&quot;id&quot;,&quot;sozi-wrapper-&quot;+t);c.idLayerList.push(&quot;sozi-wrapper-&quot;+t);r.insertBefore(q,u);q=g.createElementNS(o,&quot;g&quot;)}c.idLayerList.push(u.getAttribute(&quot;id&quot;))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute(&quot;id&quot;,&quot;sozi-wrapper-&quot;+k.length);c.idLayerList.push(&quot;sozi-wrapper-&quot;+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,&quot;frame&quot;));m.sort(function(u,t){var w=parseInt(j(u,&quot;sequence&quot;),10);var v=parseInt(j(t,&quot;sequence&quot;),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute(&quot;id&quot;),title:j(v,&quot;title&quot;),showInFrameList:j(v,&quot;show-in-frame-list&quot;)===&quot;true&quot;,sequence:parseInt(j(v,&quot;sequence&quot;),10),timeoutEnable:j(v,&quot;timeout-enable&quot;)===&quot;true&quot;,timeoutMs:parseInt(j(v,&quot;timeout-ms&quot;),10),transitionDurationMs:parseInt(j(v,&quot;transition-duration-ms&quot;),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search(&quot;sozi-wrapper-[0-9]+&quot;)!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,&quot;layer&quot;));t.forEach(function(y){var z=y.getAttributeNS(b,&quot;group&quot;);if(z&amp;&amp;c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k&lt;c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute(&quot;viewBox&quot;);a();sozi.events.fire(&quot;sozi.document.ready&quot;)}e.addEventListener(&quot;load&quot;,f,false)});namespace(this,&quot;sozi.framelist&quot;,function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f=&quot;decelerate&quot;;var a=&quot;http://www.w3.org/2000/svg&quot;;function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&amp;&amp;x!==i&amp;&amp;x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x&lt;=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x&lt;0){x=0}}p.setAttribute(&quot;transform&quot;,&quot;translate(0,&quot;+x+&quot;)&quot;);y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j&gt;=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j&gt;k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute(&quot;transform&quot;,&quot;translate(0,&quot;+x+&quot;)&quot;);y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,&quot;g&quot;);i.setAttribute(&quot;id&quot;,&quot;sozi-toc&quot;);o.documentElement.appendChild(i);p=o.createElementNS(a,&quot;g&quot;);i.appendChild(p);var y=o.createElementNS(a,&quot;rect&quot;);y.setAttribute(&quot;id&quot;,&quot;sozi-toc-background&quot;);y.setAttribute(&quot;x&quot;,c);y.setAttribute(&quot;y&quot;,c);y.setAttribute(&quot;rx&quot;,c);y.setAttribute(&quot;ry&quot;,c);y.addEventListener(&quot;click&quot;,l,false);y.addEventListener(&quot;mousedown&quot;,l,false);y.addEventListener(&quot;mouseout&quot;,n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,&quot;text&quot;);C.appendChild(o.createTextNode(D.title));C.setAttribute(&quot;id&quot;,&quot;sozi-toc-&quot;+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute(&quot;class&quot;,&quot;sozi-toc-current&quot;)}var B=C.getBBox().width;j+=C.getBBox().height;if(B&gt;A){A=B}C.setAttribute(&quot;x&quot;,2*c);C.setAttribute(&quot;y&quot;,j+c);C.addEventListener(&quot;click&quot;,g(E),false);C.addEventListener(&quot;mousedown&quot;,l,false)}});var x=o.createElementNS(a,&quot;path&quot;);x.setAttribute(&quot;class&quot;,&quot;sozi-toc-arrow&quot;);x.setAttribute(&quot;d&quot;,&quot;M&quot;+(A+3*c)+&quot;,&quot;+(5*c)+&quot; l&quot;+(4*c)+&quot;,0 l-&quot;+(2*c)+&quot;,-&quot;+(3*c)+&quot; z&quot;);x.addEventListener(&quot;click&quot;,r,false);x.addEventListener(&quot;mousedown&quot;,l,false);i.appendChild(x);var z=o.createElementNS(a,&quot;path&quot;);z.setAttribute(&quot;class&quot;,&quot;sozi-toc-arrow&quot;);z.setAttribute(&quot;d&quot;,&quot;M&quot;+(A+3*c)+&quot;,&quot;+(7*c)+&quot; l&quot;+(4*c)+&quot;,0 l-&quot;+(2*c)+&quot;,&quot;+(3*c)+&quot; z&quot;);z.addEventListener(&quot;click&quot;,d,false);z.addEventListener(&quot;mousedown&quot;,l,false);i.appendChild(z);y.setAttribute(&quot;width&quot;,A+7*c);y.setAttribute(&quot;height&quot;,j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+h+&quot;,0)&quot;);t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+w+&quot;,0)&quot;)}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName(&quot;sozi-toc-current&quot;));y.forEach(function(A){A.removeAttribute(&quot;class&quot;)});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById(&quot;sozi-toc-&quot;+z.id).setAttribute(&quot;class&quot;,&quot;sozi-toc-current&quot;)}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen(&quot;sozi.player.ready&quot;,q);sozi.events.listen(&quot;sozi.player.cleanup&quot;,u.hide);sozi.events.listen(&quot;sozi.player.framechange&quot;,m)});namespace(this,&quot;sozi.framenumber&quot;,function(a,d){var g=d.document;var e;var k,i;var f;var b=&quot;http://www.w3.org/2000/svg&quot;;function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute(&quot;r&quot;,n);e.setAttribute(&quot;transform&quot;,&quot;translate(&quot;+l+&quot;,&quot;+l+&quot;)&quot;)}function c(){e=g.createElementNS(b,&quot;g&quot;);k=g.createElementNS(b,&quot;text&quot;);f=g.createElementNS(b,&quot;circle&quot;);e.setAttribute(&quot;id&quot;,&quot;sozi-framenumber&quot;);f.setAttribute(&quot;cx&quot;,0);f.setAttribute(&quot;cy&quot;,0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute(&quot;text-anchor&quot;,&quot;middle&quot;);k.setAttribute(&quot;dominant-baseline&quot;,&quot;central&quot;);k.setAttribute(&quot;x&quot;,0);k.setAttribute(&quot;y&quot;,0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen(&quot;sozi.player.ready&quot;,c);sozi.events.listen(&quot;sozi.player.framechange&quot;,j)});namespace(this,&quot;sozi.links&quot;,function(c,e){var b=&quot;http://www.w3.org/2000/svg&quot;;var a=&quot;http://www.w3.org/1999/xlink&quot;;function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,&quot;a&quot;);for(var j=0;j&lt;h.length;j+=1){var g=h[j].getAttributeNS(a,&quot;href&quot;);if(g&amp;&amp;g[0]===&quot;#&quot;){h[j].addEventListener(&quot;click&quot;,f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen(&quot;sozi.document.ready&quot;,d)});namespace(this,&quot;sozi.location&quot;,function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):&quot;1&quot;;var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f&lt;0){return 0}else{if(f&gt;=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash=&quot;#&quot;+sozi.document.frames[f].id}d.addEventListener(&quot;hashchange&quot;,e,false);sozi.events.listen(&quot;sozi.player.framechange&quot;,c)});namespace(this,&quot;sozi.player&quot;,function(d,g){var l;var c;var i;var e=500;var n=-10;var j=&quot;linear&quot;;var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o&lt;0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x&gt;0&amp;&amp;x&lt;=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire(&quot;sozi.player.cleanup&quot;);f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire(&quot;sozi.player.framechange&quot;,o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle&gt;180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle&lt;-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&amp;&amp;q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire(&quot;sozi.player.framechange&quot;,o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire(&quot;sozi.player.cleanup&quot;);k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire(&quot;sozi.player.framechange&quot;,r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f&lt;=d.currentFrameIndex){o-=1}if(o&gt;=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o&gt;=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f&gt;=d.currentFrameIndex){o+=1}if(o&lt;sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex&lt;sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire(&quot;sozi.player.cleanup&quot;);c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance(&quot;player&quot;,sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire(&quot;sozi.player.ready&quot;)}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&amp;&amp;q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&amp;&amp;q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen(&quot;sozi.display.ready&quot;,a)});</script>
-  <style
-     id="sozi-style"
-     ns1:version="14.10-05142318">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style>
-  <script
-     id="sozi-extras-media-script"
-     ns1:version="14.10-05142318">this.addEventListener(&quot;load&quot;,function(){var h=&quot;http://www.w3.org/2000/svg&quot;,l=&quot;http://sozi.baierouge.fr&quot;,s=&quot;http://www.w3.org/1999/xhtml&quot;,m=this,o=m.document,q=[],r,e,d,c,p,a,g,f,b;function n(i){i.stopPropagation()}function t(i,j,k){sozi.events.listen(&quot;sozi.player.framechange&quot;,function(u){var v=sozi.document.frames[u].id;if(v===j){i.play()}else{if(v===k){i.pause()}}})}q.push(o.getElementsByTagNameNS(l,&quot;video&quot;));q.push(o.getElementsByTagNameNS(l,&quot;audio&quot;));r=[];for(c=0;c&lt;q.length;c+=1){for(e=0;e&lt;q[c].length;e+=1){p=q[c][e].parentNode;b=o.createElementNS(s,&quot;source&quot;);b.setAttribute(&quot;type&quot;,q[c][e].getAttributeNS(l,&quot;type&quot;));b.setAttribute(&quot;src&quot;,q[c][e].getAttributeNS(l,&quot;src&quot;));for(d=0;d&lt;r.length;d+=1){if(r[d].rect===p){break}}if(d===r.length){p.setAttribute(&quot;visibility&quot;,&quot;hidden&quot;);f=o.createElementNS(s,q[c][e].localName);f.setAttribute(&quot;controls&quot;,&quot;controls&quot;);if(q[c][e].localName===&quot;video&quot;){f.setAttribute(&quot;width&quot;,p.getAttribute(&quot;width&quot;));f.setAttribute(&quot;height&quot;,p.getAttribute(&quot;height&quot;))}f.addEventListener(&quot;click&quot;,n,false);f.addEventListener(&quot;contextmenu&quot;,n,false);g=o.createElementNS(s,&quot;html&quot;);g.appendChild(f);a=o.createElementNS(h,&quot;foreignObject&quot;);a.setAttribute(&quot;x&quot;,p.getAttribute(&quot;x&quot;));a.setAttribute(&quot;y&quot;,p.getAttribute(&quot;y&quot;));a.setAttribute(&quot;width&quot;,p.getAttribute(&quot;width&quot;));a.setAttribute(&quot;height&quot;,p.getAttribute(&quot;height&quot;));a.appendChild(g);p.parentNode.insertBefore(a,p.nextSibling);if(q[c][e].hasAttributeNS(l,&quot;start-frame&quot;)){t(f,q[c][e].getAttributeNS(l,&quot;start-frame&quot;),q[c][e].getAttributeNS(l,&quot;stop-frame&quot;))}r.push({rect:q[c][e].parentNode,htmlMedia:f})}r[d].htmlMedia.appendChild(b)}}},false);</script>
-  <ns1:frame
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="1"
-     ns1:title="Overview 1"
-     ns1:refid="group10" />
-  <ns1:frame
-     ns1:refid="group20"
-     ns1:title="Client 1 read"
-     ns1:sequence="2"
-     ns1:hide="true"
-     ns1:clip="true"
-     ns1:show-in-frame-list="true"
-     ns1:timeout-enable="false"
-     ns1:timeout-ms="5000.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-profile="linear"
-     ns1:transition-path-hide="true" />
-  <ns1:frame
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="3"
-     ns1:title="Modify Client 2"
-     ns1:refid="group30" />
-  <ns1:frame
-     ns1:refid="group40"
-     ns1:title="Re-read Client 1 and rollback"
-     ns1:sequence="4"
-     ns1:hide="true"
-     ns1:clip="true"
-     ns1:show-in-frame-list="true"
-     ns1:timeout-enable="false"
-     ns1:timeout-ms="5000.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-profile="linear"
-     ns1:transition-path-hide="true" />
-  <ns1:frame
-     ns1:transition-path-hide="true"
-     ns1:transition-profile="linear"
-     ns1:transition-zoom-percent="0.0"
-     ns1:transition-duration-ms="1000.0"
-     ns1:timeout-ms="5000.0"
-     ns1:timeout-enable="false"
-     ns1:show-in-frame-list="true"
-     ns1:clip="true"
-     ns1:hide="true"
-     ns1:sequence="5"
-     ns1:title="Overview 2"
-     ns1:refid="group10" />
-</svg>
diff --git a/Doc/DbDevel/Ref/Screen/accountTransferSum.png b/Doc/DbDevel/Ref/Screen/accountTransferSum.png
deleted file mode 100644
index d38f3427bbeb8a7e1025f17ff82eef3cbf042276..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 30650
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
JD#eY1{{!|vD763p

diff --git a/Doc/DbDevel/dbDevel.xml b/Doc/DbDevel/dbDevel.xml
index c96074f43..a7086aa40 100644
--- a/Doc/DbDevel/dbDevel.xml
+++ b/Doc/DbDevel/dbDevel.xml
@@ -1898,368 +1898,13 @@ exploredb.group index: cname_1 dup key:
     </section>
   </chapter>
 
-  <chapter xml:id="ldap">
+  <chapter xml:id="dbDevel_chap_jdbc">
     <title><link linkend="glo_JDBC">JDBC</link></title>
 
-    <section xml:id="unix2sql2ldap">
-      <title><xref linkend="glo_UNIX"/> to <xref linkend="glo_SQL"/> to <xref
-      linkend="glo_LDAP"/></title>
+    <section xml:id="dbDevel_chap_jdbc_intro">
+      <title>Introduction</title>
 
-      <para><xref linkend="glo_UNIX"/> type operating systems manage users,
-      groups and their respective relationships in three different text
-      files:</para>
-
-      <glosslist>
-        <glossentry>
-          <glossterm><filename>/etc/passwd</filename></glossterm>
-
-          <glossdef>
-            <para>Users being defined on the system:</para>
-
-            <literallayout>root:x:0:0:root:/root:/bin/bash
-daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
-bin:x:2:2:bin:/bin:/usr/sbin/nologin
-sys:x:3:3:sys:/dev:/usr/sbin/nologin
-sync:x:4:65534:sync:/bin:/bin/sync
-...</literallayout>
-
-            <para>We illustrate the meaning of this <xref linkend="glo_CSV"/>
-            (actually **character** separated) by examining the first
-            row:</para>
-
-            <glosslist>
-              <glossentry>
-                <glossterm>Column 1, <code>root</code>:</glossterm>
-
-                <glossdef>
-                  <para>The user's unique system name as being entered at
-                  login.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 2, x<code>:</code></glossterm>
-
-                <glossdef>
-                  <para>This field is not being used on current <xref
-                  linkend="glo_UNIX"/> implementations. Historically either
-                  the user's clear text password or its hash value was present
-                  here. For security reasons this attribute has been moved to
-                  a third file <filename>/etc/shadow</filename> being read
-                  access protected to non-administrator users.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 3, <code>0</code>:</glossterm>
-
-                <glossdef>
-                  <para>The user's unique integer numerical
-                  <parameter>uid</parameter> number value.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 4, <code>0</code>:</glossterm>
-
-                <glossdef>
-                  <para>The user's unique primary group integer numerical
-                  <parameter>gid</parameter> number value. The value
-                  <quote>0</quote> here refers to a group root of identical
-                  name being defined in <filename>/etc/group</filename>, see
-                  next section.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 5, <code>root</code>:</glossterm>
-
-                <glossdef>
-                  <para>The user's common name. For a regular user account
-                  this might be <quote>Jim Beam</quote> for example.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 6, <filename>/root</filename>:</glossterm>
-
-                <glossdef>
-                  <para>The user's home directory. Might be /home/beam for a
-                  user <quote>Jim Beam</quote>.</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 7, <command>/bin/bash</command>:</glossterm>
-
-                <glossdef>
-                  <para>The user's login shell (command interpreter. This
-                  attribute contains a reference to a command interpreter like
-                  <command>/bin/(t)csh</command>, <command>/bin/ksh</command>
-                  and so on.</para>
-                </glossdef>
-              </glossentry>
-            </glosslist>
-          </glossdef>
-        </glossentry>
-
-        <glossentry>
-          <glossterm><filename>/etc/group</filename></glossterm>
-
-          <glossdef>
-            <para>This file contains all groups being defined on the
-            system:</para>
-
-            <literallayout>root:x:0:
-daemon:x:1:
-bin:x:2:
-sys:x:3:
-adm:x:4:syslog,mi <co xml:id="secondaryGroupmembership"/>
-tty:x:5:
-...</literallayout>
-
-            <glosslist>
-              <glossentry>
-                <glossterm>Column1,root:</glossterm>
-
-                <glossdef>
-                  <para>The group's name</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 2, x:</glossterm>
-
-                <glossdef>
-                  <para>Not used</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 3, 4:</glossterm>
-
-                <glossdef>
-                  <para>The group's unique <parameter>gid</parameter>
-                  number</para>
-                </glossdef>
-              </glossentry>
-
-              <glossentry>
-                <glossterm>Column 4, <code>syslog,mi</code>:</glossterm>
-
-                <glossdef>
-                  <para>The set <code>{syslog,mi}</code> <coref
-                  linkend="secondaryGroupmembership"/> defines secondary group
-                  memberships: These two users will belong to the group
-                  <code>adm</code> in addition to their respective primary
-                  group definition.</para>
-                </glossdef>
-              </glossentry>
-            </glosslist>
-          </glossdef>
-        </glossentry>
-      </glosslist>
-
-      <qandaset defaultlabel="qanda" xml:id="qandUnixToSqlToLdap">
-        <title>Exporting and importing data</title>
-
-        <qandadiv>
-          <qandaentry>
-            <question>
-              <para>Write two applications being able to perform the following
-              tasks:</para>
-
-              <orderedlist>
-                <listitem>
-                  <para>Import the previously described UNIX user and group
-                  data ton an RDBMS using <xref linkend="glo_JDBC"/>. You will
-                  have to define a suitable SQL schema first.</para>
-                </listitem>
-
-                <listitem>
-                  <para>Transfer RDBMS data to your local <xref
-                  linkend="glo_LDAP"/> server using <link
-                  xlink:href="https://docs.oracle.com/javase/jndi/tutorial/ldap/misc/url.html">JNDI</link>.</para>
-                </listitem>
-              </orderedlist>
-            </question>
-
-            <answer>
-              <annotation role="make">
-                <para
-                role="eclipse">DbDevel/UnixSqlLdap/Jndi/Unix2Rdbms</para>
-              </annotation>
-
-              <annotation role="make">
-                <para
-                role="eclipse">DbDevel/UnixSqlLdap/Jndi/Rdbms2Ldap</para>
-              </annotation>
-            </answer>
-          </qandaentry>
-        </qandadiv>
-      </qandaset>
-    </section>
-
-    <section xml:id="transactionsInJdbc">
-      <title>Transactions in <xref linkend="glo_JDBC"/></title>
-
-      <para>You may review some remarks on SQL standard isolation level
-      definitions:</para>
-
-      <itemizedlist>
-        <listitem>
-          <para><xref linkend="glo_Javadoc"/>:</para>
-
-          <itemizedlist>
-            <listitem>
-              <para><link
-              xlink:href="https://docs.oracle.com/javase/9/docs/api/java/sql/Connection.html#TRANSACTION_READ_UNCOMMITTED">TRANSACTION_READ_UNCOMMITTED</link></para>
-            </listitem>
-
-            <listitem>
-              <para><link
-              xlink:href="https://docs.oracle.com/javase/9/docs/api/java/sql/Connection.html#TRANSACTION_READ_COMMITTED">TRANSACTION_READ_COMMITTED</link></para>
-            </listitem>
-
-            <listitem>
-              <para><link
-              xlink:href="https://docs.oracle.com/javase/9/docs/api/java/sql/Connection.html#TRANSACTION_REPEATABLE_READ">TRANSACTION_READ_REPEATABLE_READ</link></para>
-            </listitem>
-
-            <listitem>
-              <para><link
-              xlink:href="https://docs.oracle.com/javase/9/docs/api/java/sql/Connection.html#TRANSACTION_SERIALIZABLE">TRANSACTION_READ_SERIALIZABLE</link></para>
-            </listitem>
-          </itemizedlist>
-        </listitem>
-
-        <listitem>
-          <para><link
-          xlink:href="http://www.oracle.com/technetwork/issue-archive/2005/05-nov/o65asktom-082389.html">On
-          Transaction Isolation Levels (Oracle)</link></para>
-        </listitem>
-
-        <listitem>
-          <para><link
-          xlink:href="https://technet.microsoft.com/en-us/library/ms378149">Understanding
-          Isolation Levels (Microsoft)</link></para>
-        </listitem>
-      </itemizedlist>
-
-      <section xml:id="accountTransferPessimistic">
-        <title>Account Transfer using pessimistic concurrency control</title>
-
-        <qandaset defaultlabel="qanda" xml:id="qandaJdbcIsolation">
-          <title>Accounts and balances</title>
-
-          <qandadiv>
-            <qandaentry>
-              <question>
-                <para>Consider the following simple schema of accounts keeping
-                customer balances:</para>
-
-                <programlisting language="sql">CREATE TABLE Account (
-	      number INT NOT NULL PRIMARY KEY
-	      ,balance INT NOT NULL
-	      )</programlisting>
-
-                <para>Write two GUI applications to:</para>
-
-                <itemizedlist>
-                  <listitem>
-                    <para>Transfer amounts from one account to another</para>
-                  </listitem>
-
-                  <listitem>
-                    <para>Get the sum of all balances</para>
-                  </listitem>
-                </itemizedlist>
-
-                <informalfigure>
-                  <mediaobject>
-                    <imageobject>
-                      <imagedata fileref="Ref/Screen/accountTransferSum.png"/>
-                    </imageobject>
-                  </mediaobject>
-                </informalfigure>
-              </question>
-
-              <answer>
-                <annotation role="make">
-                  <para role="eclipse">DbDevel/account</para>
-                </annotation>
-              </answer>
-            </qandaentry>
-          </qandadiv>
-        </qandaset>
-      </section>
-
-      <section xml:id="accountTransferOptimistic">
-        <title>Account Transfer using optimistic concurrency control</title>
-
-        <figure xml:id="fig_optimisticConcurrencyControl">
-          <title>Optimistic concurrency control</title>
-
-          <mediaobject>
-            <imageobject>
-              <imagedata fileref="Ref/Fig/concurrentOptimistic.svg"/>
-            </imageobject>
-          </mediaobject>
-        </figure>
-
-        <para>An interfering transaction obeying the protocol causes a
-        transaction failure:</para>
-
-        <figure xml:id="concurrentObtimisticFail">
-          <title>Failure with optimistic transactions</title>
-
-          <mediaobject>
-            <imageobject>
-              <imagedata fileref="Ref/Fig/concurrentOptimisticFail.svg"/>
-            </imageobject>
-          </mediaobject>
-        </figure>
-
-        <para>Considerations:</para>
-
-        <itemizedlist>
-          <listitem>
-            <para>Race conditions, time of check to time of use</para>
-          </listitem>
-        </itemizedlist>
-
-        <qandaset defaultlabel="qanda" xml:id="qandaTransferOptimistic">
-          <title>Optimistic account transfer</title>
-
-          <qandadiv>
-            <qandaentry>
-              <question>
-                <para>Implement your (pessimistic) account transfer
-                application <xref linkend="qandaJdbcIsolation"/> in an
-                optimistic manner:</para>
-
-                <itemizedlist>
-                  <listitem>
-                    <para>Make sure both source and destination accounts get
-                    protected against interfering transactions.</para>
-                  </listitem>
-
-                  <listitem>
-                    <para>Provide a means to definitely avoid deadlocks during
-                    the second transaction section of a balance transfer
-                    operation.</para>
-                  </listitem>
-
-                  <listitem>
-                    <para>Supply a suitable message in case of an interfering
-                    second balance transfer</para>
-                  </listitem>
-                </itemizedlist>
-              </question>
-            </qandaentry>
-          </qandadiv>
-        </qandaset>
-      </section>
+      <para/>
     </section>
   </chapter>
 
-- 
GitLab