diff --git a/Sda2/Ref/Fig/concurrentOptimistic.svg b/Sda2/Ref/Fig/concurrentOptimistic.svg index a20490295c7da29707c6000c2bd13f48b3e49a53..ccd25b336e7f6c82501c8e5e4178ae07c213032e 100644 --- a/Sda2/Ref/Fig/concurrentOptimistic.svg +++ b/Sda2/Ref/Fig/concurrentOptimistic.svg @@ -45,548 +45,548 @@ fit-margin-right="0" fit-margin-bottom="0"> <inkscape:grid - originy="-264.83011px" - originx="-36.03125px" - snapvisiblegridlinesonly="true" - enabled="true" - visible="true" - empspacing="5" + type="xygrid" id="grid4604" - type="xygrid" /> + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" + originx="-36.03125px" + originy="-264.83011px" /> </sodipodi:namedview> <defs id="defs4"> <marker - style="overflow:visible" - id="DiamondMend" - refX="0" - refY="0" - orient="auto" - inkscape:stockid="DiamondMend"> - <path - inkscape:connector-curvature="0" - transform="matrix(0.4,0,0,0.4,-2.6,0)" - style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" - id="path4249" /> - </marker> - <marker - inkscape:stockid="Arrow1Mend" + inkscape:stockid="DiamondMend" orient="auto" refY="0" refX="0" - id="Arrow1Mend" + id="DiamondMend" style="overflow:visible"> <path - inkscape:connector-curvature="0" - id="path4158" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4249" + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + transform="matrix(0.4,0,0,0.4,-2.6,0)" + inkscape:connector-curvature="0" /> </marker> <marker style="overflow:visible" - id="EmptyTriangleOutL" + id="Arrow1Mend" refX="0" refY="0" orient="auto" - inkscape:stockid="EmptyTriangleOutL"> + inkscape:stockid="Arrow1Mend"> <path - inkscape:connector-curvature="0" - transform="matrix(0.8,0,0,0.8,-4.8,0)" - style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" - id="path4309" /> + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4158" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Lstart" + inkscape:stockid="EmptyTriangleOutL" orient="auto" refY="0" refX="0" - id="Arrow1Lstart" + id="EmptyTriangleOutL" style="overflow:visible"> <path - id="path3841" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - transform="matrix(0.8,0,0,0.8,10,0)" + id="path4309" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" + style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + transform="matrix(0.8,0,0,0.8,-4.8,0)" inkscape:connector-curvature="0" /> </marker> <marker style="overflow:visible" - id="SquareM" + id="Arrow1Lstart" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareM"> + inkscape:stockid="Arrow1Lstart"> <path - transform="scale(0.4,0.4)" + inkscape:connector-curvature="0" + transform="matrix(0.8,0,0,0.8,10,0)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path3914" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path3841" /> </marker> <marker - inkscape:stockid="Arrow1Lend" + inkscape:stockid="SquareM" orient="auto" refY="0" refX="0" - id="Arrow1Lend" + id="SquareM" style="overflow:visible"> <path - id="path3844" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path3914" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker - inkscape:stockid="DiamondM" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1Lend" refX="0" - id="DiamondM" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> <path - id="path3923" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - transform="scale(0.4,0.4)" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path3844" /> </marker> <marker - inkscape:stockid="DiamondMH" - orient="auto" - refY="0" + style="overflow:visible" + id="DiamondM" refX="0" - id="DiamondMH" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="DiamondM"> <path - id="path4656" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" - style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" + inkscape:connector-curvature="0" transform="scale(0.4,0.4)" - inkscape:connector-curvature="0" /> + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + id="path3923" /> </marker> <marker - inkscape:stockid="Arrow1LendB" - orient="auto" - refY="0" + style="overflow:visible" + id="DiamondMH" refX="0" - id="Arrow1LendB" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="DiamondMH"> <path - id="path4659" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + transform="scale(0.4,0.4)" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + id="path4656" /> </marker> <marker style="overflow:visible" - id="SquareMU" + id="Arrow1LendB" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareMU"> + inkscape:stockid="Arrow1LendB"> <path - transform="scale(0.4,0.4)" - style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path5221" - inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4659" /> </marker> <marker - inkscape:stockid="Arrow1Lend3" + inkscape:stockid="SquareMU" orient="auto" refY="0" refX="0" - id="Arrow1Lend3" + id="SquareMU" style="overflow:visible"> <path - id="path5224" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path5221" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker - inkscape:stockid="DiamondMo" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1Lend3" refX="0" - id="DiamondMo" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend3"> <path - id="path5799" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="scale(0.4,0.4)" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path5224" /> </marker> <marker - inkscape:stockid="Arrow1LendO" - orient="auto" - refY="0" + style="overflow:visible" + id="DiamondMo" refX="0" - id="Arrow1LendO" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="DiamondMo"> <path - id="path5802" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + transform="scale(0.4,0.4)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + id="path5799" /> </marker> <marker - inkscape:stockid="DiamondM1" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1LendO" refX="0" - id="DiamondM1" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1LendO"> <path - id="path6393" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="scale(0.4,0.4)" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path5802" /> </marker> <marker - inkscape:stockid="Arrow1LendV" - orient="auto" - refY="0" + style="overflow:visible" + id="DiamondM1" refX="0" - id="Arrow1LendV" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="DiamondM1"> <path - id="path6396" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + transform="scale(0.4,0.4)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + id="path6393" /> </marker> <marker style="overflow:visible" - id="SquareMN" + id="Arrow1LendV" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareMN"> + inkscape:stockid="Arrow1LendV"> <path - transform="scale(0.4,0.4)" + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path7813" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6396" /> </marker> <marker - inkscape:stockid="Arrow1LstartP" + inkscape:stockid="SquareMN" orient="auto" refY="0" refX="0" - id="Arrow1LstartP" + id="SquareMN" style="overflow:visible"> <path - id="path7816" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path7813" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(0.8,0,0,0.8,10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker style="overflow:visible" - id="SquareMb" + id="Arrow1LstartP" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareMb"> + inkscape:stockid="Arrow1LstartP"> <path - transform="scale(0.4,0.4)" + inkscape:connector-curvature="0" + transform="matrix(0.8,0,0,0.8,10,0)" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path9491" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path7816" /> </marker> <marker - inkscape:stockid="Arrow1LendX" + inkscape:stockid="SquareMb" orient="auto" refY="0" refX="0" - id="Arrow1LendX" + id="SquareMb" style="overflow:visible"> <path - id="path9494" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path9491" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker style="overflow:visible" - id="SquareM8" + id="Arrow1LendX" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareM8"> + inkscape:stockid="Arrow1LendX"> <path - transform="scale(0.4,0.4)" - style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path10143" - inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path9494" /> </marker> <marker - inkscape:stockid="Arrow1LendT" + inkscape:stockid="SquareM8" orient="auto" refY="0" refX="0" - id="Arrow1LendT" + id="SquareM8" style="overflow:visible"> <path - id="path10146" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path10143" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker style="overflow:visible" - id="SquareMNT" + id="Arrow1LendT" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareMNT"> + inkscape:stockid="Arrow1LendT"> <path - transform="scale(0.4,0.4)" + inkscape:connector-curvature="0" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" - id="path12195" - inkscape:connector-curvature="0" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path10146" /> </marker> <marker - inkscape:stockid="Arrow1LstartPJ" + inkscape:stockid="SquareMNT" orient="auto" refY="0" refX="0" - id="Arrow1LstartPJ" + id="SquareMNT" style="overflow:visible"> <path - id="path12198" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + inkscape:connector-curvature="0" + id="path12195" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(0.8,0,0,0.8,10,0)" - inkscape:connector-curvature="0" /> + transform="scale(0.4,0.4)" /> </marker> <marker style="overflow:visible" - id="SquareMNTL" + id="Arrow1LstartPJ" refX="0" refY="0" orient="auto" - inkscape:stockid="SquareMNTL"> + inkscape:stockid="Arrow1LstartPJ"> <path - transform="scale(0.4,0.4)" + inkscape:connector-curvature="0" + transform="matrix(0.8,0,0,0.8,10,0)" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="M -5,-5 -5,5 5,5 5,-5 -5,-5 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 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + id="path12198" /> </marker> <marker - inkscape:stockid="DiamondMoY" + inkscape:stockid="SquareMNTL" orient="auto" refY="0" refX="0" - id="DiamondMoY" - style="overflow:visible"> - <path - id="path13187" - d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" - style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="scale(0.4,0.4)" - inkscape:connector-curvature="0" /> - </marker> - <marker - inkscape:stockid="Arrow1LendOe" - orient="auto" - refY="0" - refX="0" - id="Arrow1LendOe" + id="SquareMNTL" style="overflow:visible"> <path - id="path13190" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" - transform="matrix(-0.8,0,0,-0.8,-10,0)" - inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" + id="path12907" + d="M -5,-5 -5,5 5,5 5,-5 -5,-5 z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" + transform="scale(0.4,0.4)" /> </marker> <marker style="overflow:visible" - id="EmptyTriangleOutLt" + id="Arrow1Lendx" refX="0" refY="0" orient="auto" - inkscape:stockid="EmptyTriangleOutLt"> + inkscape:stockid="Arrow1Lendx"> <path inkscape:connector-curvature="0" - transform="matrix(0.8,0,0,0.8,-4.8,0)" + transform="matrix(-0.8,0,0,-0.8,-10,0)" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" - id="path4692" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path12910" /> </marker> <marker style="overflow:visible" - id="EmptyTriangleOutLt-8" + id="DiamondMoY" refX="0" refY="0" orient="auto" - inkscape:stockid="EmptyTriangleOutLt"> + inkscape:stockid="DiamondMoY"> <path inkscape:connector-curvature="0" - transform="matrix(0.8,0,0,0.8,-4.8,0)" - style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" - id="path4692-6" /> + transform="scale(0.4,0.4)" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" + d="M 0,-7.0710768 -7.0710894,0 0,7.0710589 7.0710462,0 0,-7.0710768 z" + id="path13187" /> </marker> <marker style="overflow:visible" - id="EmptyTriangleOutLt-3" + id="Arrow1LendOe" refX="0" refY="0" orient="auto" - inkscape:stockid="EmptyTriangleOutLt"> + inkscape:stockid="Arrow1LendOe"> <path inkscape:connector-curvature="0" - transform="matrix(0.8,0,0,0.8,-4.8,0)" - style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" - id="path4692-7" /> + transform="matrix(-0.8,0,0,-0.8,-10,0)" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path13190" /> </marker> <marker - inkscape:stockid="Arrow1MendK" + inkscape:stockid="EmptyTriangleOutLt" orient="auto" refY="0" refX="0" - id="Arrow1MendK" + id="EmptyTriangleOutLt" style="overflow:visible"> <path - inkscape:connector-curvature="0" - id="path5820" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4692" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + transform="matrix(0.8,0,0,0.8,-4.8,0)" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mendw" + inkscape:stockid="EmptyTriangleOutLt" orient="auto" refY="0" refX="0" - id="Arrow1Mendw" + id="EmptyTriangleOutLt-8" style="overflow:visible"> <path - inkscape:connector-curvature="0" - id="path6591" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4692-6" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + transform="matrix(0.8,0,0,0.8,-4.8,0)" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6" + inkscape:stockid="EmptyTriangleOutLt" orient="auto" refY="0" refX="0" - id="Arrow1Mend6" + id="EmptyTriangleOutLt-3" style="overflow:visible"> <path - inkscape:connector-curvature="0" - id="path6594" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path4692-7" + d="m 5.77,0 -8.65,5 0,-10 8.65,5 z" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + transform="matrix(0.8,0,0,0.8,-4.8,0)" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1MendK" refX="0" - id="Arrow1Mend6-6" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1MendK"> <path - inkscape:connector-curvature="0" - id="path6594-3" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + transform="matrix(-0.4,0,0,-0.4,-4,0)" style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path5820" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6z" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1Mendw" refX="0" - id="Arrow1Mend6z" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mendw"> <path - inkscape:connector-curvature="0" - id="path6949" + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" - transform="matrix(-0.4,0,0,-0.4,-4,0)" /> + id="path6591" + inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6z" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1Mend6" refX="0" - id="Arrow1Mend6z-8" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6"> <path - id="path6949-5" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6594" inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6z" - orient="auto" - refY="0" + style="overflow:visible" + id="Arrow1Mend6-6" refX="0" - id="Arrow1Mend6z-3" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6"> <path - id="path6949-0" - d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" - style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6594-3" inkscape:connector-curvature="0" /> </marker> <marker - inkscape:stockid="Arrow1Mend6z" - orient="auto" + style="overflow:visible" + id="Arrow1Mend6z" + refX="0" refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6z"> + <path + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6949" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="Arrow1Mend6z-8" refX="0" - id="Arrow1Mend6z-1" - style="overflow:visible"> + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6z"> <path - id="path6949-1" + inkscape:connector-curvature="0" + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6949-5" /> + </marker> + <marker + style="overflow:visible" + id="Arrow1Mend6z-3" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6z"> + <path + inkscape:connector-curvature="0" + transform="matrix(-0.4,0,0,-0.4,-4,0)" style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6949-0" /> + </marker> + <marker + style="overflow:visible" + id="Arrow1Mend6z-1" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend6z"> + <path + inkscape:connector-curvature="0" transform="matrix(-0.4,0,0,-0.4,-4,0)" - inkscape:connector-curvature="0" /> + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-width:1pt" + d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" + id="path6949-1" /> </marker> </defs> <metadata @@ -602,755 +602,780 @@ </rdf:RDF> </metadata> <g - inkscape:label="Layer 1" - inkscape:groupmode="layer" + transform="translate(-36.03125,-542.36221)" id="layer1" - transform="translate(-36.03125,-542.36221)"> + inkscape:groupmode="layer" + inkscape:label="Layer 1"> <rect - style="fill:none;stroke:#000000" - id="view50" - width="136.03505" - height="219.77139" + y="542.71747" x="330.26273" - y="542.71747" /> + height="219.77139" + width="136.03505" + id="view50" + style="fill:none;stroke:#000000" /> <rect - style="fill:#f2f2f2;stroke:none" - id="rect6832" - width="90" - height="220" - x="125" + transform="translate(0,502.36221)" y="40" - transform="translate(0,502.36221)" /> + x="125" + height="220" + width="90" + id="rect6832" + style="fill:#f2f2f2;stroke:none" /> <text - xml:space="preserve" - style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="97.984795" - y="81.43441" - id="text3004" + transform="translate(0,308.2677)" sodipodi:linespacing="125%" - transform="translate(0,308.2677)"><tspan - sodipodi:role="line" - id="tspan3006" + id="text3004" + y="81.43441" + x="97.984795" + style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="81.43441" x="97.984795" - y="81.43441" /></text> + id="tspan3006" + sodipodi:role="line" /></text> <text - sodipodi:linespacing="125%" - id="text4576" - y="584.505" - x="51.716835" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="584.505" - x="51.716835" + x="51.716835" + y="584.505" + id="text4576" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan4578" - sodipodi:role="line">Database</tspan></text> + x="51.716835" + y="584.505">Database</tspan></text> <text - sodipodi:linespacing="125%" - id="text4580" - y="602.36218" - x="45" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="602.36218" - x="45" + x="45" + y="602.36218" + id="text4580" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan4582" - sodipodi:role="line">(persistent)</tspan></text> + x="45" + y="602.36218">(persistent)</tspan></text> <text - sodipodi:linespacing="125%" - id="text4584" - y="722.36218" - x="45" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - id="tspan4588" - y="722.36218" + x="45" + y="722.36218" + id="text4584" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" x="45" - sodipodi:role="line">Client</tspan></text> + y="722.36218" + id="tspan4588">Client</tspan></text> <text - sodipodi:linespacing="125%" - id="text4592" - y="742.36218" - x="35" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="742.36218" - x="35" + x="35" + y="742.36218" + id="text4592" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan4594" - sodipodi:role="line">(transient)</tspan></text> + x="35" + y="742.36218">(transient)</tspan></text> <g - transform="translate(1,19.000027)" - id="g4179"> + id="g4179" + transform="translate(1,19.000027)"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Jim</tspan></text> + id="tspan4598" + sodipodi:role="line">Jim</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <g - id="g4179-5" - transform="translate(196,114.00003)"> + transform="translate(196,114.00003)" + id="g4179-5"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-5" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-2" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Jim</tspan></text> + id="tspan4598-2" + sodipodi:role="line">Jim</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-3" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-7" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602-7" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-5" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-5" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-6" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-6" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <g - id="g4179-8" - transform="translate(116,159.00003)"> + transform="translate(116,159.00003)" + id="g4179-8"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-7" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-5" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Sid</tspan></text> + id="tspan4598-5" + sodipodi:role="line">Sid</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-4" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-71" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602-71" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-1" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-1" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-60" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-60" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <g - id="g4179-51" - transform="translate(1,159.00006)"> + transform="translate(1,159.00006)" + id="g4179-51"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-1" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-25" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Jim</tspan></text> + id="tspan4598-25" + sodipodi:role="line">Jim</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-31" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-8" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602-8" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-0" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-0" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-8" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-8" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <g - id="g4179-2" - transform="translate(196,19.000027)"> + transform="translate(196,19.000027)" + id="g4179-2"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-6" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-6" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Jim</tspan></text> + id="tspan4598-6" + sodipodi:role="line">Jim</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-43" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-1" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602-1" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-9" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-9" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-5" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-5" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <g - id="g4179-8-6" - transform="translate(196,159.00006)"> + transform="translate(196,159.00006)" + id="g4179-8-6"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-7-8" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-5-3" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Sid</tspan></text> + id="tspan4598-5-3" + sodipodi:role="line">Sid</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-4-2" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-71-7" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">37</tspan></text> + id="tspan4602-71-7" + sodipodi:role="line">37</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-1-0" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-1-0" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-60-8" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-60-8" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <text - sodipodi:linespacing="125%" - id="text3223" - y="667.36218" - x="380" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="667.36218" - x="380" + x="380" + y="667.36218" + id="text3223" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan3225" - sodipodi:role="line">still</tspan></text> + x="380" + y="667.36218">still</tspan></text> <text - sodipodi:linespacing="125%" - id="text3227" - y="677.36218" - x="380" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="677.36218" - x="380" + x="380" + y="677.36218" + id="text3227" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan3229" - sodipodi:role="line">equal</tspan></text> + x="380" + y="677.36218">equal</tspan></text> <path - inkscape:connector-curvature="0" - id="path3231" - d="m 375,672.36221 -15,10" + sodipodi:nodetypes="cc" style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1MendK)" - sodipodi:nodetypes="cc" /> + d="m 375,672.36221 -15,10" + id="path3231" + inkscape:connector-curvature="0" /> <path - inkscape:connector-curvature="0" - id="path3231-0" - d="m 385,682.36221 -25,45" + sodipodi:nodetypes="cc" style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6)" - sodipodi:nodetypes="cc" /> + d="m 385,682.36221 -25,45" + id="path3231-0" + inkscape:connector-curvature="0" /> <g - id="g4179-8-6-9" - transform="translate(296,159.00003)"> + transform="translate(296,159.00003)" + id="g4179-8-6-9"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-7-8-8" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-5-3-6" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Sid</tspan></text> + id="tspan4598-5-3-6" + sodipodi:role="line">Sid</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-4-2-5" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-71-7-2" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">38</tspan></text> + id="tspan4602-71-7-2" + sodipodi:role="line">38</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-1-0-0" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-1-0-0" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-60-8-8" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-60-8-8" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <path - inkscape:connector-curvature="0" - id="path3231-0-4" - d="m 360,732.36221 75,0" + sodipodi:nodetypes="cc" style="fill:#ff0000;stroke:#ff0000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mendw)" - sodipodi:nodetypes="cc" /> + d="m 360,732.36221 75,0" + id="path3231-0-4" + inkscape:connector-curvature="0" /> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="415" - y="752.36218" + sodipodi:linespacing="125%" id="text5005" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan5007" + y="752.36218" + x="415" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="752.36218" x="415" - y="752.36218">+1</tspan></text> + id="tspan5007" + sodipodi:role="line">+1</tspan></text> <g - id="g4179-8-6-9-3" - transform="translate(296,19.000027)"> + transform="translate(296,19.000027)" + id="g4179-8-6-9-3"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="144" - y="563.36218" + sodipodi:linespacing="125%" id="text4596-7-8-8-0" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4598-5-3-6-7" + y="563.36218" + x="144" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="563.36218" x="144" - y="563.36218">Sid</tspan></text> + id="tspan4598-5-3-6-7" + sodipodi:role="line">Sid</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" - x="145" - y="579.36218" + sodipodi:linespacing="125%" id="text4600-4-2-5-2" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan4602-71-7-2-3" + y="579.36218" + x="145" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="579.36218" x="145" - y="579.36218">38</tspan></text> + id="tspan4602-71-7-2-3" + sodipodi:role="line">38</tspan></text> <rect - style="fill:none;stroke:#000000" - id="rect4175-1-0-0-5" - width="25" - height="30" - x="140" + transform="translate(0,502.36221)" y="50" - transform="translate(0,502.36221)" /> + x="140" + height="30" + width="25" + id="rect4175-1-0-0-5" + style="fill:none;stroke:#000000" /> <path - style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - d="m 140,65 25,0 0,0" - id="path4177-60-8-8-6" + transform="translate(0,502.36221)" inkscape:connector-curvature="0" - transform="translate(0,502.36221)" /> + id="path4177-60-8-8-6" + d="m 140,65 25,0 0,0" + style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" /> </g> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="130" - y="557.36218" + sodipodi:linespacing="125%" id="text6824" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan6826" + y="557.36218" + x="130" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="557.36218" x="130" - y="557.36218">Transaction 1</tspan></text> + id="tspan6826" + sodipodi:role="line">Transaction 1</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="360" - y="557.36218" + sodipodi:linespacing="125%" id="text6828" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan6830" + y="557.36218" + x="360" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="557.36218" x="360" - y="557.36218">Transaction 2</tspan></text> + id="tspan6830" + sodipodi:role="line">Transaction 2</tspan></text> <path - inkscape:connector-curvature="0" - id="path3231-0-2" - d="m 165,717.36221 90,0" + sodipodi:nodetypes="cc" style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)" - sodipodi:nodetypes="cc" /> + d="m 165,717.36221 90,0" + id="path3231-0-2" + inkscape:connector-curvature="0" /> <text - sodipodi:linespacing="125%" - id="text7197" - y="732.36218" - x="220" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="732.36218" - x="220" + x="220" + y="732.36218" + id="text7197" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan7199" - sodipodi:role="line">edit</tspan></text> + x="220" + y="732.36218">edit</tspan></text> <path - sodipodi:nodetypes="cc" - transform="translate(0,502.36221)" - inkscape:connector-curvature="0" - id="path7201" + style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0" d="m 45,135 305,0" - style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0" /> - <path + id="path7201" inkscape:connector-curvature="0" - id="path3231-0-2-2" - d="m 450,712.36221 0,-110" - style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)" + transform="translate(0,502.36221)" sodipodi:nodetypes="cc" /> <path - inkscape:connector-curvature="0" - id="path3231-0-2-0" - d="m 350,602.36221 0,60" + sodipodi:nodetypes="cc" style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)" - sodipodi:nodetypes="cc" /> + d="m 450,712.36221 0,-110" + id="path3231-0-2-2" + inkscape:connector-curvature="0" /> <path - inkscape:connector-curvature="0" - id="path3231-0-2-6" - d="m 155,602.36221 0,105" + sodipodi:nodetypes="cc" style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)" - sodipodi:nodetypes="cc" /> + d="m 350,602.36221 0,60" + id="path3231-0-2-0" + inkscape:connector-curvature="0" /> + <path + sodipodi:nodetypes="cc" + style="fill:#000000;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-end:url(#Arrow1Mend6z)" + d="m 155,602.36221 0,105" + id="path3231-0-2-6" + inkscape:connector-curvature="0" /> <text - transform="translate(0,502.36221)" - sodipodi:linespacing="125%" - id="text7253" - y="167.17703" - x="253.92039" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="167.17703" - x="253.92039" + x="253.92039" + y="167.17703" + id="text7253" + sodipodi:linespacing="125%" + transform="translate(0,502.36221)"><tspan + sodipodi:role="line" id="tspan7255" - sodipodi:role="line">write</tspan></text> + x="253.92039" + y="167.17703">write</tspan></text> <g - transform="translate(-104,-119.99997)" - id="g7293"> + id="g7293" + transform="translate(-104,-119.99997)"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="250" - y="777.36218" + sodipodi:linespacing="125%" id="text7257" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7259" + y="777.36218" + x="250" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="777.36218" x="250" - y="777.36218">r</tspan></text> + id="tspan7259" + sodipodi:role="line">r</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="787.36218" + sodipodi:linespacing="125%" id="text7261" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7263" + y="787.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="787.36218" x="249" - y="787.36218">e</tspan></text> + id="tspan7263" + sodipodi:role="line">e</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="797.36218" + sodipodi:linespacing="125%" id="text7265" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7267" + y="797.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="797.36218" x="249" - y="797.36218">a</tspan></text> + id="tspan7267" + sodipodi:role="line">a</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="811.36218" + sodipodi:linespacing="125%" id="text7269" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7271" + y="811.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="811.36218" x="249" - y="811.36218">d</tspan></text> + id="tspan7271" + sodipodi:role="line">d</tspan></text> </g> <g - transform="translate(148,-124.99997)" - id="g7303"> + id="g7303" + transform="translate(148,-124.99997)"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="304" - y="777.36218" + sodipodi:linespacing="125%" id="text7273" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7275" + y="777.36218" + x="304" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="777.36218" x="304" - y="777.36218">w</tspan></text> + id="tspan7275" + sodipodi:role="line">w</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="307" - y="787.36218" + sodipodi:linespacing="125%" id="text7277" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7279" + y="787.36218" + x="307" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="787.36218" x="307" - y="787.36218">r</tspan></text> + id="tspan7279" + sodipodi:role="line">r</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="307" - y="800.36218" + sodipodi:linespacing="125%" id="text7281" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7283" + y="800.36218" + x="307" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="800.36218" x="307" - y="800.36218">i</tspan></text> + id="tspan7283" + sodipodi:role="line">i</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="307" - y="811.36218" + sodipodi:linespacing="125%" id="text7285" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7287" + y="811.36218" + x="307" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="811.36218" x="307" - y="811.36218">t</tspan></text> + id="tspan7287" + sodipodi:role="line">t</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="306" - y="821.36218" + sodipodi:linespacing="125%" id="text7289" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7291" + y="821.36218" + x="306" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="821.36218" x="306" - y="821.36218">e</tspan></text> + id="tspan7291" + sodipodi:role="line">e</tspan></text> </g> <g - transform="translate(106,-159.99997)" - id="g7293-1"> + id="g7293-1" + transform="translate(106,-159.99997)"> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="250" - y="777.36218" + sodipodi:linespacing="125%" id="text7257-0" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7259-6" + y="777.36218" + x="250" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="777.36218" x="250" - y="777.36218">r</tspan></text> + id="tspan7259-6" + sodipodi:role="line">r</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="787.36218" + sodipodi:linespacing="125%" id="text7261-0" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7263-7" + y="787.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="787.36218" x="249" - y="787.36218">e</tspan></text> + id="tspan7263-7" + sodipodi:role="line">e</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="797.36218" + sodipodi:linespacing="125%" id="text7265-8" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7267-0" + y="797.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="797.36218" x="249" - y="797.36218">a</tspan></text> + id="tspan7267-0" + sodipodi:role="line">a</tspan></text> <text - xml:space="preserve" - style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - x="249" - y="811.36218" + sodipodi:linespacing="125%" id="text7269-7" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan7271-3" + y="811.36218" + x="249" + style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" + xml:space="preserve"><tspan + y="811.36218" x="249" - y="811.36218">d</tspan></text> + id="tspan7271-3" + sodipodi:role="line">d</tspan></text> </g> <path - sodipodi:nodetypes="cc" - inkscape:connector-curvature="0" - id="path7201-9" + style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0" d="m 366.13897,637.36221 143.86103,0" - style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99685039, 0.9992126;stroke-dashoffset:0" /> + id="path7201-9" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> <text - sodipodi:linespacing="125%" - id="text7375" - y="787.36218" - x="445" + xml:space="preserve" style="font-size:12px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans" - xml:space="preserve"><tspan - y="787.36218" - x="445" + x="445" + y="787.36218" + id="text7375" + sodipodi:linespacing="125%"><tspan + sodipodi:role="line" id="tspan7377" - sodipodi:role="line">Time</tspan></text> + x="445" + y="787.36218">Time</tspan></text> <path - inkscape:connector-curvature="0" - id="path7379" + style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#DiamondMend);marker-end:url(#Arrow1Lend)" d="m 119.60006,773.96791 375,0" - style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker-start:url(#DiamondMend);marker-end:url(#Arrow1Lend)" /> + id="path7379" + inkscape:connector-curvature="0" /> <rect - transform="translate(36.03125,542.36221)" - y="25.000002" - x="8.96875" - height="40" - width="125" + style="fill:none;stroke:#000000;stroke-width:0.70866142;stroke-miterlimit:4;stroke-dasharray:none" id="view10" - style="fill:none;stroke:#000000;stroke-width:0.70866142;stroke-miterlimit:4;stroke-dasharray:none" /> + width="125" + height="40" + x="8.96875" + y="25.000002" + transform="translate(36.03125,542.36221)" /> <rect - inkscape:label="#view20" - transform="translate(36.03125,542.36221)" - y="1.3574219e-06" - x="-1.03125" - height="205" - width="180" + style="fill:none;stroke:#000000;stroke-width:0.70866143999999998;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" id="view20" - style="fill:none;stroke:#000000;stroke-width:0.70866143999999998;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" /> - <rect + width="180" + height="205" + x="-1.03125" + y="1.3574219e-06" transform="translate(36.03125,542.36221)" - y="165" - x="98.96875" - height="40" - width="150" + inkscape:label="#view20" /> + <rect + style="fill:none;stroke:#000000;stroke-width:0.9992126;stroke-miterlimit:4;stroke-dasharray:none" id="view30" - style="fill:none;stroke:#000000;stroke-width:0.9992126;stroke-miterlimit:4;stroke-dasharray:none"> + width="150" + height="40" + x="98.96875" + y="165" + transform="translate(36.03125,542.36221)"> <title id="title4592">Client side change</title> </rect> <rect - transform="translate(36.03125,542.36221)" - y="25.000002" - x="293.96875" - height="175" - width="85" + style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" id="view40" - style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0" /> + width="85" + height="175" + x="293.96875" + y="25.000002" + transform="translate(36.03125,542.36221)" /> + <rect + transform="translate(36.03125,542.36221)" + y="1.3574219e-06" + x="-1.03125" + height="245" + width="480" + id="view05" + style="fill:none;stroke:#000000;stroke-width:0.99921262;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0"> + <title + id="title4622">Occ</title> + </rect> </g> <script - ns1:version="14.10-05142318" - id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",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,"sozi.proto",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,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");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>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>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("mousemove",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&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");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("mousemove",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&&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("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&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>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>=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)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";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==="rect"){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:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<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&&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,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+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("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",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("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");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"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+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>=this.x&&l<this.x+this.width&&m>=this.y&&m<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("transform","translate("+this.x+","+this.y+")");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("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",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("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];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==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");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("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-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,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&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<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",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="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&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<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");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,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");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("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}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("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",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):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=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="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";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<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>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",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>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&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("sozi.player.framechange",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("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=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>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<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("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}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&&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&&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("sozi.display.ready",a)});</script> + id="sozi-script" + ns1:version="14.10-05142318">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",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,"sozi.proto",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,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");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>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>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("mousemove",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&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");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("mousemove",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&&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("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&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>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>=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)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";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==="rect"){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:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<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&&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,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+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("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",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("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");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"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+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>=this.x&&l<this.x+this.width&&m>=this.y&&m<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("transform","translate("+this.x+","+this.y+")");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("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",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("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];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==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");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("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-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,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&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<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",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="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&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<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");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,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");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("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}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("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",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):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=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="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";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<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>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",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>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&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("sozi.player.framechange",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("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=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>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<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("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}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&&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&&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("sozi.display.ready",a)});</script> <style - ns1: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> + id="sozi-style" + ns1:version="14.10-05142318">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> <script - ns1:version="14.10-05142318" - id="sozi-extras-media-script">this.addEventListener("load",function(){var h="http://www.w3.org/2000/svg",l="http://sozi.baierouge.fr",s="http://www.w3.org/1999/xhtml",m=this,o=m.document,q=[],r,e,d,c,p,a,g,f,b;function n(i){i.stopPropagation()}function t(i,j,k){sozi.events.listen("sozi.player.framechange",function(u){var v=sozi.document.frames[u].id;if(v===j){i.play()}else{if(v===k){i.pause()}}})}q.push(o.getElementsByTagNameNS(l,"video"));q.push(o.getElementsByTagNameNS(l,"audio"));r=[];for(c=0;c<q.length;c+=1){for(e=0;e<q[c].length;e+=1){p=q[c][e].parentNode;b=o.createElementNS(s,"source");b.setAttribute("type",q[c][e].getAttributeNS(l,"type"));b.setAttribute("src",q[c][e].getAttributeNS(l,"src"));for(d=0;d<r.length;d+=1){if(r[d].rect===p){break}}if(d===r.length){p.setAttribute("visibility","hidden");f=o.createElementNS(s,q[c][e].localName);f.setAttribute("controls","controls");if(q[c][e].localName==="video"){f.setAttribute("width",p.getAttribute("width"));f.setAttribute("height",p.getAttribute("height"))}f.addEventListener("click",n,false);f.addEventListener("contextmenu",n,false);g=o.createElementNS(s,"html");g.appendChild(f);a=o.createElementNS(h,"foreignObject");a.setAttribute("x",p.getAttribute("x"));a.setAttribute("y",p.getAttribute("y"));a.setAttribute("width",p.getAttribute("width"));a.setAttribute("height",p.getAttribute("height"));a.appendChild(g);p.parentNode.insertBefore(a,p.nextSibling);if(q[c][e].hasAttributeNS(l,"start-frame")){t(f,q[c][e].getAttributeNS(l,"start-frame"),q[c][e].getAttributeNS(l,"stop-frame"))}r.push({rect:q[c][e].parentNode,htmlMedia:f})}r[d].htmlMedia.appendChild(b)}}},false);</script> + id="sozi-extras-media-script" + ns1:version="14.10-05142318">this.addEventListener("load",function(){var h="http://www.w3.org/2000/svg",l="http://sozi.baierouge.fr",s="http://www.w3.org/1999/xhtml",m=this,o=m.document,q=[],r,e,d,c,p,a,g,f,b;function n(i){i.stopPropagation()}function t(i,j,k){sozi.events.listen("sozi.player.framechange",function(u){var v=sozi.document.frames[u].id;if(v===j){i.play()}else{if(v===k){i.pause()}}})}q.push(o.getElementsByTagNameNS(l,"video"));q.push(o.getElementsByTagNameNS(l,"audio"));r=[];for(c=0;c<q.length;c+=1){for(e=0;e<q[c].length;e+=1){p=q[c][e].parentNode;b=o.createElementNS(s,"source");b.setAttribute("type",q[c][e].getAttributeNS(l,"type"));b.setAttribute("src",q[c][e].getAttributeNS(l,"src"));for(d=0;d<r.length;d+=1){if(r[d].rect===p){break}}if(d===r.length){p.setAttribute("visibility","hidden");f=o.createElementNS(s,q[c][e].localName);f.setAttribute("controls","controls");if(q[c][e].localName==="video"){f.setAttribute("width",p.getAttribute("width"));f.setAttribute("height",p.getAttribute("height"))}f.addEventListener("click",n,false);f.addEventListener("contextmenu",n,false);g=o.createElementNS(s,"html");g.appendChild(f);a=o.createElementNS(h,"foreignObject");a.setAttribute("x",p.getAttribute("x"));a.setAttribute("y",p.getAttribute("y"));a.setAttribute("width",p.getAttribute("width"));a.setAttribute("height",p.getAttribute("height"));a.appendChild(g);p.parentNode.insertBefore(a,p.nextSibling);if(q[c][e].hasAttributeNS(l,"start-frame")){t(f,q[c][e].getAttributeNS(l,"start-frame"),q[c][e].getAttributeNS(l,"stop-frame"))}r.push({rect:q[c][e].parentNode,htmlMedia:f})}r[d].htmlMedia.appendChild(b)}}},false);</script> <ns1:frame - ns1:refid="view10" - ns1:title="Persistent database object" + id="view10Frame" + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" ns1:sequence="1" + ns1:title="Persistent database object" + ns1:refid="view10" /> + <ns1:frame + ns1:refid="view20" + ns1:title="Copy to client side" + ns1:sequence="2" ns1:hide="true" ns1:clip="true" ns1:show-in-frame-list="true" @@ -1360,9 +1385,9 @@ ns1:transition-zoom-percent="0.0" ns1:transition-profile="linear" ns1:transition-path-hide="true" - id="view10Frame" /> + id="view20Frame" /> <ns1:frame - id="view20Frame" + id="view30Frame" ns1:transition-path-hide="true" ns1:transition-profile="linear" ns1:transition-zoom-percent="0.0" @@ -1372,13 +1397,13 @@ ns1:show-in-frame-list="true" ns1:clip="true" ns1:hide="true" - ns1:sequence="2" - ns1:title="Copy to client side" - ns1:refid="view20" /> - <ns1:frame - ns1:refid="view30" - ns1:title="Modify on client side" ns1:sequence="3" + ns1:title="Modify on client side" + ns1:refid="view30" /> + <ns1:frame + ns1:refid="view40" + ns1:title="Re-read from database" + ns1:sequence="4" ns1:hide="true" ns1:clip="true" ns1:show-in-frame-list="true" @@ -1388,9 +1413,9 @@ ns1:transition-zoom-percent="0.0" ns1:transition-profile="linear" ns1:transition-path-hide="true" - id="view30Frame" /> + id="view40Frame" /> <ns1:frame - id="view40Frame" + id="view50Frame" ns1:transition-path-hide="true" ns1:transition-profile="linear" ns1:transition-zoom-percent="0.0" @@ -1400,21 +1425,21 @@ ns1:show-in-frame-list="true" ns1:clip="true" ns1:hide="true" - ns1:sequence="4" - ns1:title="Re-read from database" - ns1:refid="view40" /> - <ns1:frame - ns1:refid="view50" - ns1:title="Commit or abort" ns1:sequence="5" - ns1:hide="true" - ns1:clip="true" - ns1:show-in-frame-list="true" - ns1:timeout-enable="false" - ns1:timeout-ms="5000.0" - ns1:transition-duration-ms="1000.0" - ns1:transition-zoom-percent="0.0" - ns1:transition-profile="linear" + ns1:title="Commit or abort" + ns1:refid="view50" /> + <ns1:frame + id="view05Frame" ns1:transition-path-hide="true" - id="view50Frame" /> + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0" + ns1:transition-duration-ms="1000" + ns1:timeout-ms="5000" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="6" + ns1:title="Occ" + ns1:refid="view05" /> </svg>