diff --git a/Doc/DbDevel/Ref/Jdbc/heartland.svg b/Doc/DbDevel/Ref/Jdbc/heartland.svg
new file mode 100644
index 0000000000000000000000000000000000000000..2f5bff6646806bb57859c28282a6a4b035c7df9a
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/heartland.svg
@@ -0,0 +1,1328 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="heartland.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="390.82353"
+     inkscape:cy="204.51994"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-5"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-2"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-91"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887-2"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627-7"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797-0"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799-9"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-3"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart-2"
+       style="overflow:visible"><path
+         id="path3841-6"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM-1"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-7"
+       style="overflow:visible"><path
+         id="path3844-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM-2"
+       style="overflow:visible"><path
+         id="path3923-0"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH-2"
+       style="overflow:visible"><path
+         id="path4656-3"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB-7"
+       style="overflow:visible"><path
+         id="path4659-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU-9"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221-2"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3-2"
+       style="overflow:visible"><path
+         id="path5224-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo-9"
+       style="overflow:visible"><path
+         id="path5799-7"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO-3"
+       style="overflow:visible"><path
+         id="path5802-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1-1"
+       style="overflow:visible"><path
+         id="path6393-2"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV-9"
+       style="overflow:visible"><path
+         id="path6396-3"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN-1"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813-9"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP-4"
+       style="overflow:visible"><path
+         id="path7816-7"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb-8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491-4"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX-5"
+       style="overflow:visible"><path
+         id="path9494-0"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8-3"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT-1"
+       style="overflow:visible"><path
+         id="path10146-0"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195-3"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ-2"
+       style="overflow:visible"><path
+         id="path12198-0"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907-1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx-5"
+       style="overflow:visible"><path
+         id="path12910-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY-4"
+       style="overflow:visible"><path
+         id="path13187-7"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe-6"
+       style="overflow:visible"><path
+         id="path13190-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><inkscape:perspective
+       id="perspective6864-3"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16-07"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-86"
+         stdDeviation="1.2625" /></filter><filter
+       id="imagebot_12-8"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-8"
+         stdDeviation="0.5375" /></filter><filter
+       id="imagebot_16-6-4"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1-3"
+         stdDeviation="1.2625" /></filter><filter
+       id="imagebot_12-7-1"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9-4"
+         stdDeviation="0.5375" /></filter><filter
+       id="imagebot_16-2-9"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8-2"
+         stdDeviation="1.2625" /></filter><filter
+       id="imagebot_12-73-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6-6"
+         stdDeviation="0.5375" /></filter><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0-8"><feGaussianBlur
+         id="imagebot_21-7-9"
+         stdDeviation="1.2625" /></filter><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0-2"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4-6"
+         stdDeviation="0.5375" /></filter><filter
+       id="imagebot_16-02-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9-4"
+         stdDeviation="1.2625" /></filter><filter
+       id="imagebot_12-3-9"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5-5"
+         stdDeviation="0.5375" /></filter><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6-0"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8-4"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-7"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9-1"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2-7"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3-2"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1-7"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4-2"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8-6"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-1"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-5"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6-4"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6-9"
+       style="overflow:visible"><path
+         id="path3844-5-0"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><g
+       inkscape:label="Layer 1"
+       id="layer1-1" /><g
+       id="g3188"><circle
+         cx="9.3000469"
+         cy="854.16602"
+         r="5.3757734"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="0.671972px"
+         id="circle2911" /><text
+         xml:space="preserve"
+         x="24.346846"
+         y="858.28448"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1432px"
+         text-anchor="start"
+         id="text2913"
+         style="stroke-width:0.0839965">Heartland Payment Systems data breach</text></g><g
+       id="g3192"
+       transform="translate(0.58058167,-5.2680305)"><circle
+         cx="9.3000469"
+         cy="897.26526"
+         r="5.3757734"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="0.671972px"
+         id="circle2917" /><text
+         xml:space="preserve"
+         x="24.419418"
+         y="903.64258"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1432px"
+         text-anchor="start"
+         id="text2919"
+         style="stroke-width:0.0839965">March 2008</text></g><g
+       id="g3196"
+       transform="translate(0.63501167,-22.613349)"><circle
+         cx="9.3000469"
+         cy="952.44183"
+         r="5.3757734"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="0.671972px"
+         id="circle2921" /><text
+         xml:space="preserve"
+         x="24.364988"
+         y="956.5603"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1432px"
+         text-anchor="start"
+         id="text2923"
+         style="stroke-width:0.0839965">134 million credit cards exposed through SQL injection to install spyware</text></g><g
+       id="g3200"
+       transform="translate(0.79829979,-54.331193)"><circle
+         cx="9.3000469"
+         cy="1022.8799"
+         r="5.3757734"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="0.671972px"
+         id="circle2929" /><text
+         xml:space="preserve"
+         x="24.2017"
+         y="1028.3864"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1432px"
+         text-anchor="start"
+         id="text2931"
+         style="stroke-width:0.0839965">Cost: At least $129 million</text></g><text
+       xml:space="preserve"
+       x="29.201698"
+       y="1042.2272"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="italic"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text2933"
+       style="stroke-width:0.0839965"><tspan
+         sodipodi:role="line"
+         id="tspan3262"
+         x="29.201698"
+         y="1042.2272">The vulnerability to SQL injection was well understood and security</tspan><tspan
+         sodipodi:role="line"
+         id="tspan3264"
+         x="29.201698"
+         y="1064.9061">analysts had warned retailers about it for several years</tspan></text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><style
+     sozi:version="14.10-05142318"
+     id="sozi-style-7">#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></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcFourTier.svg b/Doc/DbDevel/Ref/Jdbc/jdbcFourTier.svg
new file mode 100644
index 0000000000000000000000000000000000000000..d69880bb27da6486b7ec48da198616a5e1d5883d
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcFourTier.svg
@@ -0,0 +1,1021 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcFourTier.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.415909"
+     inkscape:cx="205.80174"
+     inkscape:cy="144.32469"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="18.958775"
+       markerHeight="10.833586"
+       preserveAspectRatio="xMidYMid"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="18.958775"
+       markerHeight="10.833586"
+       preserveAspectRatio="xMidYMid"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="17.773853"
+       markerHeight="10.156487"
+       preserveAspectRatio="xMidYMid"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="18.958775"
+       markerHeight="10.833586"
+       preserveAspectRatio="xMidYMid"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="17.773853"
+       markerHeight="10.156487"
+       preserveAspectRatio="xMidYMid"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2910,1574 2850,1574 2873,1717 2887,1717z   M 2850,1036 2910,1036 2887,893 2873,893z"
+         id="path13973" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2910,2699 2850,2699 2873,2842 2887,2842z   M 2850,2251 2910,2251 2887,2108 2873,2108z"
+         id="path13990" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2910,3914 2850,3914 2873,4057 2887,4057z   M 2850,3376 2910,3376 2887,3233 2873,3233z"
+         id="path14009" /></clipPath><defs
+       id="defs13976"><clipPath
+         id="clipPath14043"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 2472,1136 h -60 l 23,143 h 14 z m -60,-538 h 60 l -23,-143 h -14 z"
+           id="path14041" /></clipPath></defs><defs
+       id="defs13993"><clipPath
+         id="clipPath14054"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 2472,2261 h -60 l 23,143 h 14 z m -60,-448 h 60 l -23,-143 h -14 z"
+           id="path14052" /></clipPath></defs><defs
+       id="defs14012"><clipPath
+         id="clipPath14066"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 2472,3476 h -60 l 23,143 h 14 z m -60,-538 h 60 l -23,-143 h -14 z"
+           id="path14064" /></clipPath></defs><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-1"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-7"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-5"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-4"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><g
+       id="g14827"
+       transform="translate(231.25,-65.000016)"><rect
+         x="-10"
+         y="904.05518"
+         width="150"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect13963" /><text
+         xml:space="preserve"
+         x="-1.0640299"
+         y="920.18719"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text13967"
+         style="font-size:16px;stroke-width:0.0840708">Presentation layer</text></g><g
+       id="g14831"
+       transform="translate(223.75,-80.000027)"><rect
+         x="10"
+         y="1004.0552"
+         width="125"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect13969" /><text
+         xml:space="preserve"
+         x="20.259987"
+         y="1020.1872"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text13971"
+         style="font-size:16px;stroke-width:0.0840708">Business logic</text></g><text
+       xml:space="preserve"
+       x="315.17599"
+       y="897.91113"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text13984"
+       style="font-size:16px;stroke-width:0.0840708">JSF</text><text
+       xml:space="preserve"
+       x="231.08002"
+       y="897.91113"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text13986"
+       style="font-size:16px;stroke-width:0.0840708">Java FX</text><text
+       xml:space="preserve"
+       x="258.26401"
+       y="982.83911"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text14001"
+       style="font-size:16px;stroke-width:0.0840708">JPA</text><g
+       id="g14835"
+       transform="translate(233.75,-100.89811)"><rect
+         x="-15"
+         y="1109.9532"
+         width="155"
+         height="25.000015"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect13988" /><text
+         xml:space="preserve"
+         x="-7.5640001"
+         y="1126.1493"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text14003"
+         style="font-size:16px;stroke-width:0.0840708">Hibernate, Toplink</text></g><g
+       id="g14839"
+       transform="translate(221.25,-101.01308)"><rect
+         x="10"
+         y="1195.0682"
+         width="130"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect14005" /><text
+         xml:space="preserve"
+         x="16.695997"
+         y="1213.1923"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text14007"
+         style="font-size:16px;stroke-width:0.0840708">Database server</text></g><text
+       xml:space="preserve"
+       x="243.75201"
+       y="1067.9111"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text14020"
+       style="font-size:16px;stroke-width:0.0840708">JDBC</text><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-start:url(#marker17735-0);marker-end:url(#marker11618-85)"
+       d="m 296.25,869.05516 v 50"
+       id="path5931-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-start:url(#marker17735-0-1);marker-end:url(#marker11618-85-8)"
+       d="m 296.25,954.05516 v 50.00004"
+       id="path5931-1-7"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-start:url(#marker17735-0-4);marker-end:url(#marker11618-85-85)"
+       d="m 296.25,1039.0552 v 50"
+       id="path5931-1-75"
+       sodipodi:nodetypes="cc" /></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcObjectRelation.svg b/Doc/DbDevel/Ref/Jdbc/jdbcObjectRelation.svg
new file mode 100644
index 0000000000000000000000000000000000000000..adbf47226e92c16fb801f81021eab04d2e2ca96e
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcObjectRelation.svg
@@ -0,0 +1,1459 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcObjectRelation.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.415909"
+     inkscape:cx="287.18564"
+     inkscape:cy="102.169"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,123.46457"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 3257,2822 3190,2873 3139,2805 3138,3159 3159,3162z"
+         id="path29191" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 2826,2639 2860,2613 2886,2647 2888,2469 2874,2467z"
+         id="path29204" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 4486,3750 4440,3822 4369,3776 4492,4108 4513,4103z"
+         id="path29219" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 1882,4327 1849,4301 1874,4268 1698,4311 1701,4332z"
+         id="path29232" /></clipPath><clipPath
+       id="cp4"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 2355,3381 2396,3394 2382,3434 2529,3333 2523,3321z"
+         id="path29247" /></clipPath><clipPath
+       id="cp5"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 5019,2087 5103,2073 5117,2156 5280,1843 5263,1830z"
+         id="path29260" /></clipPath><clipPath
+       id="cp6"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 4174,1992 4136,1975 4153,1936 3996,2021 4001,2034z"
+         id="path29269" /></clipPath><clipPath
+       id="cp7"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 2782,1676 2751,1705 2722,1674 2738,1851 2751,1852z"
+         id="path29280" /></clipPath><clipPath
+       id="cp8"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 3076,1012 3139,954 3196,1017 3161,665 3140,664z"
+         id="path29289" /></clipPath><clipPath
+       id="cp9"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 5308,607 5303,692 5219,687 5489,915 5505,901z"
+         id="path29300" /></clipPath><clipPath
+       id="cp10"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 3742,841 3746,799 3788,803 3646,660 3630,674z"
+         id="path29309" /></clipPath><clipPath
+       id="cp11"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 1675,1995 1705,2025 1675,2055 1852,2032 1852,2018z"
+         id="path29322" /></clipPath><clipPath
+       id="cp12"><path
+         clip-rule="evenodd"
+         d="M 428,438 H 5989 V 4512 H 428 z   M 1505,1425 1565,1485 1505,1545 1856,1496 1856,1475z"
+         id="path29331" /></clipPath><defs
+       id="defs29194"><clipPath
+         id="clipPath29385"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 2829,2384 -67,51 -51,-68 -1,354 21,3 z"
+           id="path29383" /></clipPath></defs><defs
+       id="defs29207"><clipPath
+         id="clipPath29394"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 2398,2201 34,-26 26,34 2,-178 -14,-2 z"
+           id="path29392" /></clipPath></defs><defs
+       id="defs29222"><clipPath
+         id="clipPath29404"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 4058,3312 -46,72 -71,-46 123,332 21,-5 z"
+           id="path29402" /></clipPath></defs><defs
+       id="defs29235"><clipPath
+         id="clipPath29413"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 1454,3889 -33,-26 25,-33 -176,43 3,21 z"
+           id="path29411" /></clipPath></defs><defs
+       id="defs29250"><clipPath
+         id="clipPath29423"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 1927,2943 41,13 -14,40 147,-101 -6,-12 z"
+           id="path29421" /></clipPath></defs><defs
+       id="defs29263"><clipPath
+         id="clipPath29432"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 4591,1649 84,-14 14,83 163,-313 -17,-13 z"
+           id="path29430" /></clipPath></defs><defs
+       id="defs29272"><clipPath
+         id="clipPath29439"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 3746,1554 -38,-17 17,-39 -157,85 5,13 z"
+           id="path29437" /></clipPath></defs><defs
+       id="defs29283"><clipPath
+         id="clipPath29447"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 2354,1238 -31,29 -29,-31 16,177 13,1 z"
+           id="path29445" /></clipPath></defs><defs
+       id="defs29292"><clipPath
+         id="clipPath29454"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 2648,574 63,-58 57,63 -35,-352 -21,-1 z"
+           id="path29452" /></clipPath></defs><defs
+       id="defs29303"><clipPath
+         id="clipPath29462"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 4880,169 -5,85 -84,-5 270,228 16,-14 z"
+           id="path29460" /></clipPath></defs><defs
+       id="defs29312"><clipPath
+         id="clipPath29469"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 3314,403 4,-42 42,4 -142,-143 -16,14 z"
+           id="path29467" /></clipPath></defs><defs
+       id="defs29325"><clipPath
+         id="clipPath29478"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 1247,1557 30,30 -30,30 177,-23 v -14 z"
+           id="path29476" /></clipPath></defs><defs
+       id="defs29334"><clipPath
+         id="clipPath29485"><path
+           clip-rule="evenodd"
+           d="M 428,438 H 5989 V 4512 H 428 Z m 1077,987 60,60 -60,60 351,-49 v -21 z"
+           id="path29483" /></clipPath></defs><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO-6"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"><path
+         id="path5802-0"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO4284"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO4284"><path
+         id="path37868"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589"><path
+         id="path38938"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630"><path
+         id="path41284"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630-8"><path
+         id="path41284-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630-9"><path
+         id="path41284-7"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630-6"><path
+         id="path41284-4"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630-0"><path
+         id="path41284-3"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO-68630"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO-68630-92"><path
+         id="path41284-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#003399;fill-opacity:1;fill-rule:evenodd;stroke:#003399;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-9"><path
+         id="path38938-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-4"><path
+         id="path38938-7"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-5"><path
+         id="path38938-4"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-1"><path
+         id="path38938-28"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-3"><path
+         id="path38938-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-2"><path
+         id="path38938-1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-51"><path
+         id="path38938-10"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-0"><path
+         id="path38938-64"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO42844589"
+       orient="auto"
+       refY="0"
+       refX="0"
+       style="overflow:visible"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="10.959"
+       markerHeight="6.2622857"
+       preserveAspectRatio="xMidYMid"
+       id="Arrow1LendO42844589-0-4"><path
+         id="path38938-64-0"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00cc00;fill-opacity:1;fill-rule:evenodd;stroke:#00cc00;stroke-width:0.853333pt;stroke-opacity:1"
+         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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><text
+       xml:space="preserve"
+       x="998.19116"
+       y="-447.448"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200"
+       style="font-size:16px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       transform="rotate(90)"><tspan
+         sodipodi:role="line"
+         id="tspan51224"
+         x="998.19116"
+         y="-447.448">create</tspan><tspan
+         sodipodi:role="line"
+         x="998.19116"
+         y="-427.448"
+         id="tspan51228">Statement()</tspan></text><rect
+       x="0.65536499"
+       y="839.05518"
+       width="89.344635"
+       height="104.99998"
+       fill="#ffe0e0"
+       id="rect29320"
+       style="stroke-width:0.0841106" /><g
+       id="g30738"
+       transform="translate(139.07197,-15.515432)"><path
+         stroke="#000000"
+         stroke-width="1.26166px"
+         id="ellipse29185-3"
+         style="fill:none"
+         sodipodi:type="arc"
+         sodipodi:cx="265"
+         sodipodi:cy="991.29865"
+         sodipodi:rx="52.274261"
+         sodipodi:ry="17.756485"
+         sodipodi:start="0"
+         sodipodi:end="6.2628464"
+         sodipodi:open="true"
+         sodipodi:arc-type="arc"
+         d="m 317.27426,991.29865 a 52.274261,17.756485 0 0 1 -52.00846,17.75625 52.274261,17.756485 0 0 1 -52.53736,-17.57568 52.274261,17.756485 0 0 1 51.47419,-17.93499 52.274261,17.756485 0 0 1 53.06082,17.39329" /><text
+         xml:space="preserve"
+         x="216.71463"
+         y="995.59662"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="14.1306px"
+         text-anchor="start"
+         id="text29189-8"
+         style="font-size:16px;stroke-width:0.0841106">Connection</text></g><text
+       xml:space="preserve"
+       x="324.79199"
+       y="849.03918"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29298-1"
+       style="font-size:16px;stroke-width:0.0841106">PreparedStatement</text><text
+       xml:space="preserve"
+       x="359.73593"
+       y="1118.7992"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29278-8"
+       style="font-size:16px;stroke-width:0.0841106">Statement</text><text
+       xml:space="preserve"
+       x="556.30396"
+       y="979.32721"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29217-4"
+       style="font-size:16px;stroke-width:0.0841106">int value</text><text
+       xml:space="preserve"
+       x="114.792"
+       y="978.79913"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29245-3"
+       style="font-size:16px;stroke-width:0.0841106">ResultSet</text><text
+       xml:space="preserve"
+       x="0"
+       y="854.05518"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29340-3"
+       style="font-size:16px;stroke-width:0.0841106">Legend:</text><text
+       xml:space="preserve"
+       x="-0.86400002"
+       y="888.51117"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29342-3"
+       style="font-size:16px;stroke-width:0.0841106">create</text><text
+       xml:space="preserve"
+       x="-0.208"
+       y="924.02313"
+       fill="#0000ff"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29344-8"
+       style="font-size:16px;stroke-width:0.0841106">Reference</text><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589)"
+       d="m 415,954.05516 v -100"
+       id="path5931-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#003399;stroke:#003399;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO-68630)"
+       d="M 5,934.05516 H 85"
+       id="path5931-1-4"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#003399;stroke:#003399;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO-68630-9)"
+       d="M 180,984.05516 365,1104.0552"
+       id="path5931-1-4-7"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#003399;stroke:#003399;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO-68630-6)"
+       d="M 405,1104.0552 V 999.05517"
+       id="path5931-1-4-3"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#003399;stroke:#003399;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO-68630-0)"
+       d="m 170,964.05516 170,-110"
+       id="path5931-1-4-0"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#003399;stroke:#003399;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO-68630-92)"
+       d="m 405,854.05516 v 100"
+       id="path5931-1-4-4"
+       sodipodi:nodetypes="cc"
+       inkscape:transform-center-x="143.29864"
+       inkscape:transform-center-y="31.616842" /><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-1)"
+       d="M 355,1109.0552 160,984.05516"
+       id="path5931-1-9"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-3)"
+       d="M 5,899.05516 H 65"
+       id="path5931-1-80"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-2)"
+       d="M 415,999.05517 V 1104.0552"
+       id="path5931-1-0"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-51)"
+       d="m 330,854.05516 -175,110"
+       id="path5931-1-85"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-0)"
+       d="M 450,1114.8803 605,989.05516"
+       id="path5931-1-6"
+       sodipodi:nodetypes="cc" /><text
+       xml:space="preserve"
+       x="22.301331"
+       y="1224.5344"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2"
+       style="font-size:16px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       transform="matrix(0.80702362,-0.67951139,0.36674822,0.93032023,0,0)">executeUpdate(String)</text><text
+       xml:space="preserve"
+       x="-953.92719"
+       y="427.20001"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-5"
+       style="font-size:16px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       inkscape:transform-center-x="0.28584382"
+       inkscape:transform-center-y="49.868508"
+       transform="rotate(-90)"><tspan
+         sodipodi:role="line"
+         id="tspan51230"
+         x="-953.92719"
+         y="427.20001">prepare</tspan><tspan
+         sodipodi:role="line"
+         id="tspan51232"
+         x="-953.92719"
+         y="447.20001">Statement()</tspan></text><text
+       xml:space="preserve"
+       x="720.23804"
+       y="729.96899"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-8"
+       style="font-size:14.6667px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       transform="rotate(34.526721)">executeQuery(String)</text><text
+       xml:space="preserve"
+       x="-338.06537"
+       y="892.12866"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-8-6"
+       style="font-size:16px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       transform="rotate(-31.814047)">executeQuery()</text><text
+       xml:space="preserve"
+       x="853.52716"
+       y="-392.448"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-2-8"
+       style="font-size:16px;fill:#003399;stroke:none;stroke-width:0.0841106"
+       transform="rotate(90)"><tspan
+         sodipodi:role="line"
+         id="tspan51390"
+         x="853.52716"
+         y="-392.448">get</tspan><tspan
+         sodipodi:role="line"
+         id="tspan51392"
+         x="853.52716"
+         y="-372.448">Connection()</tspan></text><text
+       xml:space="preserve"
+       x="-1105.1112"
+       y="377.552"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-2-8-4"
+       style="font-size:16px;fill:#003399;stroke:none;stroke-width:0.0841106"
+       transform="rotate(-90)"><tspan
+         sodipodi:role="line"
+         id="tspan51390-7"
+         x="-1105.1112"
+         y="377.552">get</tspan><tspan
+         sodipodi:role="line"
+         id="tspan51392-2"
+         x="-1105.1112"
+         y="397.552">Connection()</tspan></text><path
+       style="fill:#00cc00;stroke:#00cc00;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#Arrow1LendO42844589-0-4)"
+       d="m 475,854.05516 130,110"
+       id="path5931-1-6-6"
+       sodipodi:nodetypes="cc" /><text
+       xml:space="preserve"
+       x="940.40295"
+       y="312.5795"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-2"
+       style="font-size:16px;fill:#00cc00;stroke:none;stroke-width:0.0841106"
+       transform="rotate(41.721357)">executeUpdate()</text><text
+       xml:space="preserve"
+       x="719.56323"
+       y="726.677"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-2-8-9"
+       style="font-size:16px;fill:#003399;stroke:none;stroke-width:0.0841106"
+       transform="rotate(31.135067)"><tspan
+         sodipodi:role="line"
+         id="tspan51392-0"
+         x="719.56323"
+         y="726.677">get</tspan><tspan
+         sodipodi:role="line"
+         x="719.56323"
+         y="746.677"
+         id="tspan52218">Statement()</tspan></text><text
+       xml:space="preserve"
+       x="-411.78229"
+       y="880.47107"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="14.1306px"
+       text-anchor="start"
+       id="text29200-2-2-8-9-8"
+       style="font-size:16px;fill:#003399;stroke:none;stroke-width:0.0841106"
+       transform="rotate(-38.868688)"><tspan
+         sodipodi:role="line"
+         id="tspan51392-0-1"
+         x="-411.78229"
+         y="880.47107">get</tspan><tspan
+         sodipodi:role="line"
+         x="-411.78229"
+         y="900.47107"
+         id="tspan52218-3">Statement()</tspan></text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcReadWrite.svg b/Doc/DbDevel/Ref/Jdbc/jdbcReadWrite.svg
new file mode 100644
index 0000000000000000000000000000000000000000..490f671bf3ea8806331caa6d14e70d69472c1236
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcReadWrite.svg
@@ -0,0 +1,1040 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcReadWrite.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="42.02181"
+     inkscape:cy="144.48878"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7212 V 5442 H 438 z   M 3215,2325 3275,2385 3215,2445 3566,2396 3566,2375z"
+         id="path63578" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7212 V 5442 H 438 z   M 653,3853 585,3920 518,3853 575,4241 596,4241z"
+         id="path63589" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7212 V 5442 H 438 z   M 3795,3260 3735,3320 3675,3260 3725,3611 3746,3611z"
+         id="path63614" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7212 V 5442 H 438 z   M 2725,3795 2665,3735 2725,3675 2375,3725 2375,3746z"
+         id="path63629" /></clipPath><defs
+       id="defs63581"><clipPath
+         id="clipPath63678"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7212 V 5442 H 438 Z m 2777,1437 60,60 -60,60 351,-49 v -21 z"
+           id="path63676" /></clipPath></defs><defs
+       id="defs63592"><clipPath
+         id="clipPath63686"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7212 V 5442 H 438 Z m 215,2965 -68,67 -67,-67 57,388 h 21 z"
+           id="path63684" /></clipPath></defs><defs
+       id="defs63617"><clipPath
+         id="clipPath63701"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7212 V 5442 H 438 Z m 3357,2372 -60,60 -60,-60 50,351 h 21 z"
+           id="path63699" /></clipPath></defs><defs
+       id="defs63632"><clipPath
+         id="clipPath63711"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7212 V 5442 H 438 Z m 2287,2907 -60,-60 60,-60 -350,50 v 21 z"
+           id="path63709" /></clipPath></defs></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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><rect
+       x="325"
+       y="839.05518"
+       width="315"
+       height="279.99997"
+       fill="#ffd600"
+       id="rect54743"
+       style="stroke-width:0.0839957" /><rect
+       x="0"
+       y="839.05518"
+       width="220"
+       height="279.99997"
+       fill="#87cfff"
+       id="rect54733"
+       style="stroke-width:0.0839957" /><rect
+       x="71.101349"
+       y="902.13824"
+       width="136.12648"
+       height="147.47035"
+       rx="8.8230124"
+       fill="#f2f2f2"
+       stroke="#000000"
+       stroke-width="1.26043px"
+       id="rect63572" /><text
+       xml:space="preserve"
+       x="69.440002"
+       y="863.78314"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1502px"
+       text-anchor="start"
+       id="text63574"
+       style="font-size:16px;stroke-width:0.0840287">DB Server</text><text
+       xml:space="preserve"
+       x="78.663956"
+       y="928.60718"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63576"
+       style="font-size:16px;stroke-width:0.0840287">Sam Bown</text><polyline
+       points=" 2250,2385 3555,2385"
+       clip-path="url(#cp0)"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline63583"
+       transform="matrix(0.08947137,0,0,0.08402869,13.689419,720.82826)"
+       style="fill:none" /><polygon
+       points="3275,2385 3215,2445 3515,2385 3215,2325 "
+       stroke="#000000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon63585"
+       transform="matrix(0.08402869,0,0,0.08402869,33.038144,720.82826)" /><rect
+       x="327.97885"
+       y="902.3302"
+       width="139.90778"
+       height="147.47035"
+       rx="8.8230124"
+       fill="#f2f2f2"
+       stroke="#000000"
+       stroke-width="1.26043px"
+       id="rect63587" /><polyline
+       points=" 585,2115 585,4230"
+       clip-path="url(#cp1)"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline63594"
+       transform="matrix(0.08402869,0,0,0.0646906,-36.788543,802.23452)"
+       style="fill:none" /><polygon
+       points="585,3920 518,3853 585,4190 653,3853 "
+       stroke="#000000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon63596"
+       transform="matrix(0.08402869,0,0,0.08402869,-36.788543,720.43442)" /><text
+       xml:space="preserve"
+       x="389.29599"
+       y="868.78314"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1502px"
+       text-anchor="start"
+       id="text63598"
+       style="font-size:16px;stroke-width:0.0840287">Client</text><text
+       xml:space="preserve"
+       x="891.54315"
+       y="-8.7040005"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63600"
+       transform="rotate(90)"
+       style="font-size:16px;stroke-width:0.0840287">time</text><text
+       xml:space="preserve"
+       x="243.07198"
+       y="913.83118"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63604"
+       style="font-size:16px;stroke-width:0.0840287">SELECT</text><text
+       xml:space="preserve"
+       x="484.64801"
+       y="919.79913"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63606"
+       style="font-size:16px;stroke-width:0.0840287">transient copy</text><text
+       xml:space="preserve"
+       x="335.54141"
+       y="928.79913"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63608"
+       style="font-size:16px;stroke-width:0.0840287">Sam Bown</text><text
+       xml:space="preserve"
+       x="335.54141"
+       y="1042.238"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63610"
+       style="font-size:16px;stroke-width:0.0840287">Sam Brown</text><polyline
+       points=" 3735,2565 3735,3600"
+       clip-path="url(#cp2)"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline63619"
+       transform="matrix(0.08402869,0,0,0.08402869,33.038144,720.82826)"
+       style="fill:none" /><polygon
+       points="3735,3320 3675,3260 3735,3560 3795,3260 "
+       stroke="#000000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon63621"
+       transform="matrix(0.08402869,0,0,0.08402869,33.038144,720.82826)" /><text
+       xml:space="preserve"
+       x="354.44788"
+       y="974.17468"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63623"
+       style="font-size:16px;stroke-width:0.0840287">correction</text><text
+       xml:space="preserve"
+       x="510"
+       y="1029.0552"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63625"
+       style="font-size:16px;stroke-width:0.0840287">transient copy</text><text
+       xml:space="preserve"
+       x="510"
+       y="1055.5242"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63627"
+       style="font-size:16px;stroke-width:0.0840287">(modified)</text><polyline
+       points=" 3555,3735 2385,3735"
+       clip-path="url(#cp3)"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline63634"
+       transform="matrix(0.0925757,0,0,0.08402869,-4.1066085,720.208)"
+       style="fill:none" /><polygon
+       points="2725,3795 2665,3735 2725,3675 2425,3735 "
+       stroke="#000000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon63636"
+       transform="matrix(0.07988248,0,0,0.08467938,27.113191,717.77768)" /><text
+       xml:space="preserve"
+       x="258.19998"
+       y="1053.8312"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63638"
+       style="font-size:16px;stroke-width:0.0840287">UPDATE</text><text
+       xml:space="preserve"
+       x="78.663956"
+       y="1042.046"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1335px"
+       text-anchor="start"
+       id="text63640"
+       style="font-size:16px;stroke-width:0.0840287">Sam Brown</text><text
+       xml:space="preserve"
+       x="78.839943"
+       y="1083.7832"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1502px"
+       text-anchor="start"
+       id="text63642"
+       style="font-size:16px;stroke-width:0.0840287">Persistent data</text><text
+       xml:space="preserve"
+       x="110.776"
+       y="1109.1671"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1502px"
+       text-anchor="start"
+       id="text63644"
+       style="font-size:16px;stroke-width:0.0840287">(ACID)</text><text
+       xml:space="preserve"
+       x="344.728"
+       y="1083.7832"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1502px"
+       text-anchor="start"
+       id="text63654"
+       style="font-size:16px;stroke-width:0.0840287">Transient data</text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcThreeTier.svg b/Doc/DbDevel/Ref/Jdbc/jdbcThreeTier.svg
new file mode 100644
index 0000000000000000000000000000000000000000..ed28b21f3277c3878bf5a0b2d9c7b55c653fe332
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcThreeTier.svg
@@ -0,0 +1,953 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcThreeTier.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.7079545"
+     inkscape:cx="-174.77046"
+     inkscape:cy="295.67533"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2910,2114 2850,2114 2873,2257 2887,2257z   M 2850,1036 2910,1036 2887,893 2873,893z"
+         id="path69803" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2910,3914 2850,3914 2873,4057 2887,4057z   M 2850,2791 2910,2791 2887,2648 2873,2648z"
+         id="path69822" /></clipPath><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-3"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-9"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-1"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-7"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-5"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0-4"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 17.773854 10.156488"
+       markerWidth="12.773251"
+       markerHeight="7.2989998"
+       preserveAspectRatio="xMidYMid"
+       markerUnits="userSpaceOnUse"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><g
+       id="g14827"
+       transform="translate(256.3505,-63.604854)"><rect
+         x="-10"
+         y="904.05518"
+         width="150"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect13963" /><text
+         xml:space="preserve"
+         x="-1.0640299"
+         y="920.18719"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text13967"
+         style="font-size:16px;stroke-width:0.0840708">Presentation layer</text></g><g
+       id="g14831"
+       transform="translate(248.8505,-36.104852)"><rect
+         x="10"
+         y="1004.0552"
+         width="125"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect13969" /><text
+         xml:space="preserve"
+         x="20.259987"
+         y="1020.1872"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text13971"
+         style="font-size:16px;stroke-width:0.0840708">Business logic</text></g><text
+       xml:space="preserve"
+       x="340.17599"
+       y="920.55634"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text13984"
+       style="font-size:16px;stroke-width:0.0840708">JSF</text><text
+       xml:space="preserve"
+       x="256.08002"
+       y="920.55634"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text13986"
+       style="font-size:16px;stroke-width:0.0840708">Java FX</text><g
+       id="g14839"
+       transform="translate(246.3505,-99.617912)"><rect
+         x="10"
+         y="1195.0682"
+         width="130"
+         height="24.999985"
+         rx="8.8274336"
+         fill="#ffe5e5"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect14005" /><text
+         xml:space="preserve"
+         x="16.695997"
+         y="1213.1923"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1416px"
+         text-anchor="start"
+         id="text14007"
+         style="font-size:16px;stroke-width:0.0840708">Database server</text></g><text
+       xml:space="preserve"
+       x="268.75201"
+       y="1048.0563"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1416px"
+       text-anchor="start"
+       id="text14020"
+       style="font-size:16px;stroke-width:0.0840708">JDBC</text><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-start:url(#marker17735-0-3);marker-end:url(#marker11618-85)"
+       d="m 320,869.05516 v 95"
+       id="path5931-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-start:url(#marker17735-0-4);marker-end:url(#marker11618-85-85)"
+       d="m 320,999.05516 v 90.00004"
+       id="path5931-1-75"
+       sodipodi:nodetypes="cc" /></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcarch.svg b/Doc/DbDevel/Ref/Jdbc/jdbcarch.svg
new file mode 100644
index 0000000000000000000000000000000000000000..e9daa65bdd033a30c5a88da22573e0c549feea2e
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcarch.svg
@@ -0,0 +1,1310 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcarch.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.415909"
+     inkscape:cx="367.1058"
+     inkscape:cy="160.71857"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       viewBox="0 0 18.958775 10.833586"
+       markerWidth="18.958775"
+       markerHeight="10.833586"
+       preserveAspectRatio="xMidYMid"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 2548,1042 2472,1042 2503,1217 2517,1217z"
+         id="path4507" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 1458,2128 1412,2068 1292,2199 1300,2209z"
+         id="path4522" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 1331,2923 1301,2893 1271,2923 1294,3032 1308,3032z"
+         id="path4537" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 1331,3473 1301,3443 1271,3473 1294,3582 1308,3582z"
+         id="path4550" /></clipPath><clipPath
+       id="cp4"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 1331,4022 1301,3992 1271,4022 1294,4131 1308,4131z"
+         id="path4563" /></clipPath><clipPath
+       id="cp5"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 3987,2093 3954,2162 4125,2209 4131,2197z"
+         id="path4574" /></clipPath><clipPath
+       id="cp6"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 4095,2923 4065,2893 4035,2923 4058,3032 4072,3032z"
+         id="path4585" /></clipPath><clipPath
+       id="cp7"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 4095,3473 4065,3443 4035,3473 4058,3582 4072,3582z"
+         id="path4596" /></clipPath><clipPath
+       id="cp8"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 4095,4022 4065,3992 4035,4022 4058,4131 4072,4131z"
+         id="path4609" /></clipPath><clipPath
+       id="cp9"><path
+         clip-rule="evenodd"
+         d="M 438,438 H 5862 V 4512 H 438 z   M 5695,2071 5678,2145 5855,2153 5858,2140z"
+         id="path4628" /></clipPath><defs
+       id="defs4510"><clipPath
+         id="clipPath4678"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 2110,604 h -76 l 31,175 h 14 z"
+           id="path4676" /></clipPath></defs><defs
+       id="defs4525"><clipPath
+         id="clipPath4688"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 1020,1690 -46,-60 -120,131 8,10 z"
+           id="path4686" /></clipPath></defs><defs
+       id="defs4540"><clipPath
+         id="clipPath4698"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 893,2485 -30,-30 -30,30 23,109 h 14 z"
+           id="path4696" /></clipPath></defs><defs
+       id="defs4553"><clipPath
+         id="clipPath4707"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 893,3035 -30,-30 -30,30 23,109 h 14 z"
+           id="path4705" /></clipPath></defs><defs
+       id="defs4566"><clipPath
+         id="clipPath4716"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 893,3584 -30,-30 -30,30 23,109 h 14 z"
+           id="path4714" /></clipPath></defs><defs
+       id="defs4577"><clipPath
+         id="clipPath4724"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 3549,1655 -33,69 171,47 6,-12 z"
+           id="path4722" /></clipPath></defs><defs
+       id="defs4588"><clipPath
+         id="clipPath4732"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 3657,2485 -30,-30 -30,30 23,109 h 14 z"
+           id="path4730" /></clipPath></defs><defs
+       id="defs4599"><clipPath
+         id="clipPath4740"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 3657,3035 -30,-30 -30,30 23,109 h 14 z"
+           id="path4738" /></clipPath></defs><defs
+       id="defs4612"><clipPath
+         id="clipPath4749"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 3657,3584 -30,-30 -30,30 23,109 h 14 z"
+           id="path4747" /></clipPath></defs><defs
+       id="defs4631"><clipPath
+         id="clipPath4761"><path
+           clip-rule="evenodd"
+           d="M 438,438 H 5862 V 4512 H 438 Z m 5257,1633 -17,74 177,8 3,-13 z"
+           id="path4759" /></clipPath></defs><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-3"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-9"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-0"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-96"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-0-1"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-96-5"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-8-9"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-8-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-3-4"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-9-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-0"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-4"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-4"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-47"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-3"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-5"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><rect
+       x="247.86725"
+       y="839.05518"
+       width="142.13275"
+       height="24.999985"
+       fill="#fddf92"
+       stroke="#000000"
+       stroke-width="0.672566px"
+       id="rect4501" /><text
+       xml:space="preserve"
+       x="252.15486"
+       y="857.97107"
+       fill="#000000"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="12.1062px"
+       text-anchor="start"
+       id="text4505"
+       style="font-size:16px;stroke-width:0.0840708">Java Application</text><g
+       id="g5578"
+       transform="translate(255.34825,-67.635087)"><rect
+         x="-6.472157"
+         y="956.69025"
+         width="141.1239"
+         height="25"
+         fill="#fff8e0"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4516" /><text
+         xml:space="preserve"
+         x="-1.5960504"
+         y="974.7655"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4518"
+         style="font-size:16px;stroke-width:0.0840708">DriverManager</text></g><g
+       id="g5655"
+       transform="translate(-4.9978011,8.4955897)"><rect
+         x="5.2079735"
+         y="880.55957"
+         width="189.1593"
+         height="49.601772"
+         fill="#ffeebd"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4520" /><text
+         xml:space="preserve"
+         x="10.000004"
+         y="899.05518"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4531"
+         style="font-size:16px;stroke-width:0.0840708">Driver implementation</text><text
+         xml:space="preserve"
+         x="10.000004"
+         y="922.17456"
+         fill="#008f00"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4533"
+         style="font-size:16px;stroke-width:0.0840708">Mysql</text></g><g
+       id="g5588"
+       transform="translate(150.4788,-136.95815)"><rect
+         x="-105.68897"
+         y="1111.0133"
+         width="100"
+         height="24.999964"
+         fill="#fff8e0"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4535" /><text
+         xml:space="preserve"
+         x="-103.32172"
+         y="1127.2699"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4546"
+         style="font-size:16px;stroke-width:0.0840708">Connection</text></g><g
+       id="g5592"
+       transform="translate(157.9788,-122.29438)"><rect
+         x="-105.68897"
+         y="1156.3495"
+         width="85"
+         height="25.000013"
+         fill="#ffeebd"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4548" /><text
+         xml:space="preserve"
+         x="-103.32172"
+         y="1173.5089"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4559"
+         style="font-size:16px;stroke-width:0.0840708">Statement</text></g><g
+       id="g5641"
+       transform="translate(49.789823,-3.5664062e-5)"><rect
+         x="5"
+         y="1094.0552"
+         width="80"
+         height="25.000015"
+         fill="#fddf92"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4561" /><text
+         xml:space="preserve"
+         x="7.3672538"
+         y="1112.3694"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4572"
+         style="font-size:16px;stroke-width:0.0840708">ResultSet</text></g><g
+       id="g5650"
+       transform="translate(1.2189929,14.999984)"><rect
+         x="448.78101"
+         y="874.05518"
+         width="190"
+         height="49.601746"
+         fill="#ffeebd"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4583" /><text
+         xml:space="preserve"
+         x="453.40488"
+         y="892.55078"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4618"
+         style="font-size:16px;stroke-width:0.0840708">Driver implementation</text><text
+         xml:space="preserve"
+         x="456.09512"
+         y="915.67017"
+         fill="#008f00"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4626"
+         style="font-size:16px;stroke-width:0.0840708">Oracle</text></g><text
+       xml:space="preserve"
+       x="233.992"
+       y="1005.9111"
+       fill="#008f00"
+       font-family="Helvetica"
+       font-style="normal"
+       font-weight="bold"
+       font-size="12.1062px"
+       text-anchor="start"
+       id="text4641"
+       style="font-size:16px;stroke-width:0.0840708"><tspan
+         sodipodi:role="line"
+         id="tspan12552"
+         x="233.992"
+         y="1005.9111">Informix, DB2, Sybase,</tspan><tspan
+         sodipodi:role="line"
+         id="tspan12554"
+         x="233.992"
+         y="1025.9111">...</tspan></text><g
+       id="g5588-6"
+       transform="translate(600.68897,-136.95814)"><rect
+         x="-105.68897"
+         y="1111.0133"
+         width="100"
+         height="24.999964"
+         fill="#fff8e0"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4535-5" /><text
+         xml:space="preserve"
+         x="-103.32172"
+         y="1127.2699"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4546-6"
+         style="font-size:16px;stroke-width:0.0840708">Connection</text></g><g
+       id="g5592-3"
+       transform="translate(608.18897,-122.29437)"><rect
+         x="-105.68897"
+         y="1156.3495"
+         width="85"
+         height="25.000013"
+         fill="#ffeebd"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4548-9" /><text
+         xml:space="preserve"
+         x="-103.32172"
+         y="1173.5089"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4559-4"
+         style="font-size:16px;stroke-width:0.0840708">Statement</text></g><g
+       id="g5641-8"
+       transform="translate(500,-1.578125e-5)"><rect
+         x="5"
+         y="1094.0552"
+         width="80"
+         height="25.000015"
+         fill="#fddf92"
+         stroke="#000000"
+         stroke-width="0.672566px"
+         id="rect4561-1" /><text
+         xml:space="preserve"
+         x="7.3672538"
+         y="1112.3694"
+         fill="#000000"
+         font-family="Helvetica"
+         font-style="normal"
+         font-weight="bold"
+         font-size="12.1062px"
+         text-anchor="start"
+         id="text4572-2"
+         style="font-size:16px;stroke-width:0.0840708">ResultSet</text></g><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618)"
+       d="m 315,864.05516 v 20"
+       id="path5931"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-3)"
+       d="m 95,1059.0552 v 30"
+       id="path5931-0"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-8)"
+       d="m 95,999.05516 v 30.00004"
+       id="path5931-5"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-0)"
+       d="m 95,939.05516 v 30"
+       id="path5931-3"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85)"
+       d="m 250,904.05516 -55,10"
+       id="path5931-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-3-4)"
+       d="m 545,1059.0552 v 30"
+       id="path5931-0-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-8-9)"
+       d="m 545,999.05514 v 30.00006"
+       id="path5931-5-0"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-0-1)"
+       d="m 545,939.05514 v 30"
+       id="path5931-3-3"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85-0)"
+       d="m 390,904.05516 55,10"
+       id="path5931-1-4"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85-4)"
+       d="m 315,914.05516 v 75"
+       id="path5931-1-6"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85-3)"
+       d="m 355,914.05516 75,100.00004"
+       id="path5931-1-7"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85-5)"
+       d="M 280,914.05516 210,1014.0552"
+       id="path5931-1-62"
+       sodipodi:nodetypes="cc" /></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcread.svg b/Doc/DbDevel/Ref/Jdbc/jdbcread.svg
new file mode 100644
index 0000000000000000000000000000000000000000..eeac95ca210cd10719925bfba25497cf8ba27b83
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcread.svg
@@ -0,0 +1,1374 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcread.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.415909"
+     inkscape:cx="355.24951"
+     inkscape:cy="197.89755"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><rect
+       x="-410"
+       y="-90"
+       width="1045"
+       height="645"
+       id="rect55880" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 2887,3211 2849,3097 2597,3233 2603,3253z"
+         id="path54761" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 7373,3432 7385,3551 7661,3474 7659,3454z"
+         id="path54784" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4050 8548,4140 8771,4106 8771,4085z"
+         id="path54823" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4365 8548,4455 8771,4421 8771,4400z"
+         id="path54834" /></clipPath><clipPath
+       id="cp4"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4050 8548,4140 8771,4106 8771,4085z"
+         id="path54845" /></clipPath><clipPath
+       id="cp5"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4680 8548,4770 8771,4736 8771,4715z"
+         id="path54856" /></clipPath><clipPath
+       id="cp6"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4365 8548,4455 8771,4421 8771,4400z"
+         id="path54865" /></clipPath><clipPath
+       id="cp7"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,4680 8548,4770 8771,4736 8771,4715z"
+         id="path54878" /></clipPath><clipPath
+       id="cp8"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,5040 8548,5130 8771,5096 8771,5075z"
+         id="path54887" /></clipPath><clipPath
+       id="cp9"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 8548,5040 8548,5130 8771,5096 8771,5075z"
+         id="path54900" /></clipPath><defs
+       id="defs54764"><clipPath
+         id="clipPath54960"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 2909,3233 -38,-114 -252,136 6,20 z"
+           id="path54958" /></clipPath></defs><defs
+       id="defs54787"><clipPath
+         id="clipPath54974"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 7395,3454 12,119 276,-77 -2,-20 z"
+           id="path54972" /></clipPath></defs><defs
+       id="defs54826"><clipPath
+         id="clipPath54996"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4072 v 90 l 223,-34 v -21 z"
+           id="path54994" /></clipPath></defs><defs
+       id="defs54837"><clipPath
+         id="clipPath55004"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4387 v 90 l 223,-34 v -21 z"
+           id="path55002" /></clipPath></defs><defs
+       id="defs54848"><clipPath
+         id="clipPath55012"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4072 v 90 l 223,-34 v -21 z"
+           id="path55010" /></clipPath></defs><defs
+       id="defs54859"><clipPath
+         id="clipPath55020"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4702 v 90 l 223,-34 v -21 z"
+           id="path55018" /></clipPath></defs><defs
+       id="defs54868"><clipPath
+         id="clipPath55027"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4387 v 90 l 223,-34 v -21 z"
+           id="path55025" /></clipPath></defs><defs
+       id="defs54881"><clipPath
+         id="clipPath55036"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,4702 v 90 l 223,-34 v -21 z"
+           id="path55034" /></clipPath></defs><defs
+       id="defs54890"><clipPath
+         id="clipPath55043"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,5062 v 90 l 223,-34 v -21 z"
+           id="path55041" /></clipPath></defs><defs
+       id="defs54903"><clipPath
+         id="clipPath55052"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 8570,5062 v 90 l 223,-34 v -21 z"
+           id="path55050" /></clipPath></defs><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618-85-1"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"
+       viewBox="0 0 8.886927 5.078244"
+       markerWidth="8.8869267"
+       markerHeight="5.0782437"
+       preserveAspectRatio="xMidYMid"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616-6-0"
+         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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><rect
+       x="415"
+       y="839.05518"
+       width="225"
+       height="284.99997"
+       fill="#ffd600"
+       id="rect54743"
+       style="stroke-width:0.0839957" /><rect
+       x="0"
+       y="839.05518"
+       width="265"
+       height="284.99997"
+       fill="#87cfff"
+       id="rect54733"
+       style="stroke-width:0.0839957" /><text
+       xml:space="preserve"
+       x="474.832"
+       y="853.78314"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="28.2226px"
+       text-anchor="start"
+       id="text54735"
+       style="font-size:16px;stroke-width:0.0839957">Client</text><text
+       xml:space="preserve"
+       x="441.99191"
+       y="880.77515"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text54737"
+       style="font-size:16px;stroke-width:0.0839957">executeQuery(</text><text
+       xml:space="preserve"
+       x="444.46024"
+       y="899.65179"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text54739"
+       style="font-size:16px;stroke-width:0.0839957">&quot;Select * FROM Names)</text><text
+       xml:space="preserve"
+       x="4.3759999"
+       y="850.17517"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="28.2226px"
+       text-anchor="start"
+       id="text54747"
+       style="font-size:16px;stroke-width:0.0839957">RDBMS Server</text><polyline
+       points=" 90,2115 90,4770"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline54749"
+       transform="matrix(0.08399569,0,0,0.06271347,3.4677161,761.25161)"
+       style="fill:none" /><polyline
+       points=" 2835,2115 2835,4725"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline54751"
+       transform="matrix(0.08399569,0,0,0.06321839,-2.1004529,764.18799)"
+       style="fill:none" /><ellipse
+       stroke="#000000"
+       stroke-width="1.25994px"
+       id="ellipse54755"
+       style="fill:none"
+       ry="41.577866"
+       rx="111.96367"
+       cy="894.72174"
+       cx="123.55388" /><g
+       transform="matrix(0.07746868,-0.03246352,0.03246352,0.07746868,327.4319,916.56838)"
+       id="g54772"
+       style="fill:none"><text
+         xml:space="preserve"
+         x="0"
+         y="0"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="288px"
+         text-anchor="start"
+         id="text54770">Query</text></g><g
+       id="g56141"
+       transform="translate(15,-305.00002)"><g
+         id="g56131"><rect
+           x="75"
+           y="1289.0552"
+           width="60"
+           height="79.999985"
+           stroke="#000000"
+           stroke-width="1.25994px"
+           id="rect54757"
+           style="fill:none" /><rect
+           x="75"
+           y="1274.0552"
+           width="60"
+           height="14.999984"
+           stroke="#000000"
+           stroke-width="1.25994px"
+           id="rect54759"
+           style="fill:none" /><text
+           xml:space="preserve"
+           x="80.975868"
+           y="1284.9236"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="24.1908px"
+           text-anchor="start"
+           id="text54774"
+           style="font-size:16px;stroke-width:0.0839957">Names</text><text
+           xml:space="preserve"
+           x="78.832001"
+           y="1303.8312"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="24.1908px"
+           text-anchor="start"
+           id="text54776"
+           style="font-size:16px;stroke-width:0.0839957">Jim</text><text
+           xml:space="preserve"
+           x="76.096001"
+           y="1337.5538"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="24.1908px"
+           text-anchor="start"
+           id="text54778"
+           style="font-size:16px;stroke-width:0.0839957">...</text><text
+           xml:space="preserve"
+           x="80"
+           y="1359.0552"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="24.1908px"
+           text-anchor="start"
+           id="text54780"
+           style="font-size:16px;stroke-width:0.0839957">Mick</text><text
+           xml:space="preserve"
+           x="79.487999"
+           y="1324.4045"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="24.1908px"
+           text-anchor="start"
+           id="text54782"
+           style="font-size:16px;stroke-width:0.0839957">Eve</text></g></g><g
+       transform="matrix(0.08375445,0.00636136,-0.00636136,0.08375445,259.53157,1041.6803)"
+       id="g54799"
+       style="fill:none"><text
+         xml:space="preserve"
+         x="0"
+         y="0"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="288px"
+         text-anchor="start"
+         id="text54797">Response</text></g><g
+       id="g58757"
+       transform="translate(60.264038,-19.743973)"><rect
+         x="435"
+         y="984.05518"
+         width="140"
+         height="125.00002"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="rect54805"
+         style="fill:none" /><polyline
+         points=" 7785,3825 10125,3825"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline54807"
+         transform="matrix(0.05982906,0,0,0.08399569,-30.769232,682.77165)"
+         style="fill:none" /><text
+         xml:space="preserve"
+         x="439.73596"
+         y="998.79913"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="24.1908px"
+         text-anchor="start"
+         id="text54809"
+         style="font-size:16px;stroke-width:0.0839957">ResultSet</text><text
+         xml:space="preserve"
+         x="530"
+         y="1102.4493"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54811"
+         style="font-size:16px;stroke-width:0.0839957">Mick</text><text
+         xml:space="preserve"
+         x="530"
+         y="1072.2109"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54813"
+         style="font-size:16px;stroke-width:0.0839957">...</text><text
+         xml:space="preserve"
+         x="530"
+         y="1045.7522"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54815"
+         style="font-size:16px;stroke-width:0.0839957">Eve</text><text
+         xml:space="preserve"
+         x="530"
+         y="1019.2936"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54817"
+         style="font-size:16px;stroke-width:0.0839957">Jim</text><g
+         transform="matrix(0,0.08399569,-0.08399569,0,443.06446,1007.9543)"
+         id="g54821"
+         style="fill:none"><text
+           xml:space="preserve"
+           x="0"
+           y="0"
+           fill="#000000"
+           font-family="Courier"
+           font-style="normal"
+           font-weight="bold"
+           font-size="216px"
+           text-anchor="start"
+           id="text54819">next()</text></g><polyline
+         points=" 8220,4095 8760,4095"
+         clip-path="url(#cp2)"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline54828"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4140 8728,4095 8548,4050 "
+         stroke="#ff0000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#ff0000"
+         id="polygon54830"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1019.2936"
+         fill="#ff0000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54832"
+         style="font-size:16px;stroke-width:0.0839957">Jim</text><polyline
+         points=" 8220,4410 8760,4410"
+         clip-path="url(#cp3)"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline54839"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4455 8728,4410 8548,4365 "
+         stroke="#ff0000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#ff0000"
+         id="polygon54841"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1045.7522"
+         fill="#ff0000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54843"
+         style="font-size:16px;stroke-width:0.0839957">Eve</text><polyline
+         points=" 8220,4095 8760,4095"
+         clip-path="url(#cp4)"
+         stroke="#87cfff"
+         stroke-width="15px"
+         id="polyline54850"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4140 8728,4095 8548,4050 "
+         stroke="#87cfff"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#87cfff"
+         id="polygon54852"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1019.2936"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54854"
+         style="font-size:16px;stroke-width:0.0839957">Jim</text><polyline
+         points=" 8220,4725 8760,4725"
+         clip-path="url(#cp5)"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline54861"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4770 8728,4725 8548,4680 "
+         stroke="#ff0000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#ff0000"
+         id="polygon54863"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><polyline
+         points=" 8220,4410 8760,4410"
+         clip-path="url(#cp6)"
+         stroke="#87cfff"
+         stroke-width="15px"
+         id="polyline54870"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4455 8728,4410 8548,4365 "
+         stroke="#87cfff"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#87cfff"
+         id="polygon54872"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1072.2109"
+         fill="#ff0000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54874"
+         style="font-size:16px;stroke-width:0.0839957">...</text><text
+         xml:space="preserve"
+         x="530"
+         y="1045.7522"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54876"
+         style="font-size:16px;stroke-width:0.0839957">Eve</text><polyline
+         points=" 8220,4725 8760,4725"
+         clip-path="url(#cp7)"
+         stroke="#87cfff"
+         stroke-width="15px"
+         id="polyline54883"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,4770 8728,4725 8548,4680 "
+         stroke="#87cfff"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#87cfff"
+         id="polygon54885"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><polyline
+         points=" 8220,5085 8760,5085"
+         clip-path="url(#cp8)"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline54892"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,5130 8728,5085 8548,5040 "
+         stroke="#ff0000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#ff0000"
+         id="polygon54894"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1072.2109"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54896"
+         style="font-size:16px;stroke-width:0.0839957">...</text><text
+         xml:space="preserve"
+         x="530"
+         y="1102.4493"
+         fill="#ff0000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54898"
+         style="font-size:16px;stroke-width:0.0839957">Mick</text><polyline
+         points=" 8220,5085 8760,5085"
+         clip-path="url(#cp9)"
+         stroke="#87cfff"
+         stroke-width="15px"
+         id="polyline54905"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)"
+         style="fill:none" /><polygon
+         points="8548,5130 8728,5085 8548,5040 "
+         stroke="#87cfff"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#87cfff"
+         id="polygon54907"
+         transform="matrix(0.08399569,0,0,0.08399569,-222.1814,667.77165)" /><text
+         xml:space="preserve"
+         x="530"
+         y="1102.4493"
+         fill="#000000"
+         font-family="Courier"
+         font-style="normal"
+         font-weight="bold"
+         font-size="18.1431px"
+         text-anchor="start"
+         id="text54909"
+         style="font-size:16px;stroke-width:0.0839957">Mick</text></g><text
+       xml:space="preserve"
+       x="53.839947"
+       y="1115.5752"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text54911"
+       style="font-size:16px;stroke-width:0.0839957">Persistent data</text><text
+       xml:space="preserve"
+       x="521.19196"
+       y="1115.5752"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text54913"
+       style="font-size:16px;stroke-width:0.0839957">Transient data</text><text
+       xml:space="preserve"
+       transform="translate(0,839.05516)"
+       id="text55878"
+       style="font-weight:bold;font-size:16px;font-family:'DejaVu Serif';-inkscape-font-specification:'DejaVu Serif Bold';white-space:pre;shape-inside:url(#rect55880);display:inline;fill:#003399;stroke:none;stroke-width:1.33333;stroke-dasharray:none" /><path
+       style="fill:none;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none"
+       id="path56253-1"
+       sodipodi:type="arc"
+       sodipodi:cx="123.52733"
+       sodipodi:cy="1060.3949"
+       sodipodi:rx="112.5"
+       sodipodi:ry="37.500015"
+       sodipodi:start="0"
+       sodipodi:end="3.1944982"
+       sodipodi:arc-type="arc"
+       d="m 236.02733,1060.3949 a 112.5,37.500015 0 0 1 -57.97682,32.8016 112.5,37.500015 0 0 1 -114.173801,-1.007 112.5,37.500015 0 0 1 -52.691974,-33.7776"
+       sodipodi:open="true" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85)"
+       d="m 430,889.05516 -275,105"
+       id="path5931-1"
+       sodipodi:nodetypes="cc" /><path
+       style="fill:#000000;stroke:#000000;stroke-width:1.33333;stroke-dasharray:none;marker-end:url(#marker11618-85-1)"
+       d="m 155,1049.0552 330,15"
+       id="path5931-1-3"
+       sodipodi:nodetypes="cc" /></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/jdbcurl.svg b/Doc/DbDevel/Ref/Jdbc/jdbcurl.svg
new file mode 100644
index 0000000000000000000000000000000000000000..39004958b87ffefbff032d6fd7313b7447e6d02e
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/jdbcurl.svg
@@ -0,0 +1,811 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="jdbcurl.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="141.38372"
+     inkscape:cy="177.60942"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><text
+       xml:space="preserve"
+       x="69.439995"
+       y="905.57513"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text74715"
+       style="font-size:16px;stroke-width:0.0839957">1. Protocol / sub protocol definition</text><text
+       xml:space="preserve"
+       x="69.599998"
+       y="958.02051"
+       fill="#0000ff"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text74719"
+       style="font-size:16px;stroke-width:0.0839957">2. Server's DNS name or IP-address</text><text
+       xml:space="preserve"
+       x="69.647995"
+       y="1006.6098"
+       fill="#008f00"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text74725"
+       style="font-size:16px;fill:#00cc00;stroke-width:0.0839957">3. TCP service's port number</text><text
+       xml:space="preserve"
+       x="69.807991"
+       y="1059.0552"
+       fill="#803000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text74731"
+       style="font-size:16px;fill:#ff9900;stroke-width:0.0839957">4. Database within server</text><text
+       xml:space="preserve"
+       x="29.584"
+       y="1105.5752"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="24.1908px"
+       text-anchor="start"
+       id="text74735"
+       style="font-size:16px;stroke-width:0.0839957">URL syntax: http://www.ietf.org/rfc/rfc2396.txt</text><text
+       xml:space="preserve"
+       style="font-weight:bold;font-size:16px;font-family:'DejaVu Serif';-inkscape-font-specification:'DejaVu Serif Bold';fill:#000000;stroke:none;stroke-width:1.33333;stroke-dasharray:none"
+       x="25"
+       y="869.05518"
+       id="text75270"><tspan
+         sodipodi:role="line"
+         id="tspan75268"
+         x="25"
+         y="869.05518"><tspan
+   style="fill:#cc0000"
+   id="tspan75324">jdbc:mysql</tspan>://<tspan
+   style="fill:#003399"
+   id="tspan75428">srv.company.com</tspan>:<tspan
+   style="fill:#00cc00"
+   id="tspan75430">3306</tspan>/<tspan
+   style="fill:#ff9900"
+   id="tspan75432">foo</tspan></tspan></text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/persistProvider.svg b/Doc/DbDevel/Ref/Jdbc/persistProvider.svg
new file mode 100644
index 0000000000000000000000000000000000000000..044432a70a6344c316f78f2beafc1d475280ed24
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/persistProvider.svg
@@ -0,0 +1,834 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="persistProvider.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="141.38372"
+     inkscape:cy="144.48878"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><text
+       xml:space="preserve"
+       x="290"
+       y="969.05518"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="50.4158px"
+       text-anchor="start"
+       id="text83834"
+       style="font-size:24px;stroke-width:0.0840263">JPA</text><g
+       id="g84361"
+       transform="translate(128.86296,-62.180522)"><ellipse
+         cx="-48.862957"
+         cy="932.32977"
+         rx="75.623634"
+         ry="18.905909"
+         fill="#f2f2f2"
+         stroke="#000000"
+         stroke-width="1.26039px"
+         id="ellipse83836" /><text
+         xml:space="preserve"
+         x="-98.018318"
+         y="939.89215"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.133px"
+         text-anchor="start"
+         id="text83838"
+         style="font-size:16px;stroke-width:0.0840263">Hibernate</text></g><g
+       id="g84365"
+       transform="translate(287.46252,-78.524088)"><ellipse
+         cx="272.53748"
+         cy="943.67334"
+         rx="75.623634"
+         ry="18.905909"
+         fill="#f2f2f2"
+         stroke="#000000"
+         stroke-width="1.26039px"
+         id="ellipse83840" /><text
+         xml:space="preserve"
+         x="223.38213"
+         y="951.23566"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.133px"
+         text-anchor="start"
+         id="text83842"
+         style="font-size:16px;stroke-width:0.0840263">OpenJPA</text></g><g
+       id="g84373"
+       transform="translate(230.82794,-104.38407)"><ellipse
+         cx="319.17206"
+         cy="1199.5333"
+         rx="75.623634"
+         ry="18.905909"
+         fill="#f2f2f2"
+         stroke="#000000"
+         stroke-width="1.26039px"
+         id="ellipse83844" /><text
+         xml:space="preserve"
+         x="270.01669"
+         y="1207.0957"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.133px"
+         text-anchor="start"
+         id="text83846"
+         style="font-size:16px;stroke-width:0.0840263">Toplink</text></g><g
+       id="g84369"
+       transform="translate(184.27871,-100.60288)"><ellipse
+         cx="-99.278709"
+         cy="1191.9709"
+         rx="79.404816"
+         ry="22.68709"
+         fill="#f2f2f2"
+         stroke="#000000"
+         stroke-width="1.26039px"
+         id="ellipse83848" /><text
+         xml:space="preserve"
+         x="-159.77762"
+         y="1199.5333"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.133px"
+         text-anchor="start"
+         id="text83850"
+         style="font-size:16px;stroke-width:0.0840263">EclipseLink</text></g></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/persistence.svg b/Doc/DbDevel/Ref/Jdbc/persistence.svg
new file mode 100644
index 0000000000000000000000000000000000000000..4469547c0e6bfb63f1b85569d11106205e3e84ac
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/persistence.svg
@@ -0,0 +1,1407 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="persistence.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.85397724"
+     inkscape:cx="821.45046"
+     inkscape:cy="735.38259"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="55,233.46457"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><rect
+       x="-360"
+       y="390"
+       width="145"
+       height="160"
+       id="rect80399" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 3215,615 3275,675 3215,735 3566,686 3566,665z"
+         id="path76808" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 1415,615 1475,675 1415,735 1766,686 1766,665z"
+         id="path76817" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 5426,2052 5441,2135 5357,2150 5673,2310 5685,2292z"
+         id="path76848" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 6500,615 6560,675 6500,735 6851,686 6851,665z"
+         id="path76877" /></clipPath><clipPath
+       id="cp4"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 1415,5565 1475,5625 1415,5685 1766,5636 1766,5615z"
+         id="path76890" /></clipPath><clipPath
+       id="cp5"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 3215,5565 3275,5625 3215,5685 3566,5636 3566,5615z"
+         id="path76905" /></clipPath><clipPath
+       id="cp6"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 4968,4971 4883,4976 4878,4891 4681,5185 4697,5199z"
+         id="path76928" /></clipPath><clipPath
+       id="cp7"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 z   M 6500,5565 6560,5625 6500,5685 6851,5636 6851,5615z"
+         id="path76953" /></clipPath><defs
+       id="defs76811"><clipPath
+         id="clipPath77002"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 3237,637 60,60 -60,60 351,-49 v -21 z"
+           id="path77000" /></clipPath></defs><defs
+       id="defs76820"><clipPath
+         id="clipPath77009"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 1437,637 60,60 -60,60 351,-49 v -21 z"
+           id="path77007" /></clipPath></defs><defs
+       id="defs76851"><clipPath
+         id="clipPath77027"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 5448,2074 15,83 -84,15 316,160 12,-18 z"
+           id="path77025" /></clipPath></defs><defs
+       id="defs76880"><clipPath
+         id="clipPath77044"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 6522,637 60,60 -60,60 351,-49 v -21 z"
+           id="path77042" /></clipPath></defs><defs
+       id="defs76893"><clipPath
+         id="clipPath77053"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 1437,5587 60,60 -60,60 351,-49 v -21 z"
+           id="path77051" /></clipPath></defs><defs
+       id="defs76908"><clipPath
+         id="clipPath77063"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 3237,5587 60,60 -60,60 351,-49 v -21 z"
+           id="path77061" /></clipPath></defs><defs
+       id="defs76931"><clipPath
+         id="clipPath77077"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 4990,4993 -85,5 -5,-85 -197,294 16,14 z"
+           id="path77075" /></clipPath></defs><defs
+       id="defs76956"><clipPath
+         id="clipPath77092"><path
+           clip-rule="evenodd"
+           d="M -22,-22 H 10822 V 6772 H -22 Z m 6522,5587 60,60 -60,60 351,-49 v -21 z"
+           id="path77090" /></clipPath></defs><clipPath
+       id="cp1-1"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 Z m 1437,637 60,60 -60,60 351,-49 v -21 z"
+         id="path76817-9" /></clipPath><clipPath
+       id="cp1-3"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 Z m 1437,637 60,60 -60,60 351,-49 v -21 z"
+         id="path76817-8" /></clipPath><clipPath
+       id="cp0-0"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 Z m 3237,637 60,60 -60,60 351,-49 v -21 z"
+         id="path76808-5" /></clipPath><clipPath
+       id="cp1-1-6"><path
+         clip-rule="evenodd"
+         d="M -22,-22 H 10822 V 6772 H -22 Z m 1437,637 60,60 -60,60 351,-49 v -21 z"
+         id="path76817-9-6" /></clipPath></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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><text
+       xml:space="preserve"
+       x="2.0085599"
+       y="903.29871"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76798"
+       style="font-size:16px;stroke-width:0.0839957">OS</text><g
+       id="g77928"
+       transform="translate(3.5102002,18.819534)"><polyline
+         points=" 495,675 1755,675"
+         clip-path="url(#cp1)"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76822"
+         transform="matrix(0.03411079,0,0,0.08399569,8.115161,822.35807)"
+         style="fill:none" /><polygon
+         points="1415,615 1475,675 1415,735 1715,675 "
+         stroke="#000000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#000000"
+         id="polygon76824"
+         transform="matrix(0.07855015,0,0,0.08399569,-69.875913,822.35807)" /></g><g
+       id="g78711"><ellipse
+         cx="233.67775"
+         cy="897.87469"
+         rx="166.31146"
+         ry="56.69709"
+         fill="#e5e5e5"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="ellipse76800" /><polyline
+         points=" 3645,495 4635,495"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline76802"
+         transform="matrix(0.08399569,0,0,0.08399569,-80.046143,837.39781)"
+         style="fill:none" /><polyline
+         points=" 3645,1125 4635,1125"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline76804"
+         transform="matrix(0.08399569,0,0,0.08399569,-80.046143,837.39781)"
+         style="fill:none" /><rect
+         x="226.11815"
+         y="856.29681"
+         width="83.155731"
+         height="86.935539"
+         rx="8.8195477"
+         stroke="#ff0000"
+         stroke-width="1.25994px"
+         id="rect76806"
+         style="fill:none" /><polyline
+         points=" 2520,675 3555,675"
+         clip-path="url(#cp0)"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76813"
+         transform="matrix(0.08399569,0,0,0.08399569,-80.046143,837.39781)"
+         style="fill:none" /><polygon
+         points="3515,675 3215,615 3275,675 3215,735 "
+         stroke="#000000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#000000"
+         id="polygon76815"
+         transform="matrix(0.08399569,0,0,0.08399569,-80.046143,837.39781)" /><text
+         xml:space="preserve"
+         x="229.89795"
+         y="928.11316"
+         fill="#ff0000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76826"
+         style="font-size:16px;stroke-width:0.0839957">bix</text><text
+         xml:space="preserve"
+         x="229.89795"
+         y="901.65454"
+         fill="#ff0000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76828"
+         style="font-size:16px;stroke-width:0.0839957">Joe Bix</text><text
+         xml:space="preserve"
+         x="135.4028"
+         y="920.55353"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76830"
+         style="font-size:16px;stroke-width:0.0839957">creates</text><text
+         xml:space="preserve"
+         x="82.485519"
+         y="912.99396"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76832"
+         style="font-size:16px;stroke-width:0.0839957">app</text><text
+         xml:space="preserve"
+         x="74.925903"
+         y="897.87469"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76834"
+         style="font-size:16px;stroke-width:0.0839957">Java-</text><text
+         xml:space="preserve"
+         x="237.45757"
+         y="875.19586"
+         fill="#ff0000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76836"
+         style="font-size:16px;stroke-width:0.0839957">User</text></g><text
+       xml:space="preserve"
+       x="19.375999"
+       y="869.92719"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76838"
+       style="font-size:16px;stroke-width:0.0839957">spawns</text><text
+       xml:space="preserve"
+       x="30"
+       y="924.05518"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76840"
+       style="font-size:16px;stroke-width:0.0839957">jre 1</text><g
+       id="g77924"
+       transform="translate(100.62399,8.8799891)"><path
+         d="m 390.35775,946.03759 a 121.96174,121.96174 0 0 0 136.07302,3.7799"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="path76842"
+         style="fill:none" /><path
+         d="m 390.35775,1021.6338 a 121.96174,121.96174 0 0 0 136.07302,3.7798"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="path76844"
+         style="fill:none" /><ellipse
+         cx="459.06622"
+         cy="934.11029"
+         rx="68.036507"
+         ry="26.458643"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="ellipse76846"
+         style="fill:none" /><polyline
+         points=" 7200,2535 7200,3600"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76857"
+         transform="matrix(0.08399569,0,0,0.08399569,-78.338204,723.02908)"
+         style="fill:none" /><polyline
+         points=" 5580,2490 5580,3555"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76859"
+         transform="matrix(0.08399569,0,0,0.08399569,-78.338204,723.02908)"
+         style="fill:none" /><text
+         xml:space="preserve"
+         x="394.13754"
+         y="1017.854"
+         fill="#ff0000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76861"
+         style="font-size:16px;stroke-width:0.0839957">(Joe Bix,bix)</text><text
+         xml:space="preserve"
+         x="424.37601"
+         y="995.17517"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76863"
+         style="font-size:16px;stroke-width:0.0839957">RDBMS</text></g><polyline
+       points=" 4185,1260 5670,2295"
+       clip-path="url(#cp2)"
+       stroke="#ff0000"
+       stroke-width="15px"
+       id="polyline76853"
+       transform="matrix(0.08168369,-0.01957168,0.01957168,0.08168369,-46.732628,901.74568)"
+       style="fill:none" /><polygon
+       points="5441,2135 5357,2150 5637,2272 5426,2052 "
+       stroke="#ff0000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#ff0000"
+       id="polygon76855"
+       transform="matrix(0.08168369,-0.01957168,0.01957168,0.08168369,-47.288244,901.03806)" /><g
+       transform="matrix(0.07866319,0.02945128,-0.02945128,0.07866319,333.29296,917.92452)"
+       id="g76867"
+       style="fill:none"><text
+         xml:space="preserve"
+         x="0"
+         y="0"
+         fill="#ff0000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="192px"
+         text-anchor="start"
+         id="text76865">save</text></g><g
+       id="g80653"
+       transform="translate(93.567961,331.56802)"><text
+         xml:space="preserve"
+         x="304.64801"
+         y="758.78314"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76869"
+         style="font-size:16px;stroke-width:0.0839957"><tspan
+           sodipodi:role="line"
+           id="tspan80643"
+           x="304.64801"
+           y="758.78314">termi-</tspan><tspan
+           sodipodi:role="line"
+           x="304.64801"
+           y="778.78314"
+           id="tspan80647">nation</tspan><tspan
+           sodipodi:role="line"
+           id="tspan80645"
+           x="304.64801"
+           y="798.78314" /></text></g><g
+       id="g80653-0"
+       transform="translate(95.35199,160.27202)"><text
+         xml:space="preserve"
+         x="304.64801"
+         y="758.78314"
+         fill="#000000"
+         font-family="Palatino"
+         font-style="normal"
+         font-weight="bold"
+         font-size="16.1272px"
+         text-anchor="start"
+         id="text76869-2"
+         style="font-size:16px;stroke-width:0.0839957"><tspan
+           sodipodi:role="line"
+           id="tspan80643-8"
+           x="304.64801"
+           y="758.78314">termi-</tspan><tspan
+           sodipodi:role="line"
+           x="304.64801"
+           y="778.78314"
+           id="tspan80647-3">nation</tspan><tspan
+           sodipodi:role="line"
+           id="tspan80645-8"
+           x="304.64801"
+           y="798.78314" /></text></g><g
+       id="g77915"
+       transform="translate(213.88978,57.903503)"><circle
+         cx="244.18283"
+         cy="839.97119"
+         r="18.899031"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="circle76873"
+         style="fill:none" /><circle
+         cx="244.18283"
+         cy="839.97119"
+         r="11.927388"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="circle76875" /></g><text
+       xml:space="preserve"
+       x="410"
+       y="884.05518"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76886"
+       style="font-size:16px;stroke-width:0.0839957">jre</text><text
+       xml:space="preserve"
+       x="405"
+       y="1044.0552"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76962"
+       style="font-size:16px;stroke-width:0.0839957">jre</text><text
+       xml:space="preserve"
+       x="527.81598"
+       y="858.78314"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76964"
+       style="font-size:16px;stroke-width:0.0839957">Transient Data</text><text
+       xml:space="preserve"
+       x="527.81598"
+       y="1098.7832"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76966"
+       style="font-size:16px;stroke-width:0.0839957">Transient Data</text><text
+       xml:space="preserve"
+       x="504.37601"
+       y="943.78314"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76968"
+       style="font-size:16px;stroke-width:0.0839957">Persistent Data</text><g
+       id="g77928-6"
+       transform="matrix(0.92891818,0,0,1,376.77704,18.819534)"><polyline
+         points=" 495,675 1755,675"
+         clip-path="url(#cp1-1)"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76822-9"
+         transform="matrix(0.03411079,0,0,0.08399569,8.115161,822.35807)"
+         style="fill:none" /><polygon
+         points="1415,615 1475,675 1415,735 1715,675 "
+         stroke="#000000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#000000"
+         id="polygon76824-3"
+         transform="matrix(0.07855015,0,0,0.08399569,-69.875913,822.35807)" /></g><text
+       xml:space="preserve"
+       x="2.2673163"
+       y="1070.2771"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76798-4"
+       style="font-size:16px;stroke-width:0.0839957">OS</text><g
+       id="g77928-0"
+       transform="translate(3.7689561,185.79795)"><polyline
+         points=" 495,675 1755,675"
+         clip-path="url(#cp1-3)"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76822-0"
+         transform="matrix(0.03411079,0,0,0.08399569,8.115161,822.35807)"
+         style="fill:none" /><polygon
+         points="1715,675 1415,615 1475,675 1415,735 "
+         stroke="#000000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#000000"
+         id="polygon76824-4"
+         transform="matrix(0.07855015,0,0,0.08399569,-69.875913,822.35807)" /></g><ellipse
+       cx="233.93651"
+       cy="1064.8531"
+       rx="166.31146"
+       ry="56.69709"
+       fill="#e5e5e5"
+       stroke="#000000"
+       stroke-width="1.25994px"
+       id="ellipse76800-2" /><polyline
+       points=" 3645,495 4635,495"
+       stroke="#ff0000"
+       stroke-width="15px"
+       id="polyline76802-6"
+       transform="matrix(0.08399569,0,0,0.08399569,-79.787387,1004.3762)"
+       style="fill:none" /><polyline
+       points=" 3645,1125 4635,1125"
+       stroke="#ff0000"
+       stroke-width="15px"
+       id="polyline76804-7"
+       transform="matrix(0.08399569,0,0,0.08399569,-79.787387,1004.3762)"
+       style="fill:none" /><rect
+       x="226.37691"
+       y="1023.2752"
+       width="83.155731"
+       height="86.935539"
+       rx="8.8195477"
+       stroke="#ff0000"
+       stroke-width="1.25994px"
+       id="rect76806-5"
+       style="fill:none" /><text
+       xml:space="preserve"
+       x="230.15671"
+       y="1095.0916"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76826-8"
+       style="font-size:16px;stroke-width:0.0839957">bix</text><text
+       xml:space="preserve"
+       x="230.15671"
+       y="1068.6329"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76828-7"
+       style="font-size:16px;stroke-width:0.0839957">Joe Bix</text><text
+       xml:space="preserve"
+       x="82.744278"
+       y="1079.9724"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76832-8"
+       style="font-size:16px;stroke-width:0.0839957">app</text><text
+       xml:space="preserve"
+       x="75.184662"
+       y="1064.8531"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76834-2"
+       style="font-size:16px;stroke-width:0.0839957">Java-</text><text
+       xml:space="preserve"
+       x="237.71632"
+       y="1042.1743"
+       fill="#ff0000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76836-9"
+       style="font-size:16px;stroke-width:0.0839957">User</text><text
+       xml:space="preserve"
+       x="19.634764"
+       y="1036.9056"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76838-9"
+       style="font-size:16px;stroke-width:0.0839957">spawns</text><text
+       xml:space="preserve"
+       x="30.258757"
+       y="1091.0336"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="16.1272px"
+       text-anchor="start"
+       id="text76840-6"
+       style="font-size:16px;stroke-width:0.0839957">jre 2</text><g
+       id="g77915-0"
+       transform="translate(214.14854,224.88192)"><circle
+         cx="244.18283"
+         cy="839.97119"
+         r="18.899031"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="circle76873-2"
+         style="fill:none" /><circle
+         cx="244.18283"
+         cy="839.97119"
+         r="11.927388"
+         fill="#000000"
+         stroke="#000000"
+         stroke-width="1.25994px"
+         id="circle76875-7" /></g><g
+       id="g77928-6-6"
+       transform="matrix(0.92891818,0,0,1,377.0358,185.79795)"><polyline
+         points=" 495,675 1755,675"
+         clip-path="url(#cp1-1-6)"
+         stroke="#000000"
+         stroke-width="15px"
+         id="polyline76822-9-1"
+         transform="matrix(0.03411079,0,0,0.08399569,8.115161,822.35807)"
+         style="fill:none" /><polygon
+         points="1715,675 1415,615 1475,675 1415,735 "
+         stroke="#000000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#000000"
+         id="polygon76824-3-3"
+         transform="matrix(0.07855015,0,0,0.08399569,-69.875913,822.35807)" /></g><text
+       xml:space="preserve"
+       transform="translate(0,839.05516)"
+       id="text80397"
+       style="font-weight:bold;font-size:16px;font-family:'DejaVu Serif';-inkscape-font-specification:'DejaVu Serif Bold';white-space:pre;shape-inside:url(#rect80399);display:inline;fill:#ff9900;stroke:none;stroke-width:1.33333;stroke-dasharray:none" /><g
+       id="g82334"
+       transform="rotate(27.661801,231.74892,2427.1681)"><polyline
+         points=" 6120,3600 4696,5184"
+         clip-path="url(#cp6)"
+         stroke="#ff0000"
+         stroke-width="15px"
+         id="polyline76933"
+         transform="matrix(0.08399569,0,0,0.08399569,-724.87671,737.40637)"
+         style="fill:none" /><polygon
+         points="4878,4891 4723,5154 4968,4971 4883,4976 "
+         stroke="#ff0000"
+         stroke-width="15px"
+         stroke-miterlimit="8"
+         fill="#ff0000"
+         id="polygon76935"
+         transform="matrix(0.08399569,0,0,0.08399569,-724.87671,737.40637)" /><g
+         transform="matrix(0.05620409,-0.06242096,0.06242096,0.05620409,-286.41921,1115.387)"
+         id="g76943"
+         style="fill:none"><text
+           xml:space="preserve"
+           x="0"
+           y="0"
+           fill="#ff0000"
+           font-family="Palatino"
+           font-style="normal"
+           font-weight="bold"
+           font-size="192px"
+           text-anchor="start"
+           id="text76941">load</text></g></g></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/sqlTransport.svg b/Doc/DbDevel/Ref/Jdbc/sqlTransport.svg
new file mode 100644
index 0000000000000000000000000000000000000000..a36a02049e9797192a310965cd12a95e6ad5ee42
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/sqlTransport.svg
@@ -0,0 +1,918 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="sqlTransport.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="141.38372"
+     inkscape:cy="144.48878"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="0"
+     inkscape:window-y="32"
+     inkscape:window-maximized="1"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7233 V 5412 H 438 z   M 4601,2250 4691,2340 4601,2430 5148,2358 5148,2322z"
+         id="path85423" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7233 V 5412 H 438 z   M 6165,3161 6075,3251 5985,3161 6057,3708 6093,3708z"
+         id="path85440" /></clipPath><defs
+       id="defs85426"><clipPath
+         id="clipPath85475"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7233 V 5412 H 438 Z m 4163,1362 90,90 -90,90 547,-72 v -36 z"
+           id="path85473" /></clipPath></defs><defs
+       id="defs85443"><clipPath
+         id="clipPath85486"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7233 V 5412 H 438 Z m 5727,2273 -90,90 -90,-90 72,547 h 36 z"
+           id="path85484" /></clipPath></defs></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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><rect
+       x="2.4403224"
+       y="903.19312"
+       width="234.35013"
+       height="124.73474"
+       rx="8.8196287"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect85407"
+       style="fill:none" /><text
+       xml:space="preserve"
+       x="10"
+       y="854.05518"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85411"
+       style="font-size:16px;stroke-width:0.0839965">Application</text><rect
+       x="369.08487"
+       y="906.97296"
+       width="195.91513"
+       height="207.0822"
+       rx="8.8196287"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect85413"
+       style="fill:none" /><text
+       xml:space="preserve"
+       x="433.34213"
+       y="857.83502"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85415"
+       style="font-size:16px;stroke-width:0.0839965">RDBMS</text><text
+       xml:space="preserve"
+       x="10"
+       y="933.43182"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85417"
+       style="font-size:16px;stroke-width:0.0839965">INSERT INTO ...</text><text
+       xml:space="preserve"
+       x="21.339523"
+       y="956.1109"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85419"
+       style="font-size:16px;stroke-width:0.0839965">VALUES('Jim',</text><text
+       xml:space="preserve"
+       x="21.339523"
+       y="982.56976"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85421"
+       style="font-size:16px;stroke-width:0.0839965">'jim@q.com')</text><polyline
+       points=" 3105,2340 5130,2340"
+       clip-path="url(#cp0)"
+       stroke="#008f00"
+       stroke-width="30px"
+       id="polyline85428"
+       transform="matrix(0.11198218,0,0,0.08399646,-172.70467,743.76339)"
+       style="fill:none" /><polygon
+       points="4691,2340 4601,2430 5051,2340 4601,2250 "
+       stroke="#008f00"
+       stroke-width="30px"
+       stroke-miterlimit="8"
+       fill="#008f00"
+       id="polygon85430"
+       transform="matrix(0.08399646,0,0,0.08399646,-39.027394,742.50344)" /><rect
+       x="395.54376"
+       y="922.09229"
+       width="151.19363"
+       height="41.578247"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect85432"
+       style="fill:none" /><text
+       xml:space="preserve"
+       x="406.88327"
+       y="948.55121"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85434"
+       style="font-size:16px;stroke-width:0.0839965">Interpreter</text><text
+       xml:space="preserve"
+       x="235"
+       y="894.05518"
+       fill="#008f00"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85436"
+       style="font-size:16px;stroke-width:0.0839965">JDBC Statement</text><rect
+       x="393.45663"
+       y="1034.1163"
+       width="151.19363"
+       height="64.257294"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect85438"
+       style="fill:none" /><polyline
+       points=" 6075,2655 6075,3690"
+       clip-path="url(#cp1)"
+       stroke="#000000"
+       stroke-width="30px"
+       id="polyline85445"
+       transform="matrix(0.08399646,0,0,0.06312227,-40.278494,798.79976)"
+       style="fill:none" /><polygon
+       points="6075,3251 5985,3161 6075,3611 6165,3161 "
+       stroke="#000000"
+       stroke-width="30px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon85447"
+       transform="matrix(0.08399646,0,0,0.08399646,-40.278494,721.77399)" /><text
+       xml:space="preserve"
+       x="408.57599"
+       y="1060.5752"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85449"
+       style="font-size:16px;stroke-width:0.0839965">Low-level</text><text
+       xml:space="preserve"
+       x="408.57599"
+       y="1087.0341"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text85451"
+       style="font-size:16px;stroke-width:0.0839965">calls, AST</text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/Ref/Jdbc/sqlTransportPrepare.svg b/Doc/DbDevel/Ref/Jdbc/sqlTransportPrepare.svg
new file mode 100644
index 0000000000000000000000000000000000000000..5726151652c42e4678cb0bba0a37cf8a7baed657
--- /dev/null
+++ b/Doc/DbDevel/Ref/Jdbc/sqlTransportPrepare.svg
@@ -0,0 +1,1023 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   sodipodi:docname="sqlTransportPrepare.svg"
+   inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+   version="1.2"
+   id="svg2"
+   height="75mm"
+   width="170mm"
+   xml:space="preserve"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:sozi="http://sozi.baierouge.fr"><sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.4154124"
+     inkscape:cx="141.79773"
+     inkscape:cy="144.07478"
+     inkscape:document-units="mm"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:window-width="3840"
+     inkscape:window-height="2091"
+     inkscape:window-x="754"
+     inkscape:window-y="32"
+     inkscape:window-maximized="0"
+     showguides="true"
+     inkscape:guide-bbox="true"
+     units="mm"
+     inkscape:showpageshadow="2"
+     inkscape:pagecheckerboard="0"
+     inkscape:deskcolor="#d1d1d1"><inkscape:grid
+       type="xygrid"
+       id="grid1569"
+       originx="0"
+       originy="0" /><sodipodi:guide
+       position="0,600"
+       orientation="1,0"
+       id="guide13623"
+       inkscape:locked="false" /></sodipodi:namedview><defs
+     id="defs4"><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker11618"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend"><path
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path11616"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker4887"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path4627"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6797"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6799"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker6778"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         id="path6514"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lstart"
+       style="overflow:visible"><path
+         id="path3841"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM"><path
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path3914"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"><path
+         id="path3844"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM"
+       style="overflow:visible"><path
+         id="path3923"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMH"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMH"
+       style="overflow:visible"><path
+         id="path4656"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendB"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendB"
+       style="overflow:visible"><path
+         id="path4659"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMU"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMU"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path5221"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lend3"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend3"
+       style="overflow:visible"><path
+         id="path5224"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMo"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMo"
+       style="overflow:visible"><path
+         id="path5799"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendO"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendO"
+       style="overflow:visible"><path
+         id="path5802"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondM1"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondM1"
+       style="overflow:visible"><path
+         id="path6393"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendV"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendV"
+       style="overflow:visible"><path
+         id="path6396"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMN"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMN"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path7813"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartP"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartP"
+       style="overflow:visible"><path
+         id="path7816"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMb"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMb"><path
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path9491"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendX"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendX"
+       style="overflow:visible"><path
+         id="path9494"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareM8"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareM8"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path10143"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendT"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendT"
+       style="overflow:visible"><path
+         id="path10146"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNT"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNT"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12195"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LstartPJ"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LstartPJ"
+       style="overflow:visible"><path
+         id="path12198"
+         d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       style="overflow:visible"
+       id="SquareMNTL"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="SquareMNTL"><path
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.426667pt"
+         d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z"
+         id="path12907"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lendx"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lendx"
+       style="overflow:visible"><path
+         id="path12910"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="DiamondMoY"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DiamondMoY"
+       style="overflow:visible"><path
+         id="path13187"
+         d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.426667pt"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1LendOe"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1LendOe"
+       style="overflow:visible"><path
+         id="path13190"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><linearGradient
+       id="linearGradient3928-8"><stop
+         offset="0"
+         style="stop-color:#7c7c7c"
+         id="stop3930-2" /><stop
+         offset="1"
+         style="stop-color:#e6e3e3"
+         id="stop3932-0" /></linearGradient><linearGradient
+       id="linearGradient8877"><stop
+         style="stop-color:#cecece;stop-opacity:1;"
+         offset="0"
+         id="stop8879" /><stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop8881" /></linearGradient><linearGradient
+       id="linearGradient8869"><stop
+         id="stop8871"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop8873"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:1;" /></linearGradient><linearGradient
+       id="linearGradient7421"><stop
+         id="stop7423"
+         offset="0"
+         style="stop-color:#000000;stop-opacity:1;" /><stop
+         id="stop7425"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0;" /></linearGradient><linearGradient
+       id="linearGradient7405"><stop
+         style="stop-color:#9e9e9e;stop-opacity:1;"
+         offset="0"
+         id="stop7407" /><stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop7409" /></linearGradient><linearGradient
+       id="linearGradient7378"><stop
+         id="stop7380"
+         offset="0"
+         style="stop-color:#9e9e9e;stop-opacity:1;" /><stop
+         id="stop7382"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" /></linearGradient><inkscape:perspective
+       id="perspective6864"
+       inkscape:persp3d-origin="32 : 21.333333 : 1"
+       inkscape:vp_z="64 : 32 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 32 : 1"
+       sodipodi:type="inkscape:persp3d" /><filter
+       id="imagebot_16"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-6"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-1"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-8"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-7"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-9"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-2"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-2"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-8"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-9"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-73"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-6"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-1"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_16-0"><feGaussianBlur
+         id="imagebot_21-7"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-5"
+       y2="-235.34229"
+       xlink:href="#linearGradient3928-8"
+       x2="33.162106"
+       y1="-192.16943"
+       x1="32.287571"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       style="color-interpolation-filters:sRGB"
+       id="imagebot_12-0"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"><feGaussianBlur
+         id="imagebot_18-4"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-8"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_16-02"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_21-9"
+         stdDeviation="1.2625" /></filter><linearGradient
+       id="imagebot_14-4"
+       y2="0.73097426"
+       xlink:href="#linearGradient3928-8"
+       x2="36.048218"
+       y1="43.90382"
+       x1="35.173683"
+       gradientTransform="scale(0.90019155,1.1108747)"
+       gradientUnits="userSpaceOnUse" /><filter
+       id="imagebot_12-3"
+       width="1.0832"
+       y="-0.1075"
+       x="-0.041609999"
+       height="1.215"
+       style="color-interpolation-filters:sRGB"><feGaussianBlur
+         id="imagebot_18-5"
+         stdDeviation="0.5375" /></filter><linearGradient
+       id="imagebot_9-17"
+       y2="-245.02541"
+       xlink:href="#linearGradient3928-8"
+       x2="34.572056"
+       y1="-254.4969"
+       x1="43.709675"
+       gradientUnits="userSpaceOnUse" /><marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker6793-6"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend"><path
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         id="path6795-8"
+         inkscape:connector-curvature="0" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-0"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-68"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-9"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-2"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-4"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-9"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472-6"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-8"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-8"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker17735"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path17472"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1"
+         transform="matrix(0.8,0,0,0.8,10,0)" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker2318-3"
+       style="overflow:visible"
+       inkscape:isstock="true"><path
+         inkscape:connector-curvature="0"
+         id="path2316-6"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt;stroke-opacity:1" /></marker><marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-6"
+       style="overflow:visible"><path
+         id="path3844-5"
+         d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:0.853333pt"
+         inkscape:connector-curvature="0" /></marker><clipPath
+       id="cp0"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 4196,1665 4286,1755 4196,1845 4743,1773 4743,1737z"
+         id="path87376" /></clipPath><clipPath
+       id="cp1"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 5955,2360 5895,2420 5835,2360 5885,2711 5906,2711z"
+         id="path87393" /></clipPath><clipPath
+       id="cp2"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 6598,3875 6595,3790 6680,3787 6389,3585 6375,3601z"
+         id="path87404" /></clipPath><clipPath
+       id="cp3"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 5786,4339 5870,4324 5884,4408 6045,4092 6027,4080z"
+         id="path87413" /></clipPath><clipPath
+       id="cp4"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 4864,2728 4852,2855 4725,2842 5127,3220 5155,3198z"
+         id="path87424" /></clipPath><clipPath
+       id="cp5"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 4910,3290 4885,3415 4760,3390 5125,3805 5155,3785z"
+         id="path87435" /></clipPath><clipPath
+       id="cp6"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 5010,3143 5029,3226 4946,3244 5268,3389 5279,3372z"
+         id="path87454" /></clipPath><clipPath
+       id="cp7"><path
+         clip-rule="evenodd"
+         d="M 438,888 H 7265 V 5412 H 438 z   M 4801,3813 4853,3880 4785,3932 5139,3927 5142,3906z"
+         id="path87465" /></clipPath><defs
+       id="defs87379"><clipPath
+         id="clipPath87519"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 3758,777 90,90 -90,90 547,-72 v -36 z"
+           id="path87517" /></clipPath></defs><defs
+       id="defs87396"><clipPath
+         id="clipPath87530"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 5517,1472 -60,60 -60,-60 50,351 h 21 z"
+           id="path87528" /></clipPath></defs><defs
+       id="defs87407"><clipPath
+         id="clipPath87538"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 6160,2987 -3,-85 85,-3 -291,-202 -14,16 z"
+           id="path87536" /></clipPath></defs><defs
+       id="defs87416"><clipPath
+         id="clipPath87545"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 5348,3451 84,-15 14,84 161,-316 -18,-12 z"
+           id="path87543" /></clipPath></defs><defs
+       id="defs87427"><clipPath
+         id="clipPath87553"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 4426,1840 -12,127 -127,-13 402,378 28,-22 z"
+           id="path87551" /></clipPath></defs><defs
+       id="defs87438"><clipPath
+         id="clipPath87561"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 4472,2402 -25,125 -125,-25 365,415 30,-20 z"
+           id="path87559" /></clipPath></defs><defs
+       id="defs87457"><clipPath
+         id="clipPath87573"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 4572,2255 19,83 -83,18 322,145 11,-17 z"
+           id="path87571" /></clipPath></defs><defs
+       id="defs87468"><clipPath
+         id="clipPath87581"><path
+           clip-rule="evenodd"
+           d="M 438,888 H 7265 V 5412 H 438 Z m 4363,2925 52,67 -68,52 354,-5 3,-21 z"
+           id="path87579" /></clipPath></defs></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" /></cc:Work></rdf:RDF></metadata><g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-839.05516)"><text
+       xml:space="preserve"
+       x="23.672001"
+       y="856.07916"
+       fill="#008f00"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87368"
+       style="font-size:16px;stroke-width:0.0839965">INSERT INTO ...VALUES (<tspan
+   style="fill:#ffcc00"
+   id="tspan88383">?, ?</tspan>)</text><rect
+       x="499.37601"
+       y="844.92719"
+       width="90"
+       height="25.000015"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect87372"
+       style="fill:none" /><text
+       xml:space="preserve"
+       x="504.37601"
+       y="859.92719"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87374"
+       style="font-size:16px;stroke-width:0.0839965">Interpreter</text><polyline
+       points=" 3285,1755 4725,1755"
+       clip-path="url(#cp0)"
+       stroke="#008f00"
+       stroke-width="30px"
+       id="polyline87381"
+       transform="matrix(0.16319444,0,0,0.08399646,-241.09375,706.64137)"
+       style="fill:none" /><polygon
+       points="4196,1845 4646,1755 4196,1665 4286,1755 "
+       stroke="#008f00"
+       stroke-width="30px"
+       stroke-miterlimit="8"
+       fill="#008f00"
+       id="polygon87383"
+       transform="matrix(0.08399646,0,0,0.08399646,98.65165,707.86153)" /><text
+       xml:space="preserve"
+       x="295.62396"
+       y="869.92719"
+       fill="#008f00"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87385"
+       style="font-size:16px;stroke-width:0.0839965">PreparedStatement</text><rect
+       x="473.72617"
+       y="939.90063"
+       width="109.61538"
+       height="26.458885"
+       fill="#c9e9ff"
+       stroke="#000000"
+       stroke-width="0.671972px"
+       id="rect87387"
+       style="fill:#ffcc00" /><rect
+       x="473.72617"
+       y="985.25873"
+       width="109.61538"
+       height="26.458885"
+       fill="#c9e9ff"
+       stroke="#000000"
+       stroke-width="0.671972px"
+       id="rect87389"
+       style="fill:#ffcc00" /><rect
+       x="469.37601"
+       y="914.92719"
+       width="120"
+       height="104.99998"
+       stroke="#000000"
+       stroke-width="2.51989px"
+       id="rect87391"
+       style="fill:none" /><polyline
+       points=" 5895,2025 5895,2700"
+       clip-path="url(#cp1)"
+       stroke="#000000"
+       stroke-width="15px"
+       id="polyline87398"
+       transform="matrix(0.08399646,0,0,0.06195105,49.216868,746.1783)"
+       style="fill:none" /><polygon
+       points="5835,2360 5895,2660 5955,2360 5895,2420 "
+       stroke="#000000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#000000"
+       id="polygon87400"
+       transform="matrix(0.08399646,0,0,0.08399646,49.216868,686.65571)" /><text
+       xml:space="preserve"
+       x="481.28586"
+       y="928.5611"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87402"
+       style="font-size:16px;stroke-width:0.0839965">AST</text><text
+       xml:space="preserve"
+       x="75.127998"
+       y="955.77515"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87446"
+       style="font-size:16px;stroke-width:0.0839965">p.setString(<tspan
+   style="fill:#ffcc00"
+   id="tspan88591">1</tspan>, <tspan
+   style="fill:#cc0000"
+   id="tspan88379">&quot;Jim&quot;</tspan>)</text><text
+       xml:space="preserve"
+       x="477.50601"
+       y="962.57977"
+       fill="#ff0000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87450"
+       style="font-size:16px;stroke-width:0.0839965">Jim</text><path
+       d="m 4050,3060 c 410.3813,-172.4594 1481.855,-231.9857 2077.1182,-53.4067"
+       clip-path="url(#cp6)"
+       stroke="#ff0000"
+       stroke-width="15px"
+       id="path87459"
+       transform="matrix(0.08399646,0,0,0.08399646,-59.656237,691.51197)"
+       style="fill:none"
+       sodipodi:nodetypes="cc" /><polygon
+       points="4946,3244 5231,3354 5010,3143 5029,3226 "
+       stroke="#ff0000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#ff0000"
+       id="polygon87461"
+       transform="matrix(0.08399646,0,0,0.08399646,32.581803,673.08258)" /><text
+       xml:space="preserve"
+       x="75.127998"
+       y="986.01385"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87463"
+       style="font-size:16px;stroke-width:0.0839965">p.setString(<tspan
+   style="fill:#ffcc00"
+   id="tspan88593">2</tspan>, <tspan
+   style="fill:#cc0000"
+   id="tspan88381">&quot;j@f.com&quot;</tspan>)</text><path
+       d="m 4007.11,3592.9348 c 394.608,137.3991 917.3684,91.4211 1453.1053,210.4737"
+       clip-path="url(#cp7)"
+       stroke="#ff0000"
+       stroke-width="15px"
+       id="path87470"
+       transform="matrix(0.08399646,0,0,0.08399646,-13.638756,679.58231)"
+       style="fill:none"
+       sodipodi:nodetypes="cc" /><polygon
+       points="5091,3910 4801,3813 4853,3880 4785,3932 "
+       stroke="#ff0000"
+       stroke-width="15px"
+       stroke-miterlimit="8"
+       fill="#ff0000"
+       id="polygon87472"
+       transform="matrix(0.08399646,0,0,0.08399646,40.225481,674.70504)" /><text
+       xml:space="preserve"
+       x="473.72617"
+       y="1004.1579"
+       fill="#ff0000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87480"
+       style="font-size:16px;stroke-width:0.0839965">j@f.com</text><text
+       xml:space="preserve"
+       x="175.48802"
+       y="1059.7992"
+       fill="#000000"
+       font-family="Palatino"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87482"
+       style="font-size:16px;stroke-width:0.0839965">Finally:</text><text
+       xml:space="preserve"
+       x="179.26787"
+       y="1093.8177"
+       fill="#000000"
+       font-family="Courier"
+       font-style="normal"
+       font-weight="bold"
+       font-size="18.1432px"
+       text-anchor="start"
+       id="text87484"
+       style="font-size:16px;stroke-width:0.0839965">p.executeUpdate()</text></g><script
+     sozi:version="14.10-05142318"
+     id="sozi-script">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
+     sozi:version="14.10-05142318"
+     id="sozi-style">#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><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="1"
+     sozi:title="Gcd implementation"
+     sozi:refid="rect10351" /><sozi:frame
+     sozi:refid="rect10841"
+     sozi:title="Gcd maven packaging"
+     sozi:sequence="2"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="3"
+     sozi:title="Using Math.getGcd()"
+     sozi:refid="rect11089" /><sozi:frame
+     sozi:refid="rect11381"
+     sozi:title="Fraction project"
+     sozi:sequence="4"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /><sozi:frame
+     sozi:transition-path-hide="true"
+     sozi:transition-profile="linear"
+     sozi:transition-zoom-percent="0.0"
+     sozi:transition-duration-ms="1000.0"
+     sozi:timeout-ms="5000.0"
+     sozi:timeout-enable="false"
+     sozi:show-in-frame-list="true"
+     sozi:clip="true"
+     sozi:hide="true"
+     sozi:sequence="5"
+     sozi:title="Maven dependency definition"
+     sozi:refid="rect11637" /><sozi:frame
+     sozi:refid="rect11895"
+     sozi:title="Fraction depends on Gcd"
+     sozi:sequence="6"
+     sozi:hide="true"
+     sozi:clip="true"
+     sozi:show-in-frame-list="true"
+     sozi:timeout-enable="false"
+     sozi:timeout-ms="5000"
+     sozi:transition-duration-ms="1000"
+     sozi:transition-zoom-percent="0"
+     sozi:transition-profile="linear"
+     sozi:transition-path-hide="true" /></svg>
diff --git a/Doc/DbDevel/dbDevel.xml b/Doc/DbDevel/dbDevel.xml
index 2a76a8a0421576a3e493d1781cace3ad7f56678c..35dc772fb8c040b336a2ae2bee26817e5e3daf80 100644
--- a/Doc/DbDevel/dbDevel.xml
+++ b/Doc/DbDevel/dbDevel.xml
@@ -1982,7 +1982,7 @@ INSERT INTO User VALUES('Joe Bix', 'bix');</programlisting>
 
         <mediaobject>
           <imageobject>
