Added images for blog, refactored code
[cipher-tools.git] / blog-images / 3d-axes-cosine.svg
diff --git a/blog-images/3d-axes-cosine.svg b/blog-images/3d-axes-cosine.svg
new file mode 100644 (file)
index 0000000..55da400
--- /dev/null
@@ -0,0 +1,394 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="127mm"
+   height="126mm"
+   viewBox="0 0 127 126"
+   version="1.1"
+   id="svg8"
+   inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
+   sodipodi:docname="3d-axes-cosine.svg">
+  <defs
+     id="defs2">
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker965"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Lend">
+      <path
+         inkscape:connector-curvature="0"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         id="path963" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="marker5206"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path5204"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:isstock="true"
+       style="overflow:visible"
+       id="marker5158"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow2Mend"
+       inkscape:collect="always">
+      <path
+         transform="scale(-0.6)"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         id="path5156"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       inkscape:collect="always">
+      <path
+         id="path4552"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="-431.42493 : 3.6909255e-14 : 0"
+       inkscape:vp_y="0 : 2640.3206 : 0"
+       inkscape:vp_z="379.95884 : 153.2481 : 0"
+       inkscape:persp3d-origin="517.35035 : 293.80927 : 1"
+       id="perspective5090" />
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path4546"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible"
+       inkscape:isstock="true"
+       inkscape:collect="always">
+      <path
+         id="path4528"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="-114.14784 : 9.7655741e-15 : 0"
+       inkscape:vp_y="0 : 698.58485 : 0"
+       inkscape:vp_z="100.53077 : 40.546894 : 0"
+       inkscape:persp3d-origin="65.731879 : -11.131238 : 1"
+       id="perspective10" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="-30.201616 : 2.5838081e-15 : 0"
+       inkscape:vp_y="0 : 184.83391 : 0"
+       inkscape:vp_z="26.598766 : 10.728032 : 0"
+       inkscape:persp3d-origin="58.49679 : 96.761382 : 1"
+       id="perspective10-7" />
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend-5"
+       style="overflow:visible"
+       inkscape:isstock="true">
+      <path
+         id="path4528-1"
+         d="M 0,0 5,-5 -12.5,0 5,5 Z"
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.62138672"
+     inkscape:cx="-208.0166"
+     inkscape:cy="-20.35886"
+     inkscape:document-units="mm"
+     inkscape:current-layer="g5437"
+     showgrid="false"
+     showguides="false"
+     inkscape:window-width="1920"
+     inkscape:window-height="1137"
+     inkscape:window-x="1200"
+     inkscape:window-y="0"
+     inkscape:window-maximized="1" />
+  <metadata
+     id="metadata5">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-171)">
+    <g
+       id="g5437"
+       transform="translate(-39.268124,119.39867)"
+       inkscape:transform-center-x="4.2579496"
+       inkscape:transform-center-y="81.222364">
+      <g
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         inkscape:corner7="-0.096712199 : 0.030746383 : 0.25 : 1"
+         inkscape:corner0="0.36241751 : 0.14303737 : 0 : 1"
+         inkscape:perspectiveID="#perspective10"
+         style="fill:none;fill-opacity:1;stroke:#cd0000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:4, 4;stroke-dashoffset:0;stroke-opacity:1"
+         id="g12"
+         sodipodi:type="inkscape:box3d">
+        <path
+           points="63.630827,167.25361 88.76352,157.11689 88.76352,78.672108 63.630827,88.808831 "
+           d="M 63.630827,88.808831 V 167.25361 L 88.76352,157.11689 V 78.672108 Z"
+           inkscape:box3dsidetype="6"
+           style="fill:#b0b0de;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path14"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="141.17218,78.672108 141.17218,157.11689 88.76352,157.11689 88.76352,78.672108 "
+           d="m 88.76352,78.672108 h 52.40866 V 157.11689 H 88.76352 Z"
+           inkscape:box3dsidetype="11"
+           style="fill:#e9e9ff;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path24"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="116.03949,167.25361 141.17218,157.11689 88.76352,157.11689 63.630827,167.25361 "
+           d="m 63.630827,167.25361 h 52.408663 l 25.13269,-10.13672 H 88.76352 Z"
+           inkscape:box3dsidetype="13"
+           style="fill:#8d8dc5;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path22"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="116.03949,88.808831 141.17218,78.672108 88.76352,78.672108 63.630827,88.808831 "
+           d="M 63.630827,88.808831 H 116.03949 L 141.17218,78.672108 H 88.76352 Z"
+           inkscape:box3dsidetype="5"
+           style="fill:#4d4d9f;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path16"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="116.03949,167.25361 141.17218,157.11689 141.17218,78.672108 116.03949,88.808831 "
+           d="m 116.03949,88.808831 v 78.444779 l 25.13269,-10.13672 V 78.672108 Z"
+           inkscape:box3dsidetype="14"
+           style="fill:#d7d7ff;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path20"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="116.03949,88.808831 116.03949,167.25361 63.630827,167.25361 63.630827,88.808831 "
+           d="M 63.630827,88.808831 H 116.03949 V 167.25361 H 63.630827 Z"
+           inkscape:box3dsidetype="3"
+           style="fill:#8686bf;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path18"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           inkscape:connector-curvature="0"
+           id="path4841"
+           d="M 88.763516,157.11689 116.03949,88.808834"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.76499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow1Lend)" />
+        <text
+           id="text5256"
+           y="57.703236"
+           x="87.71376"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0.2619375px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           xml:space="preserve"><tspan
+             style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332px"
+             y="57.703236"
+             x="87.71376"
+             id="tspan5254"
+             sodipodi:role="line">a</tspan></text>
+      </g>
+      <text
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         id="text5256-5"
+         y="158.73051"
+         x="160.17534"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0.2619375px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:4.00000004, 4.00000004;stroke-dashoffset:0;stroke-opacity:1"
+         xml:space="preserve"><tspan
+           y="158.73051"
+           x="160.17534"
+           id="tspan5302"
+           sodipodi:role="line">b</tspan></text>
+      <text
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         id="text5256-3"
+         y="176.46587"
+         x="39.69239"
+         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0.2619375px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:4.00000004, 4.00000004;stroke-dashoffset:0;stroke-opacity:1"
+         xml:space="preserve"><tspan
+           y="176.46587"
+           x="39.69239"
+           id="tspan5312"
+           sodipodi:role="line">c</tspan></text>
+      <g
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         inkscape:corner7="-1.1258966 : -0.44841544 : 0.61527524 : 1"
+         inkscape:corner0="0.82766516 : -0.29696219 : 0 : 1"
+         inkscape:perspectiveID="#perspective10-7"
+         style="fill:none;fill-opacity:1;stroke:#cd0000;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:4, 4;stroke-dashoffset:0;stroke-opacity:1"
+         id="g12-7"
+         sodipodi:type="inkscape:box3d">
+        <path
+           points="72.768089,163.72233 89.133651,157.12164 89.133651,129.12794 72.768089,135.72863 "
+           d="m 72.768089,135.72863 v 27.9937 l 16.365562,-6.60069 v -27.9937 z"
+           inkscape:box3dsidetype="6"
+           style="fill:#b0b0de;fill-opacity:0.49756099;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path14-4"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="148.13437,129.12794 148.13437,157.12164 89.133651,157.12164 89.133651,129.12794 "
+           d="m 89.133651,129.12794 h 59.000719 v 27.9937 H 89.133651 Z"
+           inkscape:box3dsidetype="11"
+           style="fill:#e9e9ff;fill-opacity:0.50243901;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path24-1"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="131.76881,163.72233 148.13437,157.12164 89.133651,157.12164 72.768089,163.72233 "
+           d="m 72.768089,163.72233 h 59.000721 l 16.36556,-6.60069 H 89.133651 Z"
+           inkscape:box3dsidetype="13"
+           style="fill:#8d8dc5;fill-opacity:0.49803922;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path22-7"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="131.76881,135.72863 148.13437,129.12794 89.133651,129.12794 72.768089,135.72863 "
+           d="m 72.768089,135.72863 h 59.000721 l 16.36556,-6.60069 H 89.133651 Z"
+           inkscape:box3dsidetype="5"
+           style="fill:#4d4d9f;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path16-1"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="131.76881,163.72233 148.13437,157.12164 148.13437,129.12794 131.76881,135.72863 "
+           d="m 131.76881,135.72863 v 27.9937 l 16.36556,-6.60069 v -27.9937 z"
+           inkscape:box3dsidetype="14"
+           style="fill:#d7d7ff;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="path20-1"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           points="131.76881,135.72863 131.76881,163.72233 72.768089,163.72233 72.768089,135.72863 "
+           d="m 72.768089,135.72863 h 59.000721 v 27.9937 H 72.768089 Z"
+           inkscape:box3dsidetype="3"
+           style="fill:#8686bf;fill-opacity:0;fill-rule:evenodd;stroke:#000000;stroke-width:0.41790694;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:0.04179069, 0.04179069;stroke-dashoffset:0;stroke-opacity:1"
+           id="path18-1"
+           sodipodi:type="inkscape:box3dside" />
+        <path
+           inkscape:connector-curvature="0"
+           id="path4841-7"
+           d="M 88.763516,157.11689 116.03949,88.808834"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.76499999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow1Lend-5)" />
+        <text
+           id="text5256-0"
+           y="57.703236"
+           x="87.71376"
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;letter-spacing:0.2619375px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           xml:space="preserve"><tspan
+             style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.28888893px;font-family:Ubuntu;-inkscape-font-specification:'Ubuntu, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:0.26458332px"
+             y="57.703236"
+             x="87.71376"
+             id="tspan5254-4"
+             sodipodi:role="line">a</tspan></text>
+      </g>
+      <path
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         inkscape:connector-curvature="0"
+         id="path5196"
+         d="M 88.763516,157.11689 49.392215,173.09366"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5206)" />
+      <path
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         inkscape:connector-curvature="0"
+         id="path5094"
+         d="m 88.763516,157.11689 67.503234,-0.20343"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow2Mend)" />
+      <path
+         inkscape:export-ydpi="40.32"
+         inkscape:export-xdpi="40.32"
+         inkscape:connector-curvature="0"
+         id="path5142"
+         d="M 88.763516,157.11689 89.416942,63.664361"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5158)" />
+      <path
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker965)"
+         d="M 88.763516,157.11689 131.76881,135.72863"
+         id="path955"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:#653553;fill-opacity:0.55121952;stroke:#000000;stroke-width:0.5636456;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path1058"
+         sodipodi:type="arc"
+         sodipodi:cx="89.133652"
+         sodipodi:cy="157.12163"
+         sodipodi:rx="22.455404"
+         sodipodi:ry="40.979568"
+         sodipodi:start="5.3258384"
+         sodipodi:end="6.0007794"
+         d="m 102.06103,123.61398 a 22.455404,40.979568 0 0 1 8.63852,22.08799 l -21.565898,11.41966 z"
+         inkscape:transform-center-x="22.590677"
+         inkscape:transform-center-y="-18.309183" />
+    </g>
+  </g>
+</svg>