-            <imagedata fileref="Ref/Jdbc/persistence.fig" scale="65"/>
+            <imagedata fileref="Ref/Jdbc/persistence.svg" scale="65"/>
           </imageobject>
         </mediaobject>
       </figure>
@@ -2054,7 +2054,7 @@ INSERT INTO User VALUES('Joe Bix', 'bix');</programlisting>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/clientserv.fig"/>
+              <imagedata fileref="Ref/Jdbc/clientserv.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2088,7 +2088,7 @@ INSERT INTO User VALUES('Joe Bix', 'bix');</programlisting>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcThreeTier.fig"/>
+              <imagedata fileref="Ref/Jdbc/jdbcThreeTier.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2109,7 +2109,7 @@ INSERT INTO User VALUES('Joe Bix', 'bix');</programlisting>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcFourTier.fig"/>
+              <imagedata fileref="Ref/Jdbc/jdbcFourTier.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2171,7 +2171,7 @@ INSERT INTO User VALUES('Joe Bix', 'bix');</programlisting>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcurl.fig" scale="65"/>
+              <imagedata fileref="Ref/Jdbc/jdbcurl.svg" scale="65"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2348,7 +2348,7 @@ postgresql      5432/udp       postgres</screen>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcarch.fig"/>
+              <imagedata fileref="Ref/Jdbc/jdbcarch.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2563,7 +2563,7 @@ postgresql      5432/udp       postgres</screen>
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcObjectRelation.fig"/>
+              <imagedata fileref="Ref/Jdbc/jdbcObjectRelation.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -2947,7 +2947,7 @@ goik@goiki Minimum&gt; java -jar /.../Jdbc/Insert/Minimum/target/insert_user-0.1
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/externalize.fig"/>
+              <imagedata fileref="Ref/Jdbc/externalize.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -3714,7 +3714,7 @@ public someClass {
 
             <mediaobject>
               <imageobject>
-                <imagedata fileref="Ref/Jdbc/heartland.fig"/>
+                <imagedata fileref="Ref/Jdbc/heartland.svg"/>
               </imageobject>
             </mediaobject>
           </figure>
@@ -3902,7 +3902,7 @@ java.sql.SQLSyntaxErrorException: Table 'hdm.Person' doesn't exist
 
             <mediaobject>
               <imageobject>
-                <imagedata fileref="Ref/Jdbc/filtering.fig"/>
+                <imagedata fileref="Ref/Jdbc/filtering.svg"/>
               </imageobject>
             </mediaobject>
           </figure>
@@ -4199,7 +4199,7 @@ public class RegexpPrimer {
 
             <mediaobject>
               <imageobject>
-                <imagedata fileref="Ref/Jdbc/sqlTransport.fig"/>
+                <imagedata fileref="Ref/Jdbc/sqlTransport.svg"/>
               </imageobject>
             </mediaobject>
           </figure>
@@ -4282,7 +4282,7 @@ INSERT INTO Person VALUES ('Pete', 'p@rr.com')
 
             <mediaobject>
               <imageobject>
-                <imagedata fileref="Ref/Jdbc/sqlTransportPrepare.fig"/>
+                <imagedata fileref="Ref/Jdbc/sqlTransportPrepare.svg"/>
               </imageobject>
             </mediaobject>
           </figure>
@@ -4513,7 +4513,7 @@ ResultSet rs = statement.executeQuery() <co
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcReadWrite.fig"/>
+              <imagedata fileref="Ref/Jdbc/jdbcReadWrite.svg"/>
             </imageobject>
           </mediaobject>
         </figure>
@@ -4540,7 +4540,7 @@ ResultSet rs = statement.executeQuery() <co
 
           <mediaobject>
             <imageobject>
-              <imagedata fileref="Ref/Jdbc/jdbcread.fig" scale="65"/>
+              <imagedata fileref="Ref/Jdbc/jdbcread.svg" scale="65"/>
             </imageobject>
           </mediaobject>
         </figure>