Process most of jan's comments
authorChristiaan Baaij <baaijcpr@wlan228123.mobiel.utwente.nl>
Thu, 4 Mar 2010 12:28:12 +0000 (13:28 +0100)
committerChristiaan Baaij <baaijcpr@wlan228123.mobiel.utwente.nl>
Thu, 4 Mar 2010 12:28:12 +0000 (13:28 +0100)
4tapfir.svg
cλash.lhs
mac-nocurry.svg

index 95a1514..34f4dd2 100644 (file)
@@ -24,8 +24,8 @@
      inkscape:pageopacity="0.0"
      inkscape:pageshadow="2"
      inkscape:zoom="2.8284271"
-     inkscape:cx="71.67237"
-     inkscape:cy="86.702549"
+     inkscape:cx="53.510834"
+     inkscape:cy="89.603901"
      inkscape:document-units="px"
      inkscape:current-layer="layer1"
      showgrid="false"
      showguides="true"
      inkscape:guide-bbox="true">
     <inkscape:grid
-       type="xygrid"
-       id="grid2818"
-       empspacing="5"
-       visible="true"
+       snapvisiblegridlinesonly="true"
        enabled="true"
-       snapvisiblegridlinesonly="true" />
+       visible="true"
+       empspacing="5"
+       id="grid2818"
+       type="xygrid" />
   </sodipodi:namedview>
   <defs
      id="defs4">
     <marker
-       inkscape:stockid="Arrow1Mend"
-       orient="auto"
-       refY="0"
-       refX="0"
+       style="overflow:visible"
        id="Arrow1Mend"
-       style="overflow:visible">
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Mend">
       <path
-         id="path3732"
-         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-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
-         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="path3732" />
     </marker>
     <marker
-       inkscape:stockid="Arrow1Send"
-       orient="auto"
-       refY="0"
-       refX="0"
+       style="overflow:visible"
        id="Arrow1Send"
-       style="overflow:visible">
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="Arrow1Send">
       <path
-         id="path3738"
-         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
          style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
-         transform="matrix(-0.2,0,0,-0.2,-1.2,0)" />
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         id="path3738" />
     </marker>
     <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       id="perspective10"
        inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       id="perspective10" />
-    <inkscape:perspective
-       id="perspective3098"
-       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
-       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
        inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 0.5 : 1"
+       inkscape:vp_x="0 : 526.18109 : 1"
        sodipodi:type="inkscape:persp3d" />
     <inkscape:perspective
-       id="perspective3128"
-       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
-       inkscape:vp_z="1 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 0.5 : 1"
        inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3098" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
        inkscape:vp_x="0 : 0.5 : 1"
-       sodipodi:type="inkscape:persp3d" />
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       id="perspective3128" />
   </defs>
   <metadata
      id="metadata7">
     </rdf:RDF>
   </metadata>
   <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
+     transform="translate(-388.72,-664.8395)"
      id="layer1"
-     transform="translate(-388.72,-664.8395)">
+     inkscape:groupmode="layer"
+     inkscape:label="Layer 1">
     <rect
-       style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-       id="rect7593"
-       width="172.84"
-       height="141.31805"
+       y="674.07373"
        x="398.72"
-       y="674.07373" />
-    <g
-       id="g3312"
-       transform="matrix(0,1,1,0,-270.49455,260.89951)">
-      <g
-         transform="translate(-15,3.0000045)"
-         id="g3297">
-        <path
-           sodipodi:type="arc"
-           style="fill:#ffffff;stroke:#000000"
-           id="path3295"
-           sodipodi:cx="40"
-           sodipodi:cy="26.984081"
-           sodipodi:rx="10"
-           sodipodi:ry="10"
-           d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
-           transform="matrix(1,0,0,-1,482.86,720.1436)" />
-        <g
-           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-           ns0:preamble=""
-           ns0:text="$\\mathbf{*}$\n\n\n\n"
-           word-spacing="normal"
-           letter-spacing="normal"
-           font-size-adjust="none"
-           font-stretch="normal"
-           font-weight="normal"
-           font-variant="normal"
-           font-style="normal"
-           stroke-miterlimit="10.433"
-           xml:space="preserve"
-           transform="translate(296.94,33.444519)"
-           id="g3207">
-<path
-   id="path3209"
-   d="m 226.17,661.49 0,0.01 0,0.01 0,0.02 0,0.01 0.01,0.02 -0.01,0.01 0,0.02 0,0.01 0,0.02 0,0.02 0,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 -0.01,0.01 -0.01,0.01 -0.01,0.02 -0.01,0 0,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.02,0 -0.01,0 c -0.16,0 -0.29,-0.12 -0.26,-0.25 v -0.13 l 0.14,-1.55 -1.27,0.93 c -0.09,0.05 -0.11,0.07 -0.18,0.07 -0.14,0 -0.27,-0.14 -0.27,-0.28 0,-0.16 0.1,-0.2 0.2,-0.25 l 1.41,-0.68 -1.37,-0.66 c -0.16,-0.08 -0.24,-0.12 -0.24,-0.27 0,-0.15 0.13,-0.28 0.27,-0.28 0.07,0 0.09,0 0.34,0.19 l 1.11,0.8 -0.15,-1.67 c 0,-0.21 0.18,-0.26 0.26,-0.26 0.12,0 0.27,0.07 0.27,0.26 l -0.15,1.67 1.28,-0.92 c 0.09,-0.05 0.11,-0.07 0.18,-0.07 0.14,0 0.27,0.14 0.27,0.28 0,0.15 -0.09,0.2 -0.21,0.26 -0.6,0.29 -0.62,0.29 -1.41,0.66 l 1.38,0.67 c 0.16,0.08 0.24,0.12 0.24,0.27 0,0.15 -0.13,0.28 -0.27,0.28 -0.07,0 -0.09,0 -0.34,-0.19 l -1.12,-0.81 z"
-   style="fill:#000000;stroke-width:0" />
-</g>      </g>
-    </g>
-    <path
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 538.70502,711.76952 0,47.59998"
-       id="path3302"
-       sodipodi:nodetypes="cc" />
+       height="141.31805"
+       width="172.84"
+       id="rect7593"
+       style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
     <g
-       transform="matrix(0,1,1,0,-230.49455,260.89951)"
-       id="g3324">
+       transform="matrix(0,1,1,0,-270.49455,260.89951)"
+       id="g3312">
       <g
-         id="g3326"
+         id="g3297"
          transform="translate(-15,3.0000045)">
         <path
            transform="matrix(1,0,0,-1,482.86,720.1436)"
            sodipodi:rx="10"
            sodipodi:cy="26.984081"
            sodipodi:cx="40"
-           id="path3328"
+           id="path3295"
            style="fill:#ffffff;stroke:#000000"
            sodipodi:type="arc" />
         <g
-           id="g3330"
+           id="g3207"
            transform="translate(296.94,33.444519)"
            xml:space="preserve"
            stroke-miterlimit="10.433"
 <path
    style="fill:#000000;stroke-width:0"
    d="m 226.17,661.49 0,0.01 0,0.01 0,0.02 0,0.01 0.01,0.02 -0.01,0.01 0,0.02 0,0.01 0,0.02 0,0.02 0,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 -0.01,0.01 -0.01,0.01 -0.01,0.02 -0.01,0 0,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.02,0 -0.01,0 c -0.16,0 -0.29,-0.12 -0.26,-0.25 v -0.13 l 0.14,-1.55 -1.27,0.93 c -0.09,0.05 -0.11,0.07 -0.18,0.07 -0.14,0 -0.27,-0.14 -0.27,-0.28 0,-0.16 0.1,-0.2 0.2,-0.25 l 1.41,-0.68 -1.37,-0.66 c -0.16,-0.08 -0.24,-0.12 -0.24,-0.27 0,-0.15 0.13,-0.28 0.27,-0.28 0.07,0 0.09,0 0.34,0.19 l 1.11,0.8 -0.15,-1.67 c 0,-0.21 0.18,-0.26 0.26,-0.26 0.12,0 0.27,0.07 0.27,0.26 l -0.15,1.67 1.28,-0.92 c 0.09,-0.05 0.11,-0.07 0.18,-0.07 0.14,0 0.27,0.14 0.27,0.28 0,0.15 -0.09,0.2 -0.21,0.26 -0.6,0.29 -0.62,0.29 -1.41,0.66 l 1.38,0.67 c 0.16,0.08 0.24,0.12 0.24,0.27 0,0.15 -0.13,0.28 -0.27,0.28 -0.07,0 -0.09,0 -0.34,-0.19 l -1.12,-0.81 z"
-   id="path3332" />
+   id="path3209" />
 </g>      </g>
     </g>
     <path
        sodipodi:nodetypes="cc"
-       id="path3334"
-       d="m 498.70502,711.76952 0,47.29"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 512.30509,744.76952 0,14.29"
-       id="path3342"
-       sodipodi:nodetypes="cc" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 428.595,691.76952 18,0"
-       id="path3344"
-       sodipodi:nodetypes="cc" />
-    <path
-       sodipodi:nodetypes="cc"
-       id="path3372"
-       d="m 468.595,691.76952 18,0"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
-    <path
-       sodipodi:type="arc"
-       style="fill:#ffffff;stroke:#000000"
-       id="path3406"
-       sodipodi:cx="40"
-       sodipodi:cy="26.984081"
-       sodipodi:rx="10"
-       sodipodi:ry="10"
-       d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
-       transform="matrix(0,1,-1,0,492.64902,760.7595)" />
-    <g
-       id="g3586"
-       transform="matrix(0,1,1,0,-194.06005,573.4545)"
-       xml:space="preserve"
-       stroke-miterlimit="10.433"
-       font-style="normal"
-       font-variant="normal"
-       font-weight="normal"
-       font-stretch="normal"
-       font-size-adjust="none"
-       letter-spacing="normal"
-       word-spacing="normal"
-       ns0:text="$\\mathbf{+}$\n\n\n\n\n"
-       ns0:preamble=""
-       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 227.51,659.52 h 2.78 c 0.14,0 0.33,0 0.33,0.2 0,0.2 -0.19,0.2 -0.33,0.2 h -2.78 v 2.79 c 0,0.14 0,0.33 -0.2,0.33 -0.2,0 -0.2,-0.19 -0.2,-0.33 v -2.79 h -2.79 c -0.14,0 -0.33,0 -0.33,-0.2 0,-0.2 0.19,-0.2 0.33,-0.2 h 2.79 v -2.79 c 0,-0.14 0,-0.32 0.2,-0.32 0.2,0 0.2,0.18 0.2,0.32 z"
-   id="path3588" />
-</g>    <path
-       sodipodi:nodetypes="cc"
-       id="path3737"
-       d="m 465.66494,779.1695 0,9.3"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
-    <path
-       sodipodi:nodetypes="cc"
-       id="path3741"
-       d="m 476.03993,800.7595 17.4,0"
+       id="path3302"
+       d="m 538.70502,711.76952 0,47.59998"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
     <g
-       id="g3749"
-       transform="matrix(0,1,1,0,-190.49455,260.89951)">
+       id="g3324"
+       transform="matrix(0,1,1,0,-230.49455,260.89951)">
       <g
          transform="translate(-15,3.0000045)"
-         id="g3751">
+         id="g3326">
         <path
            sodipodi:type="arc"
            style="fill:#ffffff;stroke:#000000"
-           id="path3753"
+           id="path3328"
            sodipodi:cx="40"
            sodipodi:cy="26.984081"
            sodipodi:rx="10"
            stroke-miterlimit="10.433"
            xml:space="preserve"
            transform="translate(296.94,33.444519)"
-           id="g3755">
+           id="g3330">
 <path
-   id="path3757"
+   id="path3332"
    d="m 226.17,661.49 0,0.01 0,0.01 0,0.02 0,0.01 0.01,0.02 -0.01,0.01 0,0.02 0,0.01 0,0.02 0,0.02 0,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 -0.01,0.01 -0.01,0.01 -0.01,0.02 -0.01,0 0,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.02,0 -0.01,0 c -0.16,0 -0.29,-0.12 -0.26,-0.25 v -0.13 l 0.14,-1.55 -1.27,0.93 c -0.09,0.05 -0.11,0.07 -0.18,0.07 -0.14,0 -0.27,-0.14 -0.27,-0.28 0,-0.16 0.1,-0.2 0.2,-0.25 l 1.41,-0.68 -1.37,-0.66 c -0.16,-0.08 -0.24,-0.12 -0.24,-0.27 0,-0.15 0.13,-0.28 0.27,-0.28 0.07,0 0.09,0 0.34,0.19 l 1.11,0.8 -0.15,-1.67 c 0,-0.21 0.18,-0.26 0.26,-0.26 0.12,0 0.27,0.07 0.27,0.26 l -0.15,1.67 1.28,-0.92 c 0.09,-0.05 0.11,-0.07 0.18,-0.07 0.14,0 0.27,0.14 0.27,0.28 0,0.15 -0.09,0.2 -0.21,0.26 -0.6,0.29 -0.62,0.29 -1.41,0.66 l 1.38,0.67 c 0.16,0.08 0.24,0.12 0.24,0.27 0,0.15 -0.13,0.28 -0.27,0.28 -0.07,0 -0.09,0 -0.34,-0.19 l -1.12,-0.81 z"
    style="fill:#000000;stroke-width:0" />
 </g>      </g>
     </g>
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 458.70502,711.76952 0,47.59998"
-       id="path3759"
+       d="m 498.70502,711.76952 0,47.29"
+       id="path3334"
        sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path3342"
+       d="m 512.30509,744.76952 0,14.29"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path3344"
+       d="m 388.72,691.76952 57.875,0"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 508.595,691.76952 18,0"
-       id="path3769"
+       d="m 468.595,691.76952 18,0"
+       id="path3372"
        sodipodi:nodetypes="cc" />
     <path
-       transform="matrix(0,1,-1,0,532.64902,760.7595)"
+       transform="matrix(0,1,-1,0,492.64902,760.7595)"
        d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
        sodipodi:ry="10"
        sodipodi:rx="10"
        sodipodi:cy="26.984081"
        sodipodi:cx="40"
-       id="path3771"
+       id="path3406"
        style="fill:#ffffff;stroke:#000000"
        sodipodi:type="arc" />
     <g
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(0,1,1,0,-154.06005,573.4545)"
-       id="g3773">
+       transform="matrix(0,1,1,0,-194.06005,573.4545)"
+       id="g3586">
 <path
-   id="path3775"
+   id="path3588"
    d="m 227.51,659.52 h 2.78 c 0.14,0 0.33,0 0.33,0.2 0,0.2 -0.19,0.2 -0.33,0.2 h -2.78 v 2.79 c 0,0.14 0,0.33 -0.2,0.33 -0.2,0 -0.2,-0.19 -0.2,-0.33 v -2.79 h -2.79 c -0.14,0 -0.33,0 -0.33,-0.2 0,-0.2 0.19,-0.2 0.33,-0.2 h 2.79 v -2.79 c 0,-0.14 0,-0.32 0.2,-0.32 0.2,0 0.2,0.18 0.2,0.32 z"
    style="fill:#000000;stroke-width:0" />
 </g>    <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 505.66494,779.1695 0,9.3"
-       id="path3777"
+       d="m 465.66494,779.1695 0,9.3"
+       id="path3737"
        sodipodi:nodetypes="cc" />
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 516.03993,800.7595 17.4,0"
-       id="path3781"
+       d="m 476.03993,800.7595 17.4,0"
+       id="path3741"
        sodipodi:nodetypes="cc" />
     <g
-       transform="matrix(0,1,1,0,-150.49455,260.89951)"
-       id="g3789">
+       transform="matrix(0,1,1,0,-190.49455,260.89951)"
+       id="g3749">
       <g
-         id="g3791"
+         id="g3751"
          transform="translate(-15,3.0000045)">
         <path
            transform="matrix(1,0,0,-1,482.86,720.1436)"
            sodipodi:rx="10"
            sodipodi:cy="26.984081"
            sodipodi:cx="40"
-           id="path3793"
+           id="path3753"
            style="fill:#ffffff;stroke:#000000"
            sodipodi:type="arc" />
         <g
-           id="g3795"
+           id="g3755"
            transform="translate(296.94,33.444519)"
            xml:space="preserve"
            stroke-miterlimit="10.433"
 <path
    style="fill:#000000;stroke-width:0"
    d="m 226.17,661.49 0,0.01 0,0.01 0,0.02 0,0.01 0.01,0.02 -0.01,0.01 0,0.02 0,0.01 0,0.02 0,0.02 0,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 -0.01,0.01 -0.01,0.01 -0.01,0.02 -0.01,0 0,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.02,0 -0.01,0 c -0.16,0 -0.29,-0.12 -0.26,-0.25 v -0.13 l 0.14,-1.55 -1.27,0.93 c -0.09,0.05 -0.11,0.07 -0.18,0.07 -0.14,0 -0.27,-0.14 -0.27,-0.28 0,-0.16 0.1,-0.2 0.2,-0.25 l 1.41,-0.68 -1.37,-0.66 c -0.16,-0.08 -0.24,-0.12 -0.24,-0.27 0,-0.15 0.13,-0.28 0.27,-0.28 0.07,0 0.09,0 0.34,0.19 l 1.11,0.8 -0.15,-1.67 c 0,-0.21 0.18,-0.26 0.26,-0.26 0.12,0 0.27,0.07 0.27,0.26 l -0.15,1.67 1.28,-0.92 c 0.09,-0.05 0.11,-0.07 0.18,-0.07 0.14,0 0.27,0.14 0.27,0.28 0,0.15 -0.09,0.2 -0.21,0.26 -0.6,0.29 -0.62,0.29 -1.41,0.66 l 1.38,0.67 c 0.16,0.08 0.24,0.12 0.24,0.27 0,0.15 -0.13,0.28 -0.27,0.28 -0.07,0 -0.09,0 -0.34,-0.19 l -1.12,-0.81 z"
-   id="path3797" />
+   id="path3757" />
 </g>      </g>
     </g>
     <path
        sodipodi:nodetypes="cc"
-       id="path3799"
-       d="m 418.70502,711.76952 0,47.59998"
+       id="path3759"
+       d="m 458.70502,711.76952 0,47.59998"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path3769"
+       d="m 508.595,691.76952 18,0"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
     <path
        sodipodi:type="arc"
        style="fill:#ffffff;stroke:#000000"
-       id="path3811"
+       id="path3771"
        sodipodi:cx="40"
        sodipodi:cy="26.984081"
        sodipodi:rx="10"
        sodipodi:ry="10"
        d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
-       transform="matrix(0,1,-1,0,572.64902,760.7595)" />
+       transform="matrix(0,1,-1,0,532.64902,760.7595)" />
     <g
-       id="g3813"
-       transform="matrix(0,1,1,0,-114.06005,573.4545)"
+       id="g3773"
+       transform="matrix(0,1,1,0,-154.06005,573.4545)"
        xml:space="preserve"
        stroke-miterlimit="10.433"
        font-style="normal"
 <path
    style="fill:#000000;stroke-width:0"
    d="m 227.51,659.52 h 2.78 c 0.14,0 0.33,0 0.33,0.2 0,0.2 -0.19,0.2 -0.33,0.2 h -2.78 v 2.79 c 0,0.14 0,0.33 -0.2,0.33 -0.2,0 -0.2,-0.19 -0.2,-0.33 v -2.79 h -2.79 c -0.14,0 -0.33,0 -0.33,-0.2 0,-0.2 0.19,-0.2 0.33,-0.2 h 2.79 v -2.79 c 0,-0.14 0,-0.32 0.2,-0.32 0.2,0 0.2,0.18 0.2,0.32 z"
-   id="path3815" />
+   id="path3775" />
 </g>    <path
        sodipodi:nodetypes="cc"
-       id="path3818"
-       d="m 545.66494,779.1695 0,9.3"
+       id="path3777"
+       d="m 505.66494,779.1695 0,9.3"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
     <path
        sodipodi:nodetypes="cc"
-       id="path3822"
-       d="m 555.76,800.7595 25.1,0"
+       id="path3781"
+       d="m 516.03993,800.7595 17.4,0"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
+    <g
+       id="g3789"
+       transform="matrix(0,1,1,0,-150.49455,260.89951)">
+      <g
+         transform="translate(-15,3.0000045)"
+         id="g3791">
+        <path
+           sodipodi:type="arc"
+           style="fill:#ffffff;stroke:#000000"
+           id="path3793"
+           sodipodi:cx="40"
+           sodipodi:cy="26.984081"
+           sodipodi:rx="10"
+           sodipodi:ry="10"
+           d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
+           transform="matrix(1,0,0,-1,482.86,720.1436)" />
+        <g
+           style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+           ns0:preamble=""
+           ns0:text="$\\mathbf{*}$\n\n\n\n"
+           word-spacing="normal"
+           letter-spacing="normal"
+           font-size-adjust="none"
+           font-stretch="normal"
+           font-weight="normal"
+           font-variant="normal"
+           font-style="normal"
+           stroke-miterlimit="10.433"
+           xml:space="preserve"
+           transform="translate(296.94,33.444519)"
+           id="g3795">
+<path
+   id="path3797"
+   d="m 226.17,661.49 0,0.01 0,0.01 0,0.02 0,0.01 0.01,0.02 -0.01,0.01 0,0.02 0,0.01 0,0.02 0,0.02 0,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 0,0.02 -0.01,0.01 -0.01,0.01 -0.01,0.01 -0.01,0.02 -0.01,0 0,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0.01 0,0 -0.01,0 -0.01,0 -0.01,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 -0.02,0 -0.01,0 c -0.16,0 -0.29,-0.12 -0.26,-0.25 v -0.13 l 0.14,-1.55 -1.27,0.93 c -0.09,0.05 -0.11,0.07 -0.18,0.07 -0.14,0 -0.27,-0.14 -0.27,-0.28 0,-0.16 0.1,-0.2 0.2,-0.25 l 1.41,-0.68 -1.37,-0.66 c -0.16,-0.08 -0.24,-0.12 -0.24,-0.27 0,-0.15 0.13,-0.28 0.27,-0.28 0.07,0 0.09,0 0.34,0.19 l 1.11,0.8 -0.15,-1.67 c 0,-0.21 0.18,-0.26 0.26,-0.26 0.12,0 0.27,0.07 0.27,0.26 l -0.15,1.67 1.28,-0.92 c 0.09,-0.05 0.11,-0.07 0.18,-0.07 0.14,0 0.27,0.14 0.27,0.28 0,0.15 -0.09,0.2 -0.21,0.26 -0.6,0.29 -0.62,0.29 -1.41,0.66 l 1.38,0.67 c 0.16,0.08 0.24,0.12 0.24,0.27 0,0.15 -0.13,0.28 -0.27,0.28 -0.07,0 -0.09,0 -0.34,-0.19 l -1.12,-0.81 z"
+   style="fill:#000000;stroke-width:0" />
+</g>      </g>
+    </g>
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 425.66493,779.1695 0,21.59 27.7,0"
-       id="path3824"
-       sodipodi:nodetypes="ccc" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 389.22,691.76952 18,0"
-       id="path3826"
+       d="m 418.70502,692.06979 0,67.29971"
+       id="path3799"
        sodipodi:nodetypes="cc" />
+    <path
+       transform="matrix(0,1,-1,0,572.64902,760.7595)"
+       d="m 50,26.984081 c 0,5.522848 -4.477153,10 -10,10 -5.522847,0 -10,-4.477152 -10,-10 0,-5.522847 4.477153,-10 10,-10 5.522847,0 10,4.477153 10,10 z"
+       sodipodi:ry="10"
+       sodipodi:rx="10"
+       sodipodi:cy="26.984081"
+       sodipodi:cx="40"
+       id="path3811"
+       style="fill:#ffffff;stroke:#000000"
+       sodipodi:type="arc" />
     <g
-       id="g2940"
-       transform="translate(-24.16501,3.21)">
-      <rect
-         transform="translate(367.86,538.7295)"
-         y="139.43002"
-         x="65"
-         height="30"
-         width="20"
-         id="rect2936"
-         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
-      <path
-         transform="translate(367.86,538.7295)"
-         id="path2938"
-         d="m 65,164.43002 5,-5 -5,-5"
-         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-    </g>
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       ns0:preamble=""
+       ns0:text="$\\mathbf{+}$\n\n\n\n\n"
+       word-spacing="normal"
+       letter-spacing="normal"
+       font-size-adjust="none"
+       font-stretch="normal"
+       font-weight="normal"
+       font-variant="normal"
+       font-style="normal"
+       stroke-miterlimit="10.433"
+       xml:space="preserve"
+       transform="matrix(0,1,1,0,-114.06005,573.4545)"
+       id="g3813">
+<path
+   id="path3815"
+   d="m 227.51,659.52 h 2.78 c 0.14,0 0.33,0 0.33,0.2 0,0.2 -0.19,0.2 -0.33,0.2 h -2.78 v 2.79 c 0,0.14 0,0.33 -0.2,0.33 -0.2,0 -0.2,-0.19 -0.2,-0.33 v -2.79 h -2.79 c -0.14,0 -0.33,0 -0.33,-0.2 0,-0.2 0.19,-0.2 0.33,-0.2 h 2.79 v -2.79 c 0,-0.14 0,-0.32 0.2,-0.32 0.2,0 0.2,0.18 0.2,0.32 z"
+   style="fill:#000000;stroke-width:0" />
+</g>    <path
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
+       d="m 545.66494,779.1695 0,9.3"
+       id="path3818"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
+       d="m 555.76,800.7595 25.1,0"
+       id="path3822"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="ccc"
+       id="path3824"
+       d="m 425.66493,779.1695 0,21.59 27.7,0"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
+    <g
+       transform="matrix(1.0476464,0,0,1,-31.864448,36.61)"
+       id="g3304">
+      <rect
+         transform="translate(367.86,538.7295)"
+         y="139.43002"
+         x="65"
+         height="30"
+         width="20"
+         id="rect3306"
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
+      <path
+         transform="translate(367.86,538.7295)"
+         id="path3308"
+         d="m 65,164.43002 5,-5 -5,-5"
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
     <g
-       id="g4924"
-       transform="matrix(1,0,0,-1,190.47499,1349.9895)"
+       id="g5273"
+       transform="matrix(1.001096,0,0,-1,203.47094,1384.6445)"
        xml:space="preserve"
        stroke-miterlimit="10.433"
        font-style="normal"
        font-size-adjust="none"
        letter-spacing="normal"
        word-spacing="normal"
-       ns0:text="$x_{0}$\n\n\n\n\n\n\n\n\n"
+       ns0:text="$h_{0}$\n\n\n\n\n\n\n\n\n\n"
        ns0:preamble=""
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z"
-   id="path4926" />
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 232.72,657.97 0,0.14 0,0.13 -0.01,0.13 -0.01,0.13 -0.01,0.13 -0.01,0.11 -0.02,0.12 -0.02,0.11 -0.03,0.11 -0.03,0.11 -0.03,0.1 -0.04,0.1 -0.04,0.1 -0.05,0.09 -0.05,0.1 -0.03,0.05 -0.03,0.04 c -0.21,0.32 -0.65,0.6 -1.2,0.6 -1.62,0 -1.62,-1.9 -1.62,-2.4 0,-0.51 0,-2.37 1.62,-2.37 v 0.2 c -0.32,0 -0.75,0.18 -0.89,0.76 -0.1,0.41 -0.1,0.98 -0.1,1.49 0,0.51 0,1.04 0.11,1.43 0.14,0.55 0.59,0.69 0.88,0.69 0.37,0 0.74,-0.22 0.86,-0.63 0.11,-0.38 0.12,-0.88 0.12,-1.49 0,-0.51 0,-1.03 -0.09,-1.47 -0.14,-0.63 -0.62,-0.78 -0.89,-0.78 h 0 v -0.2 c 1.61,0 1.61,1.86 1.61,2.37 z"
-   id="path4928" />
-</g>    <g
-       id="g2987"
-       transform="matrix(0,-1,1,0,-303.17452,1262.2895)">
-      <g
-         transform="matrix(0,1,-1,0,1225.6795,292.50951)"
-         id="g3304">
-        <rect
-           transform="translate(367.86,538.7295)"
-           y="139.43002"
-           x="65"
-           height="30"
-           width="20"
-           id="rect3306"
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
-        <path
-           transform="translate(367.86,538.7295)"
-           id="path3308"
-           d="m 65,164.43002 5,-5 -5,-5"
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-      </g>
-      <g
-         id="g5273"
-         transform="matrix(0,1,1,0,-122.35497,507.14951)"
-         xml:space="preserve"
-         stroke-miterlimit="10.433"
-         font-style="normal"
-         font-variant="normal"
-         font-weight="normal"
-         font-stretch="normal"
-         font-size-adjust="none"
-         letter-spacing="normal"
-         word-spacing="normal"
-         ns0:text="$h_{0}$\n\n\n\n\n\n\n\n\n\n"
-         ns0:preamble=""
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
    style="fill:#000000;stroke-width:0"
    d="m 226.29,664.04 0,0 0,0 0,0 0,0 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0 0,0.01 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 0,0 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 c -0.23,0 -0.95,-0.08 -1.21,-0.1 -0.08,-0.01 -0.19,-0.02 -0.19,-0.2 0,-0.12 0.09,-0.12 0.24,-0.12 0.48,0 0.49,-0.07 0.49,-0.17 l -0.03,-0.2 -1.44,-5.74 c -0.04,-0.14 -0.04,-0.16 -0.04,-0.22 0,-0.23 0.2,-0.28 0.29,-0.28 0.16,0 0.32,0.12 0.37,0.26 l 0.19,0.76 0.22,0.9 c 0.06,0.22 0.12,0.43 0.17,0.66 0.02,0.06 0.1,0.39 0.1,0.45 0.03,0.09 0.34,0.65 0.68,0.92 0.22,0.16 0.53,0.35 0.96,0.35 0.43,0 0.54,-0.34 0.54,-0.7 0,-0.54 -0.38,-1.62 -0.62,-2.23 -0.08,-0.23 -0.13,-0.35 -0.13,-0.55 0,-0.47 0.35,-0.82 0.82,-0.82 0.93,0 1.3,1.46 1.3,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.1,0 -0.1,-0.03 -0.15,-0.18 -0.15,-0.53 -0.47,-1.24 -1.01,-1.24 -0.17,0 -0.24,0.1 -0.24,0.33 0,0.25 0.09,0.49 0.18,0.71 0.16,0.43 0.6,1.61 0.6,2.19 0,0.65 -0.39,1.07 -1.14,1.07 -0.63,0 -1.11,-0.31 -1.48,-0.77 z"
    style="fill:#000000;stroke-width:0"
    d="m 232.77,657.97 0,0.14 -0.01,0.13 0,0.13 -0.01,0.13 -0.01,0.13 -0.02,0.11 -0.02,0.12 -0.02,0.11 -0.02,0.11 -0.03,0.11 -0.04,0.1 -0.03,0.1 -0.05,0.1 -0.04,0.09 -0.06,0.1 -0.02,0.05 -0.03,0.04 c -0.22,0.32 -0.65,0.6 -1.21,0.6 -1.62,0 -1.62,-1.9 -1.62,-2.4 0,-0.51 0,-2.37 1.62,-2.37 v 0.2 c -0.32,0 -0.75,0.18 -0.89,0.76 -0.09,0.41 -0.09,0.98 -0.09,1.49 0,0.51 0,1.04 0.1,1.43 0.15,0.55 0.6,0.69 0.88,0.69 0.38,0 0.74,-0.22 0.86,-0.63 0.12,-0.38 0.12,-0.88 0.12,-1.49 0,-0.51 0,-1.03 -0.09,-1.47 -0.14,-0.63 -0.61,-0.78 -0.89,-0.78 h 0 v -0.2 c 1.62,0 1.62,1.86 1.62,2.37 z"
    id="path5277" />
-</g>    </g>
+</g>    <g
+       transform="matrix(1.047619,0,0,1,-5.453594,3.21)"
+       id="g3318">
+      <rect
+         transform="translate(367.86,538.7295)"
+         y="139.43002"
+         x="65"
+         height="30"
+         width="20"
+         id="rect3320"
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
+      <path
+         transform="translate(367.86,538.7295)"
+         id="path3322"
+         d="m 65,164.43002 5,-5 -5,-5"
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
     <g
-       id="g2947"
-       transform="matrix(0,-1,1,0,-251.67452,1203.8895)">
-      <g
-         transform="matrix(0,1,-1,0,1200.6795,267.50951)"
-         id="g3318">
-        <rect
-           transform="translate(367.86,538.7295)"
-           y="139.43002"
-           x="65"
-           height="30"
-           width="20"
-           id="rect3320"
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
-        <path
-           transform="translate(367.86,538.7295)"
-           id="path3322"
-           d="m 65,164.43002 5,-5 -5,-5"
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-      </g>
-      <g
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-         ns0:preamble=""
-         ns0:text="$x_{1}$\n\n\n\n\n\n\n\n\n\n"
-         word-spacing="normal"
-         letter-spacing="normal"
-         font-size-adjust="none"
-         font-stretch="normal"
-         font-weight="normal"
-         font-variant="normal"
-         font-style="normal"
-         stroke-miterlimit="10.433"
-         xml:space="preserve"
-         transform="matrix(0,1,1,0,-146.09997,482.14951)"
-         id="g5637">
-<path
-   style="fill:#000000;stroke-width:0"
-   id="path5639"
-   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z" />
-<path
-   style="fill:#000000;stroke-width:0"
-   id="path5641"
-   d="m 231.46,660.17 0,0.01 0,0.01 0,0.01 0,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 0,0.01 -0.01,0.01 0,0 -0.01,0.01 0,0 -0.01,0.01 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 c -0.44,-0.44 -1.08,-0.45 -1.37,-0.45 v -0.25 c 0.17,0 0.63,0 1.02,0.2 v -3.56 c 0,-0.23 0,-0.32 -0.7,-0.32 h -0.27 v -0.25 c 0.13,0.01 0.99,0.03 1.25,0.03 0.21,0 1.09,-0.02 1.24,-0.03 v 0.25 h -0.26 c -0.7,0 -0.7,0.09 -0.7,0.32 z" />
-</g>    </g>
+       id="g3743"
+       transform="matrix(1.047619,0,0,1,34.846406,3.21)">
+      <rect
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+         id="rect3745"
+         width="20"
+         height="30"
+         x="65"
+         y="139.43002"
+         transform="translate(367.86,538.7295)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 65,164.43002 5,-5 -5,-5"
+         id="path3747"
+         transform="translate(367.86,538.7295)" />
+    </g>
     <g
-       id="g2939"
-       transform="matrix(0,-1,1,0,-211.67452,1163.8895)">
-      <g
-         id="g3743"
-         transform="matrix(0,1,-1,0,1160.6795,267.50951)">
-        <rect
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-           id="rect3745"
-           width="20"
-           height="30"
-           x="65"
-           y="139.43002"
-           transform="translate(367.86,538.7295)" />
-        <path
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-           d="m 65,164.43002 5,-5 -5,-5"
-           id="path3747"
-           transform="translate(367.86,538.7295)" />
-      </g>
-      <g
-         id="g5992"
-         transform="matrix(0,1,1,0,-186.09997,482.14951)"
-         xml:space="preserve"
-         stroke-miterlimit="10.433"
-         font-style="normal"
-         font-variant="normal"
-         font-weight="normal"
-         font-stretch="normal"
-         font-size-adjust="none"
-         letter-spacing="normal"
-         word-spacing="normal"
-         ns0:text="$x_{2}$\n\n\n\n\n\n\n\n\n\n"
-         ns0:preamble=""
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z"
-   id="path5994" />
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 232.65,657.01 h -0.24 c -0.02,-0.15 -0.09,-0.57 -0.18,-0.63 -0.06,-0.05 -0.59,-0.05 -0.69,-0.05 h -1.28 c 0.73,0.65 0.97,0.85 1.39,1.17 0.52,0.42 1,0.85 1,1.51 0,0.84 -0.74,1.36 -1.64,1.36 -0.86,0 -1.45,-0.61 -1.45,-1.25 0,-0.35 0.3,-0.39 0.37,-0.39 0.17,0 0.37,0.12 0.37,0.37 0,0.13 -0.04,0.37 -0.41,0.37 0.22,0.5 0.69,0.65 1.02,0.65 0.7,0 1.06,-0.54 1.06,-1.11 0,-0.61 -0.43,-1.09 -0.65,-1.34 l -1.69,-1.66 c -0.07,-0.06 -0.07,-0.08 -0.07,-0.27 h 2.88 z"
-   id="path5996" />
-</g>    </g>
+       transform="matrix(1.047619,0,0,1,74.746406,3.21)"
+       id="g3783">
+      <rect
+         transform="translate(367.86,538.7295)"
+         y="139.43002"
+         x="65"
+         height="30"
+         width="20"
+         id="rect3785"
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
+      <path
+         transform="translate(367.86,538.7295)"
+         id="path3787"
+         d="m 65,164.43002 5,-5 -5,-5"
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
     <g
-       id="g2931"
-       transform="matrix(0,-1,1,0,-171.67452,1123.8895)">
-      <g
-         transform="matrix(0,1,-1,0,1120.6795,267.50951)"
-         id="g3783">
-        <rect
-           transform="translate(367.86,538.7295)"
-           y="139.43002"
-           x="65"
-           height="30"
-           width="20"
-           id="rect3785"
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
-        <path
-           transform="translate(367.86,538.7295)"
-           id="path3787"
-           d="m 65,164.43002 5,-5 -5,-5"
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-      </g>
-      <g
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-         ns0:preamble=""
-         ns0:text="$x_{3}$\n\n\n\n\n\n\n\n\n\n"
-         word-spacing="normal"
-         letter-spacing="normal"
-         font-size-adjust="none"
-         font-stretch="normal"
-         font-weight="normal"
-         font-variant="normal"
-         font-style="normal"
-         stroke-miterlimit="10.433"
-         xml:space="preserve"
-         transform="matrix(0,1,1,0,-226.09997,482.14951)"
-         id="g6347">
-<path
-   style="fill:#000000;stroke-width:0"
-   id="path6349"
-   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z" />
-<path
-   style="fill:#000000;stroke-width:0"
-   id="path6351"
-   d="m 231.03,658.07 0.05,0 0.05,-0.01 0.05,0 0.05,-0.01 0.04,-0.01 0.05,-0.01 0.04,-0.01 0.04,-0.02 0.05,-0.02 0.04,-0.02 0.04,-0.02 0.03,-0.03 0.04,-0.03 0.03,-0.03 0.04,-0.03 0.03,-0.03 0.03,-0.04 0.03,-0.04 0.03,-0.04 0.02,-0.04 0.02,-0.05 0.03,-0.04 0.02,-0.05 0.01,-0.05 0.02,-0.06 0.01,-0.05 0.02,-0.06 0.01,-0.06 0,-0.06 0.01,-0.07 0,-0.07 0,-0.06 c 0,-0.87 -0.5,-1.13 -0.9,-1.13 -0.28,0 -0.9,0.08 -1.19,0.49 0.33,0.02 0.41,0.25 0.41,0.39 0,0.23 -0.17,0.39 -0.39,0.39 -0.19,0 -0.39,-0.12 -0.39,-0.41 0,-0.65 0.73,-1.08 1.57,-1.08 0.97,0 1.64,0.65 1.64,1.35 0,0.54 -0.45,1.08 -1.21,1.25 0.73,0.26 0.99,0.78 0.99,1.21 0,0.55 -0.63,0.96 -1.4,0.96 -0.78,0 -1.37,-0.38 -1.37,-0.93 0,-0.24 0.15,-0.37 0.36,-0.37 0.22,0 0.36,0.16 0.36,0.35 0,0.2 -0.14,0.35 -0.36,0.36 0.24,0.31 0.73,0.39 0.98,0.39 0.32,0 0.76,-0.15 0.76,-0.76 0,-0.3 -0.1,-0.62 -0.28,-0.83 -0.23,-0.27 -0.43,-0.28 -0.78,-0.3 -0.17,-0.01 -0.18,-0.01 -0.22,-0.02 -0.01,0 -0.07,-0.02 -0.07,-0.09 0,-0.1 0.06,-0.1 0.18,-0.1 z" />
-</g>    </g>
+       id="g3336"
+       transform="matrix(1.047619,0,0,1,8.346406,36.61)">
+      <rect
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+         id="rect3338"
+         width="20"
+         height="30"
+         x="65"
+         y="139.43002"
+         transform="translate(367.86,538.7295)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 65,164.43002 5,-5 -5,-5"
+         id="path3340"
+         transform="translate(367.86,538.7295)" />
+    </g>
     <g
-       id="g2979"
-       transform="matrix(0,-1,1,0,-263.17452,1222.2895)">
-      <g
-         id="g3336"
-         transform="matrix(0,1,-1,0,1185.6795,292.50951)">
-        <rect
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-           id="rect3338"
-           width="20"
-           height="30"
-           x="65"
-           y="139.43002"
-           transform="translate(367.86,538.7295)" />
-        <path
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-           d="m 65,164.43002 5,-5 -5,-5"
-           id="path3340"
-           transform="translate(367.86,538.7295)" />
-      </g>
-      <g
-         id="g6702"
-         transform="matrix(0,1,1,0,-162.35497,507.14951)"
-         xml:space="preserve"
-         stroke-miterlimit="10.433"
-         font-style="normal"
-         font-variant="normal"
-         font-weight="normal"
-         font-stretch="normal"
-         font-size-adjust="none"
-         letter-spacing="normal"
-         word-spacing="normal"
-         ns0:text="$h_{1}$\n\n\n\n\n\n\n\n\n\n\n"
-         ns0:preamble=""
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
+       id="g6702"
+       transform="matrix(1,0,0,-1,244.06996,1384.6445)"
+       xml:space="preserve"
+       stroke-miterlimit="10.433"
+       font-style="normal"
+       font-variant="normal"
+       font-weight="normal"
+       font-stretch="normal"
+       font-size-adjust="none"
+       letter-spacing="normal"
+       word-spacing="normal"
+       ns0:text="$h_{1}$\n\n\n\n\n\n\n\n\n\n\n"
+       ns0:preamble=""
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
    style="fill:#000000;stroke-width:0"
    d="m 226.29,664.04 0,0 0,0 0,0 0,0 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0 0,0.01 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 0,0 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 c -0.23,0 -0.95,-0.08 -1.21,-0.1 -0.08,-0.01 -0.19,-0.02 -0.19,-0.2 0,-0.12 0.09,-0.12 0.24,-0.12 0.48,0 0.49,-0.07 0.49,-0.17 l -0.03,-0.2 -1.44,-5.74 c -0.04,-0.14 -0.04,-0.16 -0.04,-0.22 0,-0.23 0.2,-0.28 0.29,-0.28 0.16,0 0.32,0.12 0.37,0.26 l 0.19,0.76 0.22,0.9 c 0.06,0.22 0.12,0.43 0.17,0.66 0.02,0.06 0.1,0.39 0.1,0.45 0.03,0.09 0.34,0.65 0.68,0.92 0.22,0.16 0.53,0.35 0.96,0.35 0.43,0 0.54,-0.34 0.54,-0.7 0,-0.54 -0.38,-1.62 -0.62,-2.23 -0.08,-0.23 -0.13,-0.35 -0.13,-0.55 0,-0.47 0.35,-0.82 0.82,-0.82 0.93,0 1.3,1.46 1.3,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.1,0 -0.1,-0.03 -0.15,-0.18 -0.15,-0.53 -0.47,-1.24 -1.01,-1.24 -0.17,0 -0.24,0.1 -0.24,0.33 0,0.25 0.09,0.49 0.18,0.71 0.16,0.43 0.6,1.61 0.6,2.19 0,0.65 -0.39,1.07 -1.14,1.07 -0.63,0 -1.11,-0.31 -1.48,-0.77 z"
    style="fill:#000000;stroke-width:0"
    d="m 231.51,660.17 0,0.01 0,0.01 0,0.01 0,0.01 0,0.01 0,0 0,0.01 0,0.01 -0.01,0 0,0.01 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 0,0 0,0.01 0,0 -0.01,0.01 0,0.01 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0.01 -0.01,0 -0.01,0 -0.01,0 -0.01,0.01 0,0 -0.01,0 0,0 -0.01,0 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 0,0 -0.01,0 c -0.45,-0.44 -1.08,-0.45 -1.37,-0.45 v -0.25 c 0.17,0 0.63,0 1.01,0.2 v -3.56 c 0,-0.23 0,-0.32 -0.7,-0.32 h -0.26 v -0.25 c 0.12,0.01 0.98,0.03 1.24,0.03 0.22,0 1.1,-0.02 1.25,-0.03 v 0.25 h -0.27 c -0.69,0 -0.69,0.09 -0.69,0.32 z"
    id="path6706" />
-</g>    </g>
+</g>    <g
+       transform="matrix(1.047619,0,0,1,48.346406,36.61)"
+       id="g3761">
+      <rect
+         transform="translate(367.86,538.7295)"
+         y="139.43002"
+         x="65"
+         height="30"
+         width="20"
+         id="rect3763"
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
+      <path
+         transform="translate(367.86,538.7295)"
+         id="path3765"
+         d="m 65,164.43002 5,-5 -5,-5"
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+    </g>
     <g
-       id="g2971"
-       transform="matrix(0,-1,1,0,-223.17452,1182.2895)">
-      <g
-         transform="matrix(0,1,-1,0,1145.6795,292.50951)"
-         id="g3761">
-        <rect
-           transform="translate(367.86,538.7295)"
-           y="139.43002"
-           x="65"
-           height="30"
-           width="20"
-           id="rect3763"
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none" />
-        <path
-           transform="translate(367.86,538.7295)"
-           id="path3765"
-           d="m 65,164.43002 5,-5 -5,-5"
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
-      </g>
-      <g
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-         ns0:preamble=""
-         ns0:text="$h_{2}$\n\n\n\n\n\n\n\n\n\n\n"
-         word-spacing="normal"
-         letter-spacing="normal"
-         font-size-adjust="none"
-         font-stretch="normal"
-         font-weight="normal"
-         font-variant="normal"
-         font-style="normal"
-         stroke-miterlimit="10.433"
-         xml:space="preserve"
-         transform="matrix(0,1,1,0,-202.42497,507.14951)"
-         id="g7057">
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       ns0:preamble=""
+       ns0:text="$h_{2}$\n\n\n\n\n\n\n\n\n\n\n"
+       word-spacing="normal"
+       letter-spacing="normal"
+       font-size-adjust="none"
+       font-stretch="normal"
+       font-weight="normal"
+       font-variant="normal"
+       font-style="normal"
+       stroke-miterlimit="10.433"
+       xml:space="preserve"
+       transform="matrix(1,0,0,-1,283.95996,1384.7145)"
+       id="g7057">
 <path
    id="path7059"
    d="m 226.29,664.04 0,0 0,0 0,0 0,0 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0 0,0.01 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 0,0 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 c -0.23,0 -0.95,-0.08 -1.21,-0.1 -0.08,-0.01 -0.19,-0.02 -0.19,-0.2 0,-0.12 0.09,-0.12 0.24,-0.12 0.48,0 0.49,-0.07 0.49,-0.17 l -0.03,-0.2 -1.44,-5.74 c -0.04,-0.14 -0.04,-0.16 -0.04,-0.22 0,-0.23 0.2,-0.28 0.29,-0.28 0.16,0 0.32,0.12 0.37,0.26 l 0.19,0.76 0.22,0.9 c 0.06,0.22 0.12,0.43 0.17,0.66 0.02,0.06 0.1,0.39 0.1,0.45 0.03,0.09 0.34,0.65 0.68,0.92 0.22,0.16 0.53,0.35 0.96,0.35 0.43,0 0.54,-0.34 0.54,-0.7 0,-0.54 -0.38,-1.62 -0.62,-2.23 -0.08,-0.23 -0.13,-0.35 -0.13,-0.55 0,-0.47 0.35,-0.82 0.82,-0.82 0.93,0 1.3,1.46 1.3,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.1,0 -0.1,-0.03 -0.15,-0.18 -0.15,-0.53 -0.47,-1.24 -1.01,-1.24 -0.17,0 -0.24,0.1 -0.24,0.33 0,0.25 0.09,0.49 0.18,0.71 0.16,0.43 0.6,1.61 0.6,2.19 0,0.65 -0.39,1.07 -1.14,1.07 -0.63,0 -1.11,-0.31 -1.48,-0.77 z"
    id="path7061"
    d="m 232.69,657.01 h -0.23 c -0.03,-0.15 -0.1,-0.57 -0.19,-0.63 -0.05,-0.05 -0.59,-0.05 -0.69,-0.05 h -1.28 c 0.73,0.65 0.98,0.85 1.4,1.17 0.51,0.42 0.99,0.85 0.99,1.51 0,0.84 -0.74,1.36 -1.63,1.36 -0.86,0 -1.45,-0.61 -1.45,-1.25 0,-0.35 0.3,-0.39 0.37,-0.39 0.17,0 0.37,0.12 0.37,0.37 0,0.13 -0.05,0.37 -0.41,0.37 0.21,0.5 0.69,0.65 1.02,0.65 0.69,0 1.05,-0.54 1.05,-1.11 0,-0.61 -0.43,-1.09 -0.65,-1.34 l -1.68,-1.66 c -0.07,-0.06 -0.07,-0.08 -0.07,-0.27 h 2.87 z"
    style="fill:#000000;stroke-width:0" />
-</g>    </g>
+</g>    <g
+       id="g3801"
+       transform="matrix(1.047619,0,0,1,88.246406,36.61)">
+      <rect
+         style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+         id="rect3803"
+         width="20"
+         height="30"
+         x="65"
+         y="139.43002"
+         transform="translate(367.86,538.7295)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 65,164.43002 5,-5 -5,-5"
+         id="path3805"
+         transform="translate(367.86,538.7295)" />
+    </g>
     <g
-       id="g2963"
-       transform="matrix(0,-1,1,0,-183.17452,1142.2895)">
-      <g
-         id="g3801"
-         transform="matrix(0,1,-1,0,1105.6795,292.50951)">
-        <rect
-           style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
-           id="rect3803"
-           width="20"
-           height="30"
-           x="65"
-           y="139.43002"
-           transform="translate(367.86,538.7295)" />
-        <path
-           style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
-           d="m 65,164.43002 5,-5 -5,-5"
-           id="path3805"
-           transform="translate(367.86,538.7295)" />
-      </g>
-      <g
-         id="g7412"
-         transform="matrix(0,1,1,0,-242.35497,507.14951)"
-         xml:space="preserve"
-         stroke-miterlimit="10.433"
-         font-style="normal"
-         font-variant="normal"
-         font-weight="normal"
-         font-stretch="normal"
-         font-size-adjust="none"
-         letter-spacing="normal"
-         word-spacing="normal"
-         ns0:text="$h_{3}$\n\n\n\n\n\n\n\n\n\n\n"
-         ns0:preamble=""
-         style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
+       id="g7412"
+       transform="matrix(1,0,0,-1,323.82496,1384.6445)"
+       xml:space="preserve"
+       stroke-miterlimit="10.433"
+       font-style="normal"
+       font-variant="normal"
+       font-weight="normal"
+       font-stretch="normal"
+       font-size-adjust="none"
+       letter-spacing="normal"
+       word-spacing="normal"
+       ns0:text="$h_{3}$\n\n\n\n\n\n\n\n\n\n\n"
+       ns0:preamble=""
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
    style="fill:#000000;stroke-width:0"
    d="m 226.29,664.04 0,0 0,0 0,0 0,0 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0 0,0.01 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 0,0 -0.01,0 0,0 0,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 0,0 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 c -0.23,0 -0.95,-0.08 -1.21,-0.1 -0.08,-0.01 -0.19,-0.02 -0.19,-0.2 0,-0.12 0.09,-0.12 0.24,-0.12 0.48,0 0.49,-0.07 0.49,-0.17 l -0.03,-0.2 -1.44,-5.74 c -0.04,-0.14 -0.04,-0.16 -0.04,-0.22 0,-0.23 0.2,-0.28 0.29,-0.28 0.16,0 0.32,0.12 0.37,0.26 l 0.19,0.76 0.22,0.9 c 0.06,0.22 0.12,0.43 0.17,0.66 0.02,0.06 0.1,0.39 0.1,0.45 0.03,0.09 0.34,0.65 0.68,0.92 0.22,0.16 0.53,0.35 0.96,0.35 0.43,0 0.54,-0.34 0.54,-0.7 0,-0.54 -0.38,-1.62 -0.62,-2.23 -0.08,-0.23 -0.13,-0.35 -0.13,-0.55 0,-0.47 0.35,-0.82 0.82,-0.82 0.93,0 1.3,1.46 1.3,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.1,0 -0.1,-0.03 -0.15,-0.18 -0.15,-0.53 -0.47,-1.24 -1.01,-1.24 -0.17,0 -0.24,0.1 -0.24,0.33 0,0.25 0.09,0.49 0.18,0.71 0.16,0.43 0.6,1.61 0.6,2.19 0,0.65 -0.39,1.07 -1.14,1.07 -0.63,0 -1.11,-0.31 -1.48,-0.77 z"
    style="fill:#000000;stroke-width:0"
    d="m 231.07,658.07 0.05,0 0.05,-0.01 0.05,0 0.05,-0.01 0.05,-0.01 0.04,-0.01 0.05,-0.01 0.04,-0.02 0.04,-0.02 0.04,-0.02 0.04,-0.02 0.04,-0.03 0.03,-0.03 0.04,-0.03 0.03,-0.03 0.03,-0.03 0.04,-0.04 0.02,-0.04 0.03,-0.04 0.03,-0.04 0.02,-0.05 0.02,-0.04 0.02,-0.05 0.02,-0.05 0.01,-0.06 0.02,-0.05 0.01,-0.06 0.01,-0.06 0.01,-0.06 0,-0.07 0.01,-0.07 0,-0.06 c 0,-0.87 -0.5,-1.13 -0.91,-1.13 -0.28,0 -0.89,0.08 -1.18,0.49 0.32,0.02 0.4,0.25 0.4,0.39 0,0.23 -0.17,0.39 -0.38,0.39 -0.2,0 -0.39,-0.12 -0.39,-0.41 0,-0.65 0.72,-1.08 1.57,-1.08 0.97,0 1.64,0.65 1.64,1.35 0,0.54 -0.45,1.08 -1.22,1.25 0.73,0.26 1,0.78 1,1.21 0,0.55 -0.64,0.96 -1.41,0.96 -0.77,0 -1.37,-0.38 -1.37,-0.93 0,-0.24 0.16,-0.37 0.36,-0.37 0.22,0 0.36,0.16 0.36,0.35 0,0.2 -0.14,0.35 -0.36,0.36 0.25,0.31 0.73,0.39 0.99,0.39 0.31,0 0.75,-0.15 0.75,-0.76 0,-0.3 -0.1,-0.62 -0.28,-0.83 -0.23,-0.27 -0.42,-0.28 -0.77,-0.3 -0.18,-0.01 -0.19,-0.01 -0.22,-0.02 -0.02,0 -0.07,-0.02 -0.07,-0.09 0,-0.1 0.06,-0.1 0.18,-0.1 z"
    id="path7416" />
-</g>    </g>
-    <g
-       id="g7777"
+</g>    <g
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       ns0:preamble=""
+       ns0:text="$\\mathit{x}$\n\n"
+       word-spacing="normal"
+       letter-spacing="normal"
+       font-size-adjust="none"
+       font-stretch="normal"
+       font-weight="normal"
+       font-variant="normal"
+       font-style="normal"
+       stroke-miterlimit="10.433"
+       xml:space="preserve"
        transform="matrix(1,0,0,-1,167.44,1347.3645)"
+       id="g7777">
+<path
+   id="path7779"
+   d="m 228.15,661.28 -0.01,-0.01 -0.02,0 -0.02,-0.01 -0.02,0 -0.01,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,0 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.02 -0.02,-0.02 -0.02,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,0 0,-0.01 0,0 0,0 0,0 0,0 c 0,-0.13 0.09,-0.32 0.34,-0.32 0.18,0 0.49,0.14 0.49,0.53 0,0.51 -0.58,0.63 -0.86,0.63 -0.55,0 -0.88,-0.49 -0.98,-0.68 -0.22,0.6 -0.71,0.68 -0.96,0.68 -0.99,0 -1.53,-1.31 -1.53,-1.54 0,-0.1 0.1,-0.1 0.15,-0.1 0.13,0 0.13,0.01 0.18,0.17 0.27,0.86 0.79,1.25 1.18,1.25 0.29,0 0.48,-0.23 0.48,-0.63 0,-0.24 -0.12,-0.73 -0.21,-1.1 -0.11,-0.41 -0.12,-0.45 -0.23,-0.9 -0.16,-0.65 -0.36,-1.45 -0.96,-1.45 -0.03,0 -0.27,0 -0.44,0.14 0.3,0.08 0.39,0.33 0.39,0.48 0,0.26 -0.21,0.32 -0.34,0.32 -0.25,0 -0.5,-0.21 -0.5,-0.54 0,-0.39 0.42,-0.62 0.88,-0.62 0.48,0 0.8,0.38 0.97,0.68 0.2,-0.57 0.69,-0.68 0.95,-0.68 1.03,0 1.53,1.34 1.53,1.54 0,0.1 -0.08,0.1 -0.14,0.1 -0.13,0 -0.14,-0.01 -0.19,-0.17 -0.26,-0.86 -0.76,-1.25 -1.18,-1.25 -0.2,0 -0.47,0.12 -0.47,0.64 0,0.24 0.11,0.67 0.19,1.01 0.11,0.41 0.26,1.03 0.34,1.36 0.14,0.52 0.41,1.07 0.88,1.07 0.03,0 0.27,0 0.43,-0.14 z"
+   style="fill:#000000;stroke-width:0" />
+</g>    <g
+       id="content"
+       transform="matrix(1,0,0,-1,256.43502,1329.0495)"
        xml:space="preserve"
        stroke-miterlimit="10.433"
        font-style="normal"
        font-size-adjust="none"
        letter-spacing="normal"
        word-spacing="normal"
-       ns0:text="$\\mathit{x}$\n\n"
+       ns0:text="$\\mathbf{fir}$\n\n\n"
        ns0:preamble=""
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
    style="fill:#000000;stroke-width:0"
-   d="m 228.15,661.28 -0.01,-0.01 -0.02,0 -0.02,-0.01 -0.02,0 -0.01,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,0 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.02 -0.02,-0.02 -0.02,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,0 0,-0.01 0,0 0,0 0,0 0,0 c 0,-0.13 0.09,-0.32 0.34,-0.32 0.18,0 0.49,0.14 0.49,0.53 0,0.51 -0.58,0.63 -0.86,0.63 -0.55,0 -0.88,-0.49 -0.98,-0.68 -0.22,0.6 -0.71,0.68 -0.96,0.68 -0.99,0 -1.53,-1.31 -1.53,-1.54 0,-0.1 0.1,-0.1 0.15,-0.1 0.13,0 0.13,0.01 0.18,0.17 0.27,0.86 0.79,1.25 1.18,1.25 0.29,0 0.48,-0.23 0.48,-0.63 0,-0.24 -0.12,-0.73 -0.21,-1.1 -0.11,-0.41 -0.12,-0.45 -0.23,-0.9 -0.16,-0.65 -0.36,-1.45 -0.96,-1.45 -0.03,0 -0.27,0 -0.44,0.14 0.3,0.08 0.39,0.33 0.39,0.48 0,0.26 -0.21,0.32 -0.34,0.32 -0.25,0 -0.5,-0.21 -0.5,-0.54 0,-0.39 0.42,-0.62 0.88,-0.62 0.48,0 0.8,0.38 0.97,0.68 0.2,-0.57 0.69,-0.68 0.95,-0.68 1.03,0 1.53,1.34 1.53,1.54 0,0.1 -0.08,0.1 -0.14,0.1 -0.13,0 -0.14,-0.01 -0.19,-0.17 -0.26,-0.86 -0.76,-1.25 -1.18,-1.25 -0.2,0 -0.47,0.12 -0.47,0.64 0,0.24 0.11,0.67 0.19,1.01 0.11,0.41 0.26,1.03 0.34,1.36 0.14,0.52 0.41,1.07 0.88,1.07 0.03,0 0.27,0 0.43,-0.14 z"
-   id="path7779" />
+   d="m 227.36,661.19 0.02,0 0.02,0 0.02,0 0.02,0 0.02,0 0.01,0 0.02,-0.01 0.02,0 0.01,0 0.01,0 0.02,-0.01 0.01,0 0.01,-0.01 0.01,0 0.01,-0.01 0.01,-0.01 0.01,0 0,-0.01 0.01,-0.02 0,0 0.01,-0.01 0,0 0,-0.01 0,-0.01 0.01,-0.01 0,0 0,-0.01 0,-0.01 0,-0.01 0.01,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.02 0,-0.01 0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.02 0,-0.01 0,-0.02 v -3.14 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.42,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.69 v 4.06 l -1.75,-0.06 c -0.01,-0.01 -0.01,-0.02 -0.01,-0.04 h -1.46 v 0.97 c 0,0.84 0.67,1.22 1.59,1.22 0.29,0 0.5,-0.05 0.73,-0.18 -0.17,-0.06 -0.44,-0.23 -0.44,-0.63 0,-0.39 0.29,-0.65 0.65,-0.65 0.36,0 0.65,0.25 0.65,0.66 0,0.52 -0.44,1.16 -1.53,1.16 -1.24,0 -2.67,-0.39 -2.67,-1.56 v -0.99 h -0.75 v -0.47 h 0.75 v -3.49 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.43,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.69 v 3.49 z"
+   id="path8086" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 231.82,660.59 v 1.13 l -1.65,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -3.08 h -0.69 v -0.47 c 0.35,0.01 0.8,0.03 1.25,0.03 0.38,0 1.02,0 1.38,-0.03 v 0.47 h -0.87 v 1.74 c 0,0.7 0.25,1.92 1.25,1.92 -0.01,-0.01 -0.19,-0.17 -0.19,-0.46 0,-0.41 0.32,-0.61 0.61,-0.61 0.28,0 0.6,0.21 0.6,0.61 0,0.53 -0.54,0.82 -1.05,0.82 -0.7,0 -1.1,-0.5 -1.33,-1.13 z"
+   id="path8088" />
+</g>    <path
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
+       d="m 552.19499,744.76952 0,14.29"
+       id="path2939"
+       sodipodi:nodetypes="cc" />
+    <path
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
+       d="m 472.19499,744.76952 0,14.29"
+       id="path2941"
+       sodipodi:nodetypes="cc" />
+    <path
+       sodipodi:nodetypes="cc"
+       id="path2943"
+       d="m 432.19499,744.76952 0,14.29"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
+    <path
+       transform="matrix(0.31195247,0,0,0.31195247,434.90426,681.57107)"
+       d="m -46.315493,32.435127 c 0,3.026564 -2.453514,5.480078 -5.480077,5.480078 -3.026564,0 -5.480078,-2.453514 -5.480078,-5.480078 0,-3.026563 2.453514,-5.480077 5.480078,-5.480077 3.026563,0 5.480077,2.453514 5.480077,5.480077 z"
+       sodipodi:ry="5.4800777"
+       sodipodi:rx="5.4800777"
+       sodipodi:cy="32.435127"
+       sodipodi:cx="-51.79557"
+       id="path2986"
+       style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+       sodipodi:type="arc" />
+    <g
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       ns0:preamble=""
+       ns0:text="$x_{t-1}$\n\n\n\n\n\n\n\n\n\n\n"
+       word-spacing="normal"
+       letter-spacing="normal"
+       font-size-adjust="none"
+       font-stretch="normal"
+       font-weight="normal"
+       font-variant="normal"
+       font-style="normal"
+       stroke-miterlimit="10.433"
+       xml:space="preserve"
+       transform="matrix(1,0,0,-1,225.80496,1349.9895)"
+       id="g3106">
+<path
+   id="path3108"
+   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z"
+   style="fill:#000000;stroke-width:0" />
+<path
+   id="path3110"
+   d="m 230.84,658.49 h 0.71 c 0.13,0 0.22,0 0.22,0.16 0,0.1 -0.09,0.1 -0.2,0.1 h -0.67 l 0.26,1.03 c 0.01,0.03 0.02,0.07 0.02,0.1 0,0.12 -0.09,0.22 -0.23,0.22 -0.18,0 -0.28,-0.12 -0.33,-0.3 -0.05,-0.18 0.04,0.16 -0.27,-1.05 h -0.71 c -0.13,0 -0.22,0 -0.22,-0.16 0,-0.1 0.08,-0.1 0.21,-0.1 h 0.66 l -0.41,-1.64 c -0.04,-0.18 -0.11,-0.43 -0.11,-0.52 0,-0.41 0.35,-0.66 0.75,-0.66 0.77,0 1.21,0.98 1.21,1.07 0,0.09 -0.09,0.09 -0.11,0.09 -0.08,0 -0.09,-0.02 -0.14,-0.13 -0.2,-0.44 -0.56,-0.83 -0.94,-0.83 -0.15,0 -0.24,0.09 -0.24,0.34 0,0.07 0.02,0.21 0.04,0.28 z"
+   style="fill:#000000;stroke-width:0" />
+<path
+   id="path3112"
+   d="m 237.32,657.32 0.01,0 0.01,0 0.01,0 0.02,0 0.02,0 0.01,0 0.01,0 0.01,0 0.02,0 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0,0 0.01,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0.01 0,0 c 0,0.18 -0.16,0.18 -0.28,0.18 h -4.16 c -0.11,0 -0.27,0 -0.27,-0.17 0,-0.17 0.16,-0.17 0.27,-0.17 z"
+   style="fill:#000000;stroke-width:0" />
+<path
+   id="path3114"
+   d="m 240.7,660.17 0,0.01 0,0.01 0,0.01 0,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 -0.01,0 0,0.01 0,0 0,0.01 0,0.01 -0.01,0.01 0,0 -0.01,0.01 0,0 -0.01,0.01 0,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 -0.01,0.01 -0.01,0 0,0 -0.01,0 0,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 0,0 -0.01,0 -0.01,0 -0.01,0 -0.01,0 c -0.44,-0.44 -1.08,-0.45 -1.37,-0.45 v -0.25 c 0.17,0 0.63,0 1.02,0.2 v -3.56 c 0,-0.23 0,-0.32 -0.7,-0.32 h -0.27 v -0.25 c 0.13,0.01 0.99,0.03 1.24,0.03 0.22,0 1.1,-0.02 1.25,-0.03 v 0.25 h -0.26 c -0.7,0 -0.7,0.09 -0.7,0.32 z"
+   style="fill:#000000;stroke-width:0" />
+</g>    <g
+       id="g3355"
+       transform="matrix(1,0,0,-1,265.98996,1349.9895)"
+       xml:space="preserve"
+       stroke-miterlimit="10.433"
+       font-style="normal"
+       font-variant="normal"
+       font-weight="normal"
+       font-stretch="normal"
+       font-size-adjust="none"
+       letter-spacing="normal"
+       word-spacing="normal"
+       ns0:text="$x_{t-2}$\n\n\n\n\n\n\n\n\n\n\n"
+       ns0:preamble=""
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z"
+   id="path3357" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 230.84,658.49 h 0.71 c 0.13,0 0.22,0 0.22,0.16 0,0.1 -0.09,0.1 -0.2,0.1 h -0.67 l 0.26,1.03 c 0.01,0.03 0.02,0.07 0.02,0.1 0,0.12 -0.09,0.22 -0.23,0.22 -0.18,0 -0.28,-0.12 -0.33,-0.3 -0.05,-0.18 0.04,0.16 -0.27,-1.05 h -0.71 c -0.13,0 -0.22,0 -0.22,-0.16 0,-0.1 0.08,-0.1 0.21,-0.1 h 0.66 l -0.41,-1.64 c -0.04,-0.18 -0.11,-0.43 -0.11,-0.52 0,-0.41 0.35,-0.66 0.75,-0.66 0.77,0 1.21,0.98 1.21,1.07 0,0.09 -0.09,0.09 -0.11,0.09 -0.08,0 -0.09,-0.02 -0.14,-0.13 -0.2,-0.44 -0.56,-0.83 -0.94,-0.83 -0.15,0 -0.24,0.09 -0.24,0.34 0,0.07 0.02,0.21 0.04,0.28 z"
+   id="path3359" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 237.32,657.32 0.01,0 0.01,0 0.01,0 0.02,0 0.02,0 0.01,0 0.01,0 0.01,0 0.02,0 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0,0 0.01,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0.01 0,0 c 0,0.18 -0.16,0.18 -0.28,0.18 h -4.16 c -0.11,0 -0.27,0 -0.27,-0.17 0,-0.17 0.16,-0.17 0.27,-0.17 z"
+   id="path3361" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 241.89,657.01 h -0.24 c -0.02,-0.15 -0.09,-0.57 -0.18,-0.63 -0.06,-0.05 -0.59,-0.05 -0.69,-0.05 h -1.29 c 0.74,0.65 0.98,0.85 1.4,1.17 0.52,0.42 1,0.85 1,1.51 0,0.84 -0.74,1.36 -1.63,1.36 -0.87,0 -1.46,-0.61 -1.46,-1.25 0,-0.35 0.3,-0.39 0.37,-0.39 0.17,0 0.37,0.12 0.37,0.37 0,0.13 -0.05,0.37 -0.41,0.37 0.22,0.5 0.69,0.65 1.02,0.65 0.7,0 1.06,-0.54 1.06,-1.11 0,-0.61 -0.43,-1.09 -0.66,-1.34 l -1.68,-1.66 c -0.07,-0.06 -0.07,-0.08 -0.07,-0.27 h 2.88 z"
+   id="path3363" />
 </g>    <g
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
        ns0:preamble=""
-       ns0:text="$\\mathbf{fir}$\n\n\n"
+       ns0:text="$x_{t-3}$\n\n\n\n\n\n\n\n\n\n\n"
        word-spacing="normal"
        letter-spacing="normal"
        font-size-adjust="none"
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(1,0,0,-1,256.43502,1329.0495)"
-       id="content">
+       transform="matrix(1,0,0,-1,305.85996,1349.9895)"
+       id="g3594">
 <path
-   id="path8086"
-   d="m 227.36,661.19 0.02,0 0.02,0 0.02,0 0.02,0 0.02,0 0.01,0 0.02,-0.01 0.02,0 0.01,0 0.01,0 0.02,-0.01 0.01,0 0.01,-0.01 0.01,0 0.01,-0.01 0.01,-0.01 0.01,0 0,-0.01 0.01,-0.02 0,0 0.01,-0.01 0,0 0,-0.01 0,-0.01 0.01,-0.01 0,0 0,-0.01 0,-0.01 0,-0.01 0.01,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.02 0,-0.01 0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.02 0,-0.01 0,-0.02 v -3.14 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.42,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.69 v 4.06 l -1.75,-0.06 c -0.01,-0.01 -0.01,-0.02 -0.01,-0.04 h -1.46 v 0.97 c 0,0.84 0.67,1.22 1.59,1.22 0.29,0 0.5,-0.05 0.73,-0.18 -0.17,-0.06 -0.44,-0.23 -0.44,-0.63 0,-0.39 0.29,-0.65 0.65,-0.65 0.36,0 0.65,0.25 0.65,0.66 0,0.52 -0.44,1.16 -1.53,1.16 -1.24,0 -2.67,-0.39 -2.67,-1.56 v -0.99 h -0.75 v -0.47 h 0.75 v -3.49 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.43,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.69 v 3.49 z"
+   id="path3596"
+   d="m 226.76,660.24 0.01,0.03 0,0.03 0.01,0.03 0.01,0.04 0.01,0.03 0.01,0.05 0.02,0.04 0.01,0.04 0.02,0.05 0.01,0.05 0.02,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.05 0.02,0.05 0.03,0.04 0.03,0.05 0.04,0.05 0.03,0.04 0.04,0.05 0.04,0.04 0.04,0.03 0.05,0.04 0.04,0.03 0.05,0.03 0.03,0.01 0.02,0.02 0.03,0.01 0.03,0.01 0.02,0.01 0.03,0 0.03,0.01 0.03,0.01 0.03,0 0.03,0 0.03,0.01 0.04,0 c 0.05,0 0.29,0 0.49,-0.13 -0.28,-0.05 -0.47,-0.3 -0.47,-0.54 0,-0.16 0.11,-0.35 0.38,-0.35 0.21,0 0.53,0.18 0.53,0.58 0,0.52 -0.58,0.66 -0.92,0.66 -0.58,0 -0.93,-0.53 -1.05,-0.76 -0.25,0.66 -0.79,0.76 -1.08,0.76 -1.03,0 -1.6,-1.29 -1.6,-1.54 0,-0.1 0.1,-0.1 0.12,-0.1 0.08,0 0.11,0.02 0.13,0.11 0.34,1.06 1,1.31 1.33,1.31 0.19,0 0.54,-0.09 0.54,-0.67 0,-0.31 -0.17,-0.98 -0.54,-2.37 -0.15,-0.62 -0.5,-1.04 -0.94,-1.04 -0.06,0 -0.29,0 -0.5,0.13 0.25,0.05 0.47,0.26 0.47,0.54 0,0.27 -0.22,0.35 -0.37,0.35 -0.3,0 -0.55,-0.26 -0.55,-0.58 0,-0.46 0.5,-0.66 0.94,-0.66 0.66,0 1.01,0.7 1.04,0.76 0.12,-0.37 0.48,-0.76 1.08,-0.76 1.03,0 1.59,1.29 1.59,1.54 0,0.1 -0.09,0.1 -0.12,0.1 -0.09,0 -0.1,-0.04 -0.13,-0.11 -0.32,-1.07 -1,-1.31 -1.32,-1.31 -0.39,0 -0.55,0.32 -0.55,0.66 0,0.22 0.06,0.44 0.17,0.88 z"
    style="fill:#000000;stroke-width:0" />
 <path
-   id="path8088"
-   d="m 231.82,660.59 v 1.13 l -1.65,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -3.08 h -0.69 v -0.47 c 0.35,0.01 0.8,0.03 1.25,0.03 0.38,0 1.02,0 1.38,-0.03 v 0.47 h -0.87 v 1.74 c 0,0.7 0.25,1.92 1.25,1.92 -0.01,-0.01 -0.19,-0.17 -0.19,-0.46 0,-0.41 0.32,-0.61 0.61,-0.61 0.28,0 0.6,0.21 0.6,0.61 0,0.53 -0.54,0.82 -1.05,0.82 -0.7,0 -1.1,-0.5 -1.33,-1.13 z"
+   id="path3598"
+   d="m 230.84,658.49 h 0.71 c 0.13,0 0.22,0 0.22,0.16 0,0.1 -0.09,0.1 -0.2,0.1 h -0.67 l 0.26,1.03 c 0.01,0.03 0.02,0.07 0.02,0.1 0,0.12 -0.09,0.22 -0.23,0.22 -0.18,0 -0.28,-0.12 -0.33,-0.3 -0.05,-0.18 0.04,0.16 -0.27,-1.05 h -0.71 c -0.13,0 -0.22,0 -0.22,-0.16 0,-0.1 0.08,-0.1 0.21,-0.1 h 0.66 l -0.41,-1.64 c -0.04,-0.18 -0.11,-0.43 -0.11,-0.52 0,-0.41 0.35,-0.66 0.75,-0.66 0.77,0 1.21,0.98 1.21,1.07 0,0.09 -0.09,0.09 -0.11,0.09 -0.08,0 -0.09,-0.02 -0.14,-0.13 -0.2,-0.44 -0.56,-0.83 -0.94,-0.83 -0.15,0 -0.24,0.09 -0.24,0.34 0,0.07 0.02,0.21 0.04,0.28 z"
    style="fill:#000000;stroke-width:0" />
-</g>    <path
-       sodipodi:nodetypes="cc"
-       id="path2939"
-       d="m 552.19499,744.76952 0,14.29"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
-    <path
-       sodipodi:nodetypes="cc"
-       id="path2941"
-       d="m 472.19499,744.76952 0,14.29"
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)" />
-    <path
-       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 432.19499,744.76952 0,14.29"
-       id="path2943"
-       sodipodi:nodetypes="cc" />
-  </g>
+<path
+   id="path3600"
+   d="m 237.32,657.32 0.01,0 0.01,0 0.01,0 0.02,0 0.02,0 0.01,0 0.01,0 0.01,0 0.02,0 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0 0.01,0.01 0.01,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0.01,0 0,0.01 0,0 0,0.01 0,0 0.01,0.01 0,0.01 0,0 0,0.01 0,0.01 0,0.01 0,0 c 0,0.18 -0.16,0.18 -0.28,0.18 h -4.16 c -0.11,0 -0.27,0 -0.27,-0.17 0,-0.17 0.16,-0.17 0.27,-0.17 z"
+   style="fill:#000000;stroke-width:0" />
+<path
+   id="path3602"
+   d="m 240.27,658.07 0.05,0 0.05,-0.01 0.05,0 0.05,-0.01 0.04,-0.01 0.05,-0.01 0.04,-0.01 0.04,-0.02 0.05,-0.02 0.04,-0.02 0.04,-0.02 0.03,-0.03 0.04,-0.03 0.03,-0.03 0.04,-0.03 0.03,-0.03 0.03,-0.04 0.03,-0.04 0.03,-0.04 0.02,-0.04 0.02,-0.05 0.03,-0.04 0.02,-0.05 0.01,-0.05 0.02,-0.06 0.01,-0.05 0.02,-0.06 0.01,-0.06 0,-0.06 0.01,-0.07 0,-0.07 0,-0.06 c 0,-0.87 -0.5,-1.13 -0.9,-1.13 -0.28,0 -0.9,0.08 -1.19,0.49 0.33,0.02 0.41,0.25 0.41,0.39 0,0.23 -0.17,0.39 -0.39,0.39 -0.19,0 -0.39,-0.12 -0.39,-0.41 0,-0.65 0.73,-1.08 1.57,-1.08 0.97,0 1.64,0.65 1.64,1.35 0,0.54 -0.45,1.08 -1.21,1.25 0.73,0.26 0.99,0.78 0.99,1.21 0,0.55 -0.63,0.96 -1.41,0.96 -0.77,0 -1.36,-0.38 -1.36,-0.93 0,-0.24 0.15,-0.37 0.36,-0.37 0.22,0 0.36,0.16 0.36,0.35 0,0.2 -0.14,0.35 -0.36,0.36 0.25,0.31 0.73,0.39 0.98,0.39 0.32,0 0.76,-0.15 0.76,-0.76 0,-0.3 -0.1,-0.62 -0.28,-0.83 -0.23,-0.27 -0.43,-0.28 -0.78,-0.3 -0.17,-0.01 -0.18,-0.01 -0.22,-0.02 -0.01,0 -0.07,-0.02 -0.07,-0.09 0,-0.1 0.06,-0.1 0.18,-0.1 z"
+   style="fill:#000000;stroke-width:0" />
+</g>  </g>
 </svg>
index e04ef37..cee9045 100644 (file)
@@ -448,7 +448,6 @@ c.p.r.baaij@@utwente.nl, matthijs@@stdin.nl, j.kuper@@utwente.nl}
 % make the title area
 \maketitle
 
-
 \begin{abstract}
 %\boldmath
 \CLaSH\ is a functional hardware description language that borrows both its 
@@ -459,7 +458,7 @@ he could in the traditional hardware description languages.
 
 Circuit descriptions can be translated to synthesizable VHDL using the 
 prototype \CLaSH\ compiler. As the circuit descriptions, simulation code, and 
-test input are plain Haskell, complete simulations can be compiled to an 
+test input are also valid Haskell, complete simulations can be compiled to an 
 executable binary by a Haskell compiler allowing high-speed simulation and 
 analysis.
 
@@ -490,7 +489,6 @@ machine.
 % creates the second title. It will be ignored for other modes.
 \IEEEpeerreviewmaketitle
 
-
 \section{Introduction}
 Hardware description languages have allowed the productivity of hardware 
 engineers to keep pace with the development of chip technology. Standard 
@@ -506,7 +504,7 @@ descriptions started in the early 1980s \cite{Cardelli1981, muFP,DAISY,FHDL},
 a time which also saw the birth of the currently popular hardware description 
 languages such as \VHDL. Functional languages are especially suited to
 describe hardware because combinational circuits can be directly modeled
-as mathematical functions and that functional languages are very good at
+as mathematical functions. Furthermore, functional languages are very good at
 describing and composing mathematical functions.
 
 In an attempt to decrease the amount of work involved in creating all the 
@@ -526,8 +524,8 @@ compiled by the same Haskell compiler as the circuit description itself.
 
 The approach taken in this research is not to make another domain specific 
 language embedded in Haskell, but to use (a subset of) the Haskell language 
-itself for the purpose of describing hardware. By taking this approach, we can 
-capture certain language constructs, such as Haskell's choice elements 
+\emph{itself} for the purpose of describing hardware. By taking this approach, 
+we can capture certain language constructs, such as Haskell's choice elements 
 (if-expressions, case-expressions, pattern matching, etc.), which are not 
 available in the functional hardware description languages that are embedded 
 in Haskell as a domain specific language. As far as the authors know, such 
@@ -538,16 +536,16 @@ for simulation using an optimizing Haskell compiler such as the Glasgow
 Haskell Compiler (\GHC)~\cite{ghc}.
 
 Where descriptions in a conventional hardware description language have an 
-explicit clock for the purpose state and synchronicity, the clock is implied 
-in this research. A developer describes the behavior of the hardware between 
-clock cycles. Many functional hardware description model signals as a stream 
-of all values over time; state is then modeled as a delay on this stream of 
-values. The approach taken in this research is to make the current state of a 
-circuit part of the input of the function and the updated state part of the 
-output. The current abstraction of state and time limits the descriptions to 
-synchronous hardware, there however is room within the language to eventually 
-add a different abstraction mechanism that will allow for the modeling of 
-asynchronous systems.
+explicit clock for the purposes state and synchronicity, in the research 
+presented in this paper the clock is implied. A developer describes the 
+behavior of the hardware between clock cycles. Many functional hardware 
+description model signals as a stream of all values over time; state is then 
+modeled as a delay on this stream of values. The approach taken in this 
+research is to make the current state of a circuit part of the input of the 
+function and the updated state part of the output. The current abstraction of 
+state and time limits the descriptions to synchronous hardware, there however 
+is room within the language to eventually add a different abstraction 
+mechanism that will allow for the modeling of asynchronous systems.
 
 Like the standard hardware description languages, descriptions made in a 
 functional hardware description language must eventually be converted into a 
@@ -567,7 +565,7 @@ circuit~\cite{reductioncircuit} for floating point numbers.
 \section{Hardware description in Haskell}
 
   \subsection{Function application}
-    The basic syntactic elements of a functional program are functions
+    Two basic syntactic elements of a functional program are functions
     and function application. These have a single obvious translation to a 
     netlist format: 
     \begin{inparaenum}
@@ -577,23 +575,25 @@ circuit~\cite{reductioncircuit} for floating point numbers.
             and
       \item function applications are translated to component instantiations.
     \end{inparaenum} 
-    The output port can have a structured type (such as a tuple), so having 
-    just a single output port does not pose any limitation. The actual 
+    The result value can have a composite type (such as a tuple), so having 
+    just a single result value does not pose any limitation. The actual 
     arguments of a function application are assigned to signals, which are 
     then mapped to the corresponding input ports of the component. The output 
     port of the function is also mapped to a signal, which is used as the 
-    result of the application itself.
-
-    Since every top level function generates its own component, the
-    hierarchy of function calls is reflected in the final netlist,% aswell, 
-    creating a hierarchical description of the hardware. The separation in 
-    different components makes it easier for a developer to understand and 
-    possibly hand-optimize the resulting \VHDL\ output of the \CLaSH\ 
-    compiler.
-
-    As an example we can see the netlist of the |mac| function in
-    \Cref{img:mac-comb}; the |mac| function applies both the |mul| and |add|
-    function to calculate $a * b + c$:
+    result of the application itself. Since every top level function generates 
+    its own component, the hierarchy of function calls is reflected in the 
+    final netlist, creating a hierarchical description of the hardware. 
+    % The separation in different components makes it easier for a developer 
+    % to understand and possibly hand-optimize the resulting \VHDL\ output of 
+    % the \CLaSH\ compiler.
+
+    The short example demonstrated below gives an indication of the level of 
+    conciseness that can be achieved with functional hardware description 
+    languages when compared with the more traditional hardware description 
+    languages. The example is a combinational multiply-accumulate circuit that 
+    works for \emph{any} word length (this type of polymorphism will be 
+    further elaborated in \Cref{sec:polymorhpism}). The corresponding netlist 
+    is depicted in \Cref{img:mac-comb}.
     
     \begin{code}
     mac a b c = add (mul a b) c
@@ -605,18 +605,21 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     \label{img:mac-comb}
     \end{figure}
     
-    The result of using a structural input type can be seen in 
-    \cref{img:mac-comb-nocurry} where the |mac| function now uses a single
-    input tuple for the |a|, |b|, and |c| arguments:
+    The use of a composite result value is demonstrated in the next example, 
+    where the multiply-accumulate circuit not only returns the accumulation 
+    result, but also the intermediate multiplication result. Its corresponding
+    netlist can be see in \Cref{img:mac-comb-composite}.
     
     \begin{code}
-    mac (a, b, c) = add (mul a b) c
+    mac a b c = (z, add z c)
+      where
+        z = mul a b
     \end{code}
     
     \begin{figure}
     \centerline{\includegraphics{mac-nocurry.svg}}
-    \caption{Combinatorial Multiply-Accumulate (complex input)}
-    \label{img:mac-comb-nocurry}
+    \caption{Combinatorial Multiply-Accumulate (composite output)}
+    \label{img:mac-comb-composite}
     \end{figure}
 
   \subsection{Choice}
@@ -644,7 +647,9 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     \end{code}
 
     The naive netlist corresponding to both versions of the example is 
-    depicted in \Cref{img:choice}.
+    depicted in \Cref{img:choice}. Note that the \hs{pred} variable is only
+    compared to the \hs{Equal} value, as an inequality immediately implies 
+    that the \hs{pred} variable has a \hs{NotEqual} value.
 
     \begin{code}    
     sumif pred a b = case pred of
@@ -670,19 +675,19 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     \label{img:choice}
     \end{figure}
 
-    A user-friendly and also very powerful form of choice is patter
-    matching. A function can be defined in multiple clauses, where each clause 
-    corresponds to a pattern. When an argument matches a pattern, the 
-    corresponding clause will be used. Expressions can also contain guards, 
-    where the expression is only executed if the guard evaluates to true, and 
-    continues with the next clause if the guard evaluates to false. Like 
-    \hs{if-then-else} expressions, pattern matching and guards have a 
-    (straightforward) translation to \hs{case} expressions and can as such be 
-    mapped to multiplexers. A third version of the earlier example, using both 
-    pattern matching and guards, can be seen below. The guard is the 
-    expression that follows the vertical bar (\hs{|}) and precedes the 
-    assignment operator (\hs{=}). The \hs{otherwise} guards always evaluate to 
-    \hs{true}.
+    A user-friendly and also very powerful form of choice that is not found i
+    the traditional hardware description languages is pattern matching. A 
+    function can be defined in multiple clauses, where each clause corresponds 
+    to a pattern. When an argument matches a pattern, the corresponding clause 
+    will be used. Expressions can also contain guards, where the expression is 
+    only executed if the guard evaluates to true, and continues with the next 
+    clause if the guard evaluates to false. Like \hs{if-then-else} 
+    expressions, pattern matching and guards have a (straightforward) 
+    translation to \hs{case} expressions and can as such be mapped to 
+    multiplexers. A third version of the earlier example, using both pattern 
+    matching and guards, can be seen below. The guard is the expression that 
+    follows the vertical bar (\hs{|}) and precedes the assignment operator 
+    (\hs{=}). The \hs{otherwise} guards always evaluate to \hs{true}.
     
     The version using pattern matching and guards corresponds to the same 
     naive netlist representation (\Cref{img:choice}) as the earlier two 
@@ -769,7 +774,7 @@ circuit~\cite{reductioncircuit} for floating point numbers.
         has a fixed length. The \hs{Vector} type constructor takes two type 
         arguments: the length of the vector and the type of the elements 
         contained in it. The short-hand notation used for the vector type in  
-        the rest of paper is: \hs{[a|n]}. Where the \hs{a} is the element 
+        the rest of paper is: \hs{[a|n]}, here \hs{a} is the element 
         type, and \hs{n} is the length of the vector. Note that this is
         a notation used in this paper only, vectors are slightly more
         verbose in real \CLaSH\ descriptions.
@@ -823,9 +828,9 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     names for existing types, where synonyms are completely interchangeable 
     and type renaming requires explicit conversions. Therefore, these do not 
     need any particular translation, a synonym or renamed type will just use 
-    the same representation as the original type. For algebraic types, we can 
-    make the following distinctions: 
-
+    the same representation as the original type. 
+    
+    For algebraic types, we can make the following distinctions:
     \begin{xlist}
       \item[\bf{Single constructor}]
         Algebraic datatypes with a single constructor with one or more
@@ -860,7 +865,7 @@ circuit~\cite{reductioncircuit} for floating point numbers.
         supported.
     \end{xlist}
 
-  \subsection{Polymorphism}
+  \subsection{Polymorphism}\label{sec:polymorhpism}
     A powerful feature of most (functional) programming languages is 
     polymorphism, it allows a function to handle values of different data 
     types in a uniform way. Haskell supports \emph{parametric 
@@ -924,10 +929,10 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     consequently there is no way to determine the actual types for the type 
     parameters.
 
-    \CLaSH\ does not support user-defined type classes, but does use some
-    of the standard Haskell type classes for its built-in function, such as: 
-    \hs{Num} for numerical operations, \hs{Eq} for the equality operators, and
-    \hs{Ord} for the comparison/order operators.
+    \CLaSH\ does \emph{currently} not support\emph{ user-defined} type 
+    classes, but does use some of the standard Haskell type classes for its 
+    built-in function, such as: \hs{Num} for numerical operations, \hs{Eq} for 
+    the equality operators, and \hs{Ord} for the comparison/order operators.
 
   \subsection{Higher-order functions \& values}
     Another powerful abstraction mechanism in functional languages, is
@@ -936,6 +941,7 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     value and be passed around, even as the argument of another
     function. The following example should clarify this concept:
     
+%format not = "\mathit{not}"
     \begin{code}
     negateVector xs = map not xs
     \end{code}
@@ -970,11 +976,11 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     expression, that adds one to every element of a vector:
 
     \begin{code}
-    map (+ 1) xs
+    map (add 1) xs
     \end{code}
 
-    Here, the expression \hs{(+ 1)} is the partial application of the
-    plus operator to the value \hs{1}, which is again a function that
+    Here, the expression \hs{(add 1)} is the partial application of the
+    addition function to the value \hs{1}, which is again a function that
     adds one to its (next) argument. A lambda expression allows one to 
     introduce an anonymous function in any expression. Consider the following 
     expression, which again adds one to every element of a vector:
@@ -1006,8 +1012,7 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     \begin{inparaenum}
       \item given the same arguments twice, it should return the same value in 
       both cases, and
-      \item when the function is called, it should not have observable 
-      side-effects.
+      \item that the function has no observable side-effects.
     \end{inparaenum}
     % This purity property is important for functional languages, since it 
     % enables all kinds of mathematical reasoning that could not be guaranteed 
@@ -1038,12 +1043,13 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     \label{img:mac-state}
     \end{figure}
     
-    The \hs{State} keyword indicates which arguments are part of the current 
-    state, and what part of the output is part of the updated state. This 
-    aspect will also be reflected in the type signature of the function. 
-    Abstracting the state of a circuit in this way makes it very explicit: 
-    which variables are part of the state is completely determined by the 
-    type signature. This approach to state is well suited to be used in 
+    Note that the \hs{macS} function returns bot the new state and the value
+    of the output port. The \hs{State} keyword indicates which arguments are 
+    part of the current state, and what part of the output is part of the 
+    updated state. This aspect will also be reflected in the type signature of 
+    the function. Abstracting the state of a circuit in this way makes it very 
+    explicit: which variables are part of the state is completely determined 
+    by the type signature. This approach to state is well suited to be used in 
     combination with the existing code and language features, such as all the 
     choice elements, as state values are just normal values. We can simulate 
     stateful descriptions using the recursive \hs{run} function:
@@ -1061,20 +1067,20 @@ circuit~\cite{reductioncircuit} for floating point numbers.
     first input value, \hs{i}. The result is the first output value, \hs{o}, 
     and the updated state \hs{s'}. The next iteration of the \hs{run} function 
     is then called with the updated state, \hs{s'}, and the rest of the 
-    inputs, \hs{inps}. It is assumed that there is one input per clock cycle.
+    inputs, \hs{inps}. For the time being, and in the context of this paper, 
+    It is assumed that there is one input per clock cycle.
     Also note how the order of the input, output, and state in the \hs{run} 
     function corresponds with the order of the input, output and state of the 
     \hs{macS} function described earlier.
     
-    As both the \hs{run} function, the hardware description, and the test 
-    inputs are plain Haskell, the complete simulation can be compiled to an 
-    executable binary by an optimizing Haskell compiler, or executed in an 
+    As the \hs{run} function, the hardware description, and the test 
+    inputs are also valid Haskell, the complete simulation can be compiled to 
+    an executable binary by an optimizing Haskell compiler, or executed in an 
     Haskell interpreter. Both simulation paths are much faster than first 
     translating the description to \VHDL\ and then running a \VHDL\ 
-    simulation, where the executable binary has an additional simulation speed 
-    bonus in case there is a large set of test inputs.
+    simulation.
     
-\section{\CLaSH\ compiler}
+\section{The \CLaSH\ compiler}
 An important aspect in this research is the creation of the prototype 
 compiler, which allows us to translate descriptions made in the \CLaSH\ 
 language as described in the previous section to synthesizable \VHDL, allowing 
@@ -1084,9 +1090,7 @@ The Glasgow Haskell Compiler (\GHC) is an open-source Haskell compiler that
 also provides a high level API to most of its internals. The availability of 
 this high-level API obviated the need to design many of the tedious parts of 
 the prototype compiler, such as the parser, semantic checker, and especially 
-the type-checker. The parser, semantic checker, and type-checker together form 
-the front-end of the prototype compiler pipeline, as depicted in 
-\Cref{img:compilerpipeline}.
+the type-checker. These parts together form the front-end of the prototype compiler pipeline, as seen in \Cref{img:compilerpipeline}.
 
 \begin{figure}
 \centerline{\includegraphics{compilerpipeline.svg}}
@@ -1094,21 +1098,7 @@ the front-end of the prototype compiler pipeline, as depicted in
 \label{img:compilerpipeline}
 \end{figure}
 
-The output of the \GHC\ front-end is the original Haskell description 
-translated to \emph{Core}~\cite{Sulzmann2007}, which is smaller, typed, 
-functional language that is relatively easier to process than the larger 
-Haskell language. A description in \emph{Core} can still contain properties 
-which have no direct translation to hardware, such as polymorphic types and 
-function-valued arguments. Such a description needs to be transformed to a 
-\emph{normal form}, which only contains properties that have a direct 
-translation. The second stage of the compiler, the \emph{normalization} phase, 
-exhaustively applies a set of \emph{meaning-preserving} transformations on the 
-\emph{Core} description until this description is in a \emph{normal form}. 
-This set of transformations includes transformations typically found in 
-reduction systems for lambda calculus~\cite{lambdacalculus}, such a 
-$\beta$-reduction and $\eta$-expansion, but also includes self-defined 
-transformations that are responsible for the reduction of higher-order 
-functions to `regular' first-order functions.
+The output of the \GHC\ front-end consists of the translation of the original Haskell description in \emph{Core}~\cite{Sulzmann2007}, which is a smaller, typed, functional language. This \emph{Core} language is relatively easy to process compared to the larger Haskell language. A description in \emph{Core} can still contain elements which have no direct translation to hardware, such as polymorphic types and function-valued arguments. Such a description needs to be transformed to a \emph{normal form}, which only contains elements that have a direct translation. The second stage of the compiler, the \emph{normalization} phase, exhaustively applies a set of \emph{meaning-preserving} transformations on the \emph{Core} description until this description is in a \emph{normal form}. This set of transformations includes transformations typically found in reduction systems and lambda calculus~\cite{lambdacalculus}, such as $\beta$-reduction and $\eta$-expansion. It also includes self-defined transformations that are responsible for the reduction of higher-order functions to `regular' first-order functions.
 
 The final step in the compiler pipeline is the translation to a \VHDL\ 
 \emph{netlist}, which is a straightforward process due to resemblance of a 
@@ -1156,39 +1146,33 @@ vector. This continues until the end of the vector is reached. The result of
 the \hs{foldl1} function is the result of the last application. It is obvious 
 that the \hs{zipWith (*)} function is pairwise multiplication and that the 
 \hs{foldl1 (+)} function is summation.
-
-Returning to the actual \acro{FIR} filter, we will slightly change the 
-equation describing it, so as to make the translation to code more obvious and 
-concise. What we do is change the definition of the vector of input samples 
-and delay the computation by one sample. Instead of having the input sample 
-received at time $t$ stored in $x_t$, $x_0$ now always stores the newest 
-sample, and $x_i$ stores the $ith$ previous sample. This changes the equation 
-to the following (note that this is completely equivalent to the original 
-equation, just with a different definition of $x$ that will better suit the 
-transformation to code):
-
-\begin{equation}
-y_t  = \sum\nolimits_{i = 0}^{n - 1} {x_i  \cdot h_i } 
-\end{equation}
-
+% Returning to the actual \acro{FIR} filter, we will slightly change the 
+% equation describing it, so as to make the translation to code more obvious and 
+% concise. What we do is change the definition of the vector of input samples 
+% and delay the computation by one sample. Instead of having the input sample 
+% received at time $t$ stored in $x_t$, $x_0$ now always stores the newest 
+% sample, and $x_i$ stores the $ith$ previous sample. This changes the equation 
+% to the following (note that this is completely equivalent to the original 
+% equation, just with a different definition of $x$ that will better suit the 
+% transformation to code):
+% 
+% \begin{equation}
+% y_t  = \sum\nolimits_{i = 0}^{n - 1} {x_i  \cdot h_i } 
+% \end{equation}
 The complete definition of the \acro{FIR} filter in code then becomes:
 
 \begin{code}
-fir (State (xs,hs)) x = (State (x >> xs,hs), xs *+* hs)
+fir (State (xs,hs)) x = 
+  (State (x >> xs,hs), (x +> xs) *+* hs)
 \end{code}
 
-Where the vector \hs{hs} contains the \acro{FIR} coefficients and the vector 
-\hs{xs} contains the previous input sample in front and older samples behind. 
-The code for the shift (\hs{>>}) operator, that adds the new input sample 
-(\hs{x}) to the list of previous input samples (\hs{xs}) and removes the 
-oldest sample, is shown below:
+Where the vector \hs{xs} contains the previous input samples, the vector \hs{hs} contains the \acro{FIR} coefficients, and \hs{x} is the current input sample. The concatenate operator (\hs{+>}) creates a new vector by placing the current sample (\hs{x}) in front of the previous samples vector (\hs{xs}). The code for the shift (\hs{>>}) operator, that adds the new input sample (\hs{x}) to the list of previous input samples (\hs{xs}) and removes the oldest sample, is shown below:
 
 \begin{code}
 x >> xs = x +> init xs  
 \end{code}
 
-The \hs{init} function returns all but the last element of a vector, and the 
-concatenate operator (\hs{+>}) adds a new element to the front of a vector. 
+Where the \hs{init} function returns all but the last element of a vector. 
 The resulting netlist of a 4-taps \acro{FIR} filter, created by specializing 
 the vectors of the \acro{FIR} code to a length of 4, is depicted in 
 \Cref{img:4tapfir}.
@@ -1199,7 +1183,7 @@ the vectors of the \acro{FIR} code to a length of 4, is depicted in
 \label{img:4tapfir}
 \end{figure}
 
-\subsection{Higher order CPU}
+\subsection{Higher-order CPU}
 The following simple CPU is an example of user-defined higher order
 functions and pattern matching. The CPU consists of four function units,
 of which three have a fixed function and one can perform some less
@@ -1305,12 +1289,9 @@ features of \acro{HML} could be translated to hardware. The \CLaSH\ compiler
 on the other hand can correctly translate all of the language constructs 
 mentioned in this paper to a netlist format.
 
-Like this work, many functional hardware description languages have some sort 
-of foundation in the functional programming language Haskell. 
-Hawk~\cite{Hawk1} uses Haskell to describe system-level executable 
+Like the work presented in this paper, many functional hardware description languages have some sort of foundation in the functional programming language Haskell. Hawk~\cite{Hawk1} uses Haskell to describe system-level executable 
 specifications used to model the behavior of superscalar microprocessors. Hawk 
-specifications can be simulated, but there seems to be no support for 
-automated circuit synthesis. 
+specifications can be simulated; to the best knowledge of the authors there is however no support for automated circuit synthesis. 
 
 The ForSyDe~\cite{ForSyDe2} system uses Haskell to specify abstract system 
 models, which can (manually) be transformed into an implementation model using 
@@ -1332,17 +1313,23 @@ generators when viewed from a synthesis viewpoint, in that the language
 elements of Haskell, such as choice, can be used to guide the circuit 
 generation. If a developer wants to insert a choice element inside an actual 
 circuit he will have to explicitly instantiate a multiplexer-like component. 
-
 In this respect \CLaSH\ differs from Lava, in that all the choice elements, 
 such as case-statements and pattern matching, are synthesized to choice 
 elements in the eventual circuit. As such, richer control structures can both 
-be specified and synthesized in \CLaSH\ compared to any of the languages 
-mentioned in this section.
+be specified and synthesized in \CLaSH\ compared to any of the embedded 
+languages such as Hawk, ForSyDe and Lava.
 
 The merits of polymorphic typing, combined with higher-order functions, are 
 now also recognized in the `main-stream' hardware description languages, 
 exemplified by the new \VHDL-2008 standard~\cite{VHDL2008}. \VHDL-2008 support 
-for generics has been extended to types and subprograms, allowing a developer to describe components with polymorphic ports and function-valued arguments. Note that the types and subprograms still require an explicit generic map, whereas types can be automatically inferred, and function-values can be automatically propagated by the \CLaSH\ compiler. There are also no (generally available) \VHDL\ synthesis tools that currently support the \VHDL-2008 standard, and thus the synthesis of polymorphic types and function-valued arguments.
+for generics has been extended to types and subprograms, allowing a developer 
+to describe components with polymorphic ports and function-valued arguments. 
+Note that the types and subprograms still require an explicit generic map, 
+whereas types can be automatically inferred, and function-values can be 
+automatically propagated by the \CLaSH\ compiler. There are also no (generally 
+available) \VHDL\ synthesis tools that currently support the \VHDL-2008 
+standard, and thus the synthesis of polymorphic types and function-valued 
+arguments.
 
 % Wired~\cite{Wired},, T-Ruby~\cite{T-Ruby}, Hydra~\cite{Hydra}. 
 % 
@@ -1481,7 +1468,7 @@ earlier mentioned properties do indeed exist.
 % number - used to balance the columns on the last page
 % adjust value as needed - may need to be readjusted if
 % the document is modified later
-\IEEEtriggeratref{14}
+\IEEEtriggeratref{14}
 % The "triggered" command can be changed if desired:
 %\IEEEtriggercmd{\enlargethispage{-5in}}
 
index 2b9653b..a0ecc74 100644 (file)
    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="167.75"
-   height="62.249371"
+   width="131.25"
+   height="68.14473"
    id="svg2"
    version="1.1"
    inkscape:version="0.47 r22583"
-   sodipodi:docname="mac-nocurry.svg">
+   sodipodi:docname="mac.svg">
   <sodipodi:namedview
      id="base"
      pagecolor="#ffffff"
      borderopacity="1.0"
      inkscape:pageopacity="0.0"
      inkscape:pageshadow="2"
-     inkscape:zoom="4.3338301"
-     inkscape:cx="41.187586"
-     inkscape:cy="31.224388"
+     inkscape:zoom="4"
+     inkscape:cx="64.577756"
+     inkscape:cy="37.105291"
      inkscape:document-units="px"
      inkscape:current-layer="layer1"
      showgrid="false"
      inkscape:snap-grids="true"
      inkscape:window-width="1091"
      inkscape:window-height="838"
-     inkscape:window-x="253"
-     inkscape:window-y="212"
+     inkscape:window-x="30"
+     inkscape:window-y="154"
      inkscape:window-maximized="0">
     <inkscape:grid
        type="xygrid"
   </sodipodi:namedview>
   <defs
      id="defs4">
+    <marker
+       inkscape:stockid="TriangleOutM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="TriangleOutM"
+       style="overflow:visible">
+      <path
+         id="path4382"
+         d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="scale(0.4,0.4)" />
+    </marker>
+    <marker
+       inkscape:stockid="DotM"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="DotM"
+       style="overflow:visible">
+      <path
+         id="path4301"
+         d="m -2.5,-1 c 0,2.76 -2.24,5 -5,5 -2.76,0 -5,-2.24 -5,-5 0,-2.76 2.24,-5 5,-5 2.76,0 5,2.24 5,5 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none;marker-end:none"
+         transform="matrix(0.4,0,0,0.4,2.96,0.4)" />
+    </marker>
     <marker
        inkscape:stockid="Arrow1Mend"
        orient="auto"
        inkscape:vp_z="744.09448 : 526.18109 : 1"
        inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
        id="perspective10" />
+    <inkscape:perspective
+       id="perspective3098"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective3128"
+       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
+       inkscape:vp_z="1 : 0.5 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 0.5 : 1"
+       sodipodi:type="inkscape:persp3d" />
   </defs>
   <metadata
      id="metadata7">
         <dc:format>image/svg+xml</dc:format>
         <dc:type
            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
+        <dc:title></dc:title>
       </cc:Work>
     </rdf:RDF>
   </metadata>
      inkscape:label="Layer 1"
      inkscape:groupmode="layer"
      id="layer1"
-     transform="translate(-342.5,-556.3198)">
+     transform="translate(-379,-556.3654)">
     <rect
        style="fill:#ffffff;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
        id="rect2925"
-       width="115"
-       height="55.315327"
-       x="378.5"
+       width="100.64346"
+       height="61.256287"
+       x="394.5"
        y="562.75385" />
     <rect
-       y="583.06915"
+       y="589.06915"
        x="454"
        height="29.999987"
        width="30"
        id="rect5226"
        style="fill:#ffffff;stroke:#000000;stroke-width:0.54772252" />
     <rect
-       style="fill:#ffffff;stroke:#000000;stroke-width:0.54313898"
+       style="fill:#ffffff;stroke:#000000;stroke-width:0.54772252"
        id="rect2879"
-       width="29.5"
+       width="30"
        height="29.999987"
        x="404.5"
        y="567.75385" />
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 484,598.06917 25,0"
-       id="path2946"
+       d="m 379.5,573.34948 23,0"
+       id="path2940"
        sodipodi:nodetypes="cc" />
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 434,582.36977 9,0 0,6 9,0"
-       id="path4172"
-       sodipodi:nodetypes="cccc" />
-    <text
-       xml:space="preserve"
-       style="font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Times New Roman;-inkscape-font-specification:'Times New Roman,'"
-       x="350.5"
-       y="585.34949"
-       id="text5180"><tspan
-         sodipodi:role="line"
-         x="0"
-         y="0"
-         id="tspan5182"
-         style="font-size:10px;font-style:italic;-inkscape-font-specification:Bitstream Vera Sans Oblique"><tspan
-           x="350.5"
-           y="585.34949"
-           id="tspan5184"
-           style="font-size:10px;font-style:italic;-inkscape-font-specification:Bitstream Vera Sans Oblique" /></tspan></text>
+       d="m 379.5,593.34948 23,0"
+       id="path2942"
+       sodipodi:nodetypes="cc" />
     <path
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m -35.5,33.220423 45.5,-0.0203 0,-15 14.5,0.0203"
-       id="path2874"
-       transform="translate(378.5,555.14935)"
-       sodipodi:nodetypes="cccc" />
+       d="m 379.5,614.34948 73,0"
+       id="path2944"
+       sodipodi:nodetypes="cc" />
     <path
-       sodipodi:nodetypes="ccc"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 10,33.200127 0,5 14.5,0.0203"
-       id="path2876"
-       transform="translate(378.5,555.14935)" />
+       d="m 484,604.06917 25,0"
+       id="path2946"
+       sodipodi:nodetypes="cc" />
     <path
-       sodipodi:nodetypes="ccc"
        style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow1Mend)"
-       d="m 10,38.200127 0,15 63.5,0.0203"
-       id="path2878"
-       transform="translate(378.5,555.14935)" />
+       d="m 434.5,583.34948 9,-3.1e-4 0,11.00031 9,0"
+       id="path4172"
+       sodipodi:nodetypes="cccc" />
     <g
-       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-       id="g2973"
-       transform="matrix(1,0,0,-1,167.15,1227.5798)"
-       xml:space="preserve"
-       stroke-miterlimit="10.433"
-       font-style="normal"
-       font-variant="normal"
-       font-weight="normal"
-       font-stretch="normal"
-       font-size-adjust="none"
-       letter-spacing="normal"
-       word-spacing="normal"
-       ns0:text="$\\mathit{a}$\n"
-       ns0:preamble="">
-<path
-   style="fill:#000000;stroke-width:0"
-   d="m 226.91,657.82 0.01,-0.04 0.01,-0.05 0.02,-0.04 0.01,-0.04 0.02,-0.04 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.03,-0.03 0.02,-0.02 0.03,-0.03 0.03,-0.02 0.02,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.01 0.03,-0.01 0.03,-0.02 0.04,-0.01 0.03,-0.01 0.03,0 0.03,-0.01 0.04,-0.01 0.03,0 0.03,0 0.03,-0.01 0.04,0 c 0.36,0 0.57,0.25 0.72,0.56 0.18,0.38 0.3,0.96 0.3,0.98 0,0.1 -0.08,0.1 -0.15,0.1 -0.12,0 -0.13,-0.01 -0.19,-0.23 -0.14,-0.56 -0.32,-1.19 -0.66,-1.19 -0.26,0 -0.26,0.27 -0.26,0.41 0,0.07 0,0.23 0.07,0.51 l 0.67,2.71 c 0.04,0.14 0.04,0.16 0.04,0.21 0,0.21 -0.16,0.26 -0.27,0.26 -0.31,0 -0.38,-0.34 -0.39,-0.39 -0.19,0.43 -0.51,0.59 -0.83,0.59 v -0.22 c 0.44,0 0.69,-0.52 0.69,-0.94 0,-0.02 -0.01,-0.07 -0.03,-0.13 h 0 l -0.47,-1.88 c -0.08,-0.32 -0.7,-1.13 -1.25,-1.13 -0.46,0 -0.54,0.59 -0.54,0.89 0,0.5 0.3,1.66 0.48,2.08 0.25,0.61 0.71,1.11 1.12,1.11 v 0.22 c -1.11,0 -2.28,-1.52 -2.28,-2.97 0,-0.85 0.46,-1.55 1.2,-1.55 0.36,0 0.8,0.21 1.2,0.7 z"
-   id="path2975" />
-</g>    <g
        ns0:preamble=""
-       ns0:text="$\\mathit{b}$\n"
+       ns0:text="$\\mathit{a}$\n"
        word-spacing="normal"
        letter-spacing="normal"
        font-size-adjust="none"
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(1,0,0,-1,167.08,1247.2798)"
-       id="g3039"
+       transform="matrix(1,0,0,-1,159.63335,1229.1404)"
+       id="content"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
-   id="path3041"
-   d="m 226.45,663.9 0,0 0,0 0,0.01 0.01,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 0.01,0.01 0,0.01 0,0.01 0,0 0,0 0.01,0.01 0,0 0,0.01 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0 0,0 0,0.01 c 0,0.09 -0.06,0.12 -0.14,0.12 -0.03,0 -0.13,-0.01 -0.16,-0.02 l -0.98,-0.08 c -0.12,-0.01 -0.23,-0.02 -0.23,-0.21 0,-0.11 0.1,-0.11 0.24,-0.11 0.47,0 0.49,-0.07 0.49,-0.17 0,-0.03 -0.03,-0.16 -0.03,-0.17 l -0.98,-3.94 c -0.01,-0.03 -0.11,-0.43 -0.11,-0.81 0,-0.84 0.42,-1.52 1.14,-1.52 v 0.22 c -0.24,0 -0.57,0.21 -0.57,0.96 0,0.44 0.09,0.79 0.37,1.92 0.07,0.24 0.07,0.26 0.22,0.46 0.29,0.4 0.67,0.74 1.05,0.74 0.45,0 0.55,-0.57 0.55,-0.89 0,-0.42 -0.27,-1.6 -0.56,-2.24 -0.12,-0.25 -0.55,-0.95 -1.06,-0.95 h 0 v -0.22 c 1.12,0 2.29,1.5 2.29,2.96 0,1.07 -0.6,1.56 -1.2,1.56 -0.38,0 -0.72,-0.21 -1.06,-0.53 z"
+   id="path3817"
+   d="m 226.91,657.82 0.01,-0.04 0.01,-0.05 0.02,-0.04 0.01,-0.04 0.02,-0.04 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.03,-0.03 0.02,-0.02 0.03,-0.03 0.03,-0.02 0.02,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.01 0.03,-0.01 0.03,-0.02 0.04,-0.01 0.03,-0.01 0.03,0 0.03,-0.01 0.04,-0.01 0.03,0 0.03,0 0.03,-0.01 0.04,0 c 0.36,0 0.57,0.25 0.72,0.56 0.18,0.38 0.3,0.96 0.3,0.98 0,0.1 -0.08,0.1 -0.15,0.1 -0.12,0 -0.13,-0.01 -0.19,-0.23 -0.14,-0.56 -0.32,-1.19 -0.66,-1.19 -0.26,0 -0.26,0.27 -0.26,0.41 0,0.07 0,0.23 0.07,0.51 l 0.67,2.71 c 0.04,0.14 0.04,0.16 0.04,0.21 0,0.21 -0.16,0.26 -0.27,0.26 -0.31,0 -0.38,-0.34 -0.39,-0.39 -0.19,0.43 -0.51,0.59 -0.83,0.59 v -0.22 c 0.44,0 0.69,-0.52 0.69,-0.94 0,-0.02 -0.01,-0.07 -0.03,-0.13 h 0 l -0.47,-1.88 c -0.08,-0.32 -0.7,-1.13 -1.25,-1.13 -0.46,0 -0.54,0.59 -0.54,0.89 0,0.5 0.3,1.66 0.48,2.08 0.25,0.61 0.71,1.11 1.12,1.11 v 0.22 c -1.11,0 -2.28,-1.52 -2.28,-2.97 0,-0.85 0.46,-1.55 1.2,-1.55 0.36,0 0.8,0.21 1.2,0.7 z"
    style="fill:#000000;stroke-width:0" />
 </g>    <g
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+       id="g3863"
+       transform="matrix(1,0,0,-1,159.97335,1248.9083)"
+       xml:space="preserve"
+       stroke-miterlimit="10.433"
+       font-style="normal"
+       font-variant="normal"
+       font-weight="normal"
+       font-stretch="normal"
+       font-size-adjust="none"
+       letter-spacing="normal"
+       word-spacing="normal"
+       ns0:text="$\\mathit{b}$\n"
+       ns0:preamble="">
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 226.45,663.9 0,0 0,0 0,0.01 0.01,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 0.01,0.01 0,0.01 0,0.01 0,0 0,0 0.01,0.01 0,0 0,0.01 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0 0,0 0,0.01 c 0,0.09 -0.06,0.12 -0.14,0.12 -0.03,0 -0.13,-0.01 -0.16,-0.02 l -0.98,-0.08 c -0.12,-0.01 -0.23,-0.02 -0.23,-0.21 0,-0.11 0.1,-0.11 0.24,-0.11 0.47,0 0.49,-0.07 0.49,-0.17 0,-0.03 -0.03,-0.16 -0.03,-0.17 l -0.98,-3.94 c -0.01,-0.03 -0.11,-0.43 -0.11,-0.81 0,-0.84 0.42,-1.52 1.14,-1.52 v 0.22 c -0.24,0 -0.57,0.21 -0.57,0.96 0,0.44 0.09,0.79 0.37,1.92 0.07,0.24 0.07,0.26 0.22,0.46 0.29,0.4 0.67,0.74 1.05,0.74 0.45,0 0.55,-0.57 0.55,-0.89 0,-0.42 -0.27,-1.6 -0.56,-2.24 -0.12,-0.25 -0.55,-0.95 -1.06,-0.95 h 0 v -0.22 c 1.12,0 2.29,1.5 2.29,2.96 0,1.07 -0.6,1.56 -1.2,1.56 -0.38,0 -0.72,-0.21 -1.06,-0.53 z"
+   id="path3865" />
+</g>    <g
        ns0:preamble=""
-       ns0:text="$\\mathit{(a,b,c)}$\n\n"
+       ns0:text="$\\mathit{c}$\n"
        word-spacing="normal"
        letter-spacing="normal"
        font-size-adjust="none"
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(1,0,0,-1,120.83,1241.3498)"
-       id="content">
-<path
-   id="path3175"
-   d="m 226.73,654.84 0,0.01 0,0 0,0 0,0.01 0,0 0,0 0,0.01 -0.01,0 0,0 0,0.01 0,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0.01 -0.01,0.01 0,0 0,0.01 -0.01,0 0,0.01 0,0 -0.01,0.01 0,0 -0.01,0 0,0.01 -0.01,0 0,0.01 -0.01,0 0,0.01 -0.01,0.01 0,0 -0.01,0.01 0,0 -0.01,0.01 -0.01,0.01 0,0 -0.01,0.01 -0.01,0.01 0,0.01 -0.01,0 -0.01,0.01 c -1.24,1.26 -1.56,3.14 -1.56,4.66 0,1.74 0.38,3.47 1.6,4.71 0.13,0.12 0.13,0.15 0.13,0.17 0,0.07 -0.04,0.1 -0.1,0.1 -0.1,0 -1,-0.67 -1.58,-1.94 -0.51,-1.09 -0.63,-2.2 -0.63,-3.04 0,-0.77 0.11,-1.98 0.66,-3.11 0.59,-1.22 1.45,-1.87 1.55,-1.87 0.06,0 0.1,0.03 0.1,0.1 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3177"
-   d="m 230.78,657.82 0.01,-0.04 0.01,-0.05 0.02,-0.04 0.01,-0.04 0.02,-0.04 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.02,-0.04 0.02,-0.03 0.02,-0.03 0.03,-0.03 0.02,-0.02 0.03,-0.03 0.03,-0.02 0.02,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.02 0.03,-0.01 0.03,-0.01 0.03,-0.02 0.04,-0.01 0.03,-0.01 0.03,0 0.03,-0.01 0.04,-0.01 0.03,0 0.03,0 0.03,-0.01 0.04,0 c 0.37,0 0.57,0.25 0.72,0.56 0.18,0.38 0.3,0.96 0.3,0.98 0,0.1 -0.08,0.1 -0.15,0.1 -0.12,0 -0.13,-0.01 -0.19,-0.23 -0.14,-0.56 -0.33,-1.19 -0.66,-1.19 -0.26,0 -0.26,0.27 -0.26,0.41 0,0.07 0,0.23 0.07,0.51 l 0.67,2.71 c 0.04,0.14 0.04,0.16 0.04,0.21 0,0.21 -0.16,0.26 -0.27,0.26 -0.31,0 -0.38,-0.34 -0.39,-0.39 -0.19,0.43 -0.51,0.59 -0.83,0.59 v -0.22 c 0.44,0 0.69,-0.52 0.69,-0.94 0,-0.02 -0.01,-0.07 -0.03,-0.13 h 0 l -0.47,-1.88 c -0.08,-0.32 -0.7,-1.13 -1.25,-1.13 -0.46,0 -0.54,0.59 -0.54,0.89 0,0.5 0.31,1.66 0.48,2.08 0.25,0.61 0.71,1.11 1.12,1.11 v 0.22 c -1.11,0 -2.28,-1.52 -2.28,-2.97 0,-0.85 0.46,-1.55 1.2,-1.55 0.36,0 0.8,0.21 1.2,0.7 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3179"
-   d="m 235.18,657.24 0,0.06 0,0.06 0,0.06 -0.01,0.06 -0.01,0.05 0,0.05 -0.01,0.05 -0.01,0.05 -0.01,0.05 -0.02,0.05 -0.01,0.04 -0.02,0.04 -0.01,0.04 -0.02,0.04 -0.02,0.04 -0.02,0.03 -0.02,0.03 -0.02,0.04 -0.03,0.02 -0.02,0.03 -0.03,0.03 -0.03,0.02 -0.02,0.02 -0.03,0.02 -0.03,0.01 -0.03,0.02 -0.03,0.01 -0.04,0.01 -0.03,0.01 -0.03,0 -0.04,0.01 -0.04,0 c -0.32,0 -0.52,-0.25 -0.52,-0.53 0,-0.27 0.2,-0.53 0.52,-0.53 0.12,0 0.25,0.04 0.35,0.13 0.03,0.02 0.04,0.03 0.05,0.03 0.01,0 0.02,-0.01 0.02,-0.15 0,-0.73 -0.34,-1.33 -0.67,-1.66 -0.11,-0.11 -0.11,-0.13 -0.11,-0.16 0,-0.07 0.05,-0.11 0.1,-0.11 0.1,0 0.9,0.77 0.9,1.93 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3181"
-   d="m 240.61,663.9 0,0 0,0 0,0.01 0.01,0 0,0 0,0.01 0,0 0,0.01 0,0 0,0.01 0,0.01 0.01,0.01 0,0.01 0,0.01 0,0 0,0 0.01,0.01 0,0 0,0.01 0,0 0,0.01 0,0 0,0 0,0.01 0,0 0,0 0,0 0,0.01 c 0,0.09 -0.06,0.12 -0.14,0.12 -0.03,0 -0.13,-0.01 -0.16,-0.02 l -0.98,-0.08 c -0.12,-0.01 -0.23,-0.02 -0.23,-0.21 0,-0.11 0.1,-0.11 0.24,-0.11 0.47,0 0.49,-0.07 0.49,-0.17 0,-0.03 -0.03,-0.16 -0.03,-0.17 l -0.98,-3.94 c -0.01,-0.03 -0.11,-0.43 -0.11,-0.81 0,-0.84 0.42,-1.52 1.14,-1.52 v 0.22 c -0.25,0 -0.57,0.21 -0.57,0.96 0,0.44 0.09,0.79 0.37,1.92 0.07,0.24 0.07,0.26 0.22,0.46 0.29,0.4 0.67,0.74 1.05,0.74 0.45,0 0.55,-0.57 0.55,-0.89 0,-0.42 -0.27,-1.6 -0.56,-2.24 -0.12,-0.25 -0.55,-0.95 -1.06,-0.95 h 0 v -0.22 c 1.12,0 2.28,1.5 2.28,2.96 0,1.07 -0.59,1.56 -1.19,1.56 -0.38,0 -0.72,-0.21 -1.06,-0.53 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3183"
-   d="m 244.83,657.24 0,0.06 -0.01,0.06 0,0.06 0,0.06 -0.01,0.05 -0.01,0.05 -0.01,0.05 -0.01,0.05 -0.01,0.05 -0.01,0.05 -0.02,0.04 -0.01,0.04 -0.02,0.04 -0.02,0.04 -0.02,0.04 -0.02,0.03 -0.02,0.03 -0.02,0.04 -0.02,0.02 -0.03,0.03 -0.02,0.03 -0.03,0.02 -0.03,0.02 -0.03,0.02 -0.03,0.01 -0.03,0.02 -0.03,0.01 -0.03,0.01 -0.03,0.01 -0.04,0 -0.03,0.01 -0.04,0 c -0.33,0 -0.53,-0.25 -0.53,-0.53 0,-0.27 0.2,-0.53 0.53,-0.53 0.12,0 0.25,0.04 0.35,0.13 0.03,0.02 0.04,0.03 0.05,0.03 0.01,0 0.02,-0.01 0.02,-0.15 0,-0.73 -0.35,-1.33 -0.68,-1.66 -0.11,-0.11 -0.11,-0.13 -0.11,-0.16 0,-0.07 0.05,-0.11 0.1,-0.11 0.11,0 0.91,0.77 0.91,1.93 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3185"
-   d="m 251.56,660.99 -0.02,-0.01 -0.02,0 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.02,-0.01 -0.01,-0.01 -0.02,0 -0.01,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.02 -0.02,-0.02 -0.02,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.02 0,0 0,-0.01 0,0 0,-0.01 0,0 0,0 c 0,-0.16 0.11,-0.32 0.33,-0.32 0.27,0 0.51,0.22 0.51,0.6 0,0.49 -0.43,0.86 -1.06,0.86 -1.24,0 -2.52,-1.42 -2.52,-2.87 0,-0.99 0.58,-1.65 1.46,-1.65 1.28,0 2.1,1 2.1,1.15 0,0.05 -0.08,0.16 -0.16,0.16 -0.04,0 -0.05,-0.01 -0.13,-0.11 -0.73,-0.94 -1.62,-0.98 -1.79,-0.98 -0.54,0 -0.79,0.45 -0.79,1.03 0,0.53 0.27,1.57 0.53,2.05 0.36,0.65 0.86,1 1.31,1 0.11,0 0.55,-0.02 0.7,-0.43 z"
-   style="fill:#000000;stroke-width:0" />
+       transform="matrix(1,0,0,-1,159.94335,1269.7863)"
+       id="g3915"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
-   id="path3187"
-   d="m 255.25,659.72 0,0.08 0,0.07 0,0.08 0,0.08 -0.01,0.17 -0.01,0.18 -0.02,0.18 -0.02,0.19 -0.03,0.2 -0.03,0.2 -0.04,0.2 -0.04,0.21 -0.06,0.21 -0.06,0.21 -0.07,0.21 -0.08,0.22 -0.04,0.1 -0.05,0.11 -0.04,0.11 -0.05,0.1 c -0.6,1.23 -1.46,1.87 -1.56,1.87 -0.06,0 -0.1,-0.04 -0.1,-0.1 0,-0.02 0,-0.05 0.19,-0.22 0.98,-0.99 1.55,-2.58 1.55,-4.66 0,-1.7 -0.37,-3.45 -1.61,-4.71 -0.13,-0.12 -0.13,-0.14 -0.13,-0.17 0,-0.06 0.04,-0.1 0.1,-0.1 0.1,0 1,0.68 1.59,1.94 0.5,1.1 0.62,2.21 0.62,3.04 z"
+   id="path3917"
+   d="m 227.77,660.99 -0.03,-0.01 -0.02,0 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.02 -0.02,-0.02 -0.01,-0.02 -0.02,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.02 0,-0.02 0,-0.01 -0.01,-0.02 0,-0.01 0,-0.01 0,-0.02 0,0 0,-0.01 0,0 0,-0.01 0,0 0,0 c 0,-0.16 0.11,-0.32 0.34,-0.32 0.27,0 0.51,0.22 0.51,0.6 0,0.49 -0.43,0.86 -1.07,0.86 -1.24,0 -2.52,-1.42 -2.52,-2.87 0,-0.99 0.59,-1.65 1.46,-1.65 1.28,0 2.11,1 2.11,1.15 0,0.05 -0.09,0.16 -0.16,0.16 -0.04,0 -0.05,-0.01 -0.13,-0.11 -0.74,-0.94 -1.63,-0.98 -1.8,-0.98 -0.53,0 -0.78,0.45 -0.78,1.03 0,0.53 0.26,1.57 0.52,2.05 0.36,0.65 0.86,1 1.31,1 0.11,0 0.56,-0.02 0.71,-0.43 z"
    style="fill:#000000;stroke-width:0" />
 </g>    <g
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-       id="g3255"
-       transform="matrix(1,0,0,-1,217.23,1261.8698)"
+       id="g3971"
+       transform="matrix(1,0,0,-1,210.905,1218.1154)"
        xml:space="preserve"
        stroke-miterlimit="10.433"
        font-style="normal"
        font-size-adjust="none"
        letter-spacing="normal"
        word-spacing="normal"
-       ns0:text="$\\mathit{c}$\n"
+       ns0:text="$\\mathbf{mac}$\n"
        ns0:preamble="">
 <path
    style="fill:#000000;stroke-width:0"
-   d="m 227.77,660.99 -0.03,-0.01 -0.02,0 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,0 -0.02,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,0 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.01,-0.01 -0.02,-0.02 -0.02,-0.02 -0.01,-0.02 -0.02,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 -0.01,-0.02 0,-0.02 -0.01,-0.02 0,-0.02 0,-0.01 -0.01,-0.02 0,-0.01 0,-0.01 0,-0.02 0,0 0,-0.01 0,0 0,-0.01 0,0 0,0 c 0,-0.16 0.11,-0.32 0.34,-0.32 0.27,0 0.51,0.22 0.51,0.6 0,0.49 -0.43,0.86 -1.07,0.86 -1.24,0 -2.52,-1.42 -2.52,-2.87 0,-0.99 0.59,-1.65 1.46,-1.65 1.28,0 2.11,1 2.11,1.15 0,0.05 -0.09,0.16 -0.16,0.16 -0.04,0 -0.05,-0.01 -0.13,-0.11 -0.74,-0.94 -1.63,-0.98 -1.8,-0.98 -0.53,0 -0.78,0.45 -0.78,1.03 0,0.53 0.26,1.57 0.52,2.05 0.36,0.65 0.86,1 1.31,1 0.11,0 0.56,-0.02 0.71,-0.43 z"
-   id="path3257" />
+   d="m 224.57,660.78 v -3.08 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.26,0.03 0.38,0 0.97,-0.02 1.25,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.56,-0.2 0.56,-0.97 v -2.69 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.55,-0.2 0.55,-0.97 v -2.69 h -0.68 v -0.47 c 0.28,0.01 0.87,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.58 c 0,1.03 -0.51,1.44 -1.53,1.44 -0.91,0 -1.43,-0.5 -1.69,-0.96 -0.2,0.93 -1.11,0.96 -1.49,0.96 -0.87,0 -1.44,-0.45 -1.76,-1.08 v 1.08 l -1.71,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 z"
+   id="path3973" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 236.71,658 0,-0.06 0,-0.06 0,-0.03 0,-0.04 0.01,-0.03 0,-0.03 0.01,-0.03 0.01,-0.03 0.01,-0.04 0.01,-0.03 0.02,-0.03 0.01,-0.03 0.02,-0.03 0.03,-0.03 0.02,-0.03 0.03,-0.02 0.03,-0.03 0.02,-0.01 0.02,-0.02 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.03,-0.01 0.03,0 0.03,-0.01 0.04,-0.01 0.03,0 0.04,-0.01 0.04,0 0.04,-0.01 0.04,0 0.04,0 0.04,0 0.05,-0.01 0.04,0 0.05,0 h 0.48 c 0.2,0 0.32,0 0.32,0.24 0,0.23 -0.13,0.23 -0.26,0.23 -0.61,0.01 -0.61,0.14 -0.61,0.37 v 2.14 c 0,0.89 -0.71,1.54 -2.19,1.54 -0.57,0 -1.78,-0.04 -1.78,-0.92 0,-0.44 0.35,-0.63 0.62,-0.63 0.3,0 0.62,0.21 0.62,0.63 0,0.3 -0.19,0.47 -0.22,0.49 0.28,0.06 0.6,0.07 0.72,0.07 0.75,0 1.1,-0.42 1.1,-1.18 v -0.34 -0.31 -0.94 c 0,-0.96 -0.92,-1.09 -1.17,-1.09 -0.51,0 -0.91,0.35 -0.91,0.79 0,1.07 1.58,1.21 2.08,1.24 h 0 v 0.31 c -0.71,-0.03 -3.24,-0.12 -3.24,-1.56 0,-0.96 1.23,-1.14 1.92,-1.14 0.8,0 1.27,0.41 1.49,0.83 z"
+   id="path3975" />
+<path
+   style="fill:#000000;stroke-width:0"
+   d="m 242.13,661.29 -0.01,-0.02 -0.02,-0.01 -0.01,-0.02 -0.02,-0.01 -0.01,-0.02 -0.01,-0.02 -0.01,-0.01 -0.02,-0.02 -0.01,-0.02 0,-0.01 -0.01,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.01 0,-0.02 -0.01,-0.01 0,-0.02 -0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.02 0,-0.01 -0.01,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 c 0,-0.44 0.35,-0.63 0.62,-0.63 0.31,0 0.63,0.21 0.63,0.63 0,0.86 -1.16,0.92 -1.74,0.92 -1.78,0 -2.52,-1.15 -2.52,-2.31 0,-1.32 0.94,-2.27 2.47,-2.27 1.62,0 1.92,1.16 1.92,1.23 0,0.14 -0.14,0.14 -0.24,0.14 -0.18,0 -0.19,-0.02 -0.24,-0.15 -0.26,-0.63 -0.74,-0.82 -1.25,-0.82 -1.38,0 -1.38,1.47 -1.38,1.92 0,0.56 0,1.86 1.28,1.86 0.35,0 0.52,-0.03 0.65,-0.06 z"
+   id="path3977" />
 </g>    <g
        ns0:preamble=""
-       ns0:text="$\\mathbf{mul}$\n"
+       ns0:text="$\\mathbf{add}$\n"
        word-spacing="normal"
        letter-spacing="normal"
        font-size-adjust="none"
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(1,0,0,-1,186.34,1243.4138)"
-       id="g3329"
+       transform="matrix(1,0,0,-1,236.45,1264.7291)"
+       id="g4039"
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0">
 <path
-   id="path3331"
-   d="m 224.57,660.78 v -3.08 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.26,0.03 0.38,0 0.97,-0.02 1.25,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.56,-0.2 0.56,-0.97 v -2.69 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.55,-0.2 0.55,-0.97 v -2.69 h -0.68 v -0.47 c 0.28,0.01 0.87,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.58 c 0,1.03 -0.51,1.44 -1.53,1.44 -0.91,0 -1.43,-0.5 -1.69,-0.96 -0.2,0.93 -1.11,0.96 -1.49,0.96 -0.87,0 -1.44,-0.45 -1.76,-1.08 v 1.08 l -1.71,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 z"
+   id="path4041"
+   d="m 227.16,658 0,-0.06 0,-0.06 0,-0.03 0.01,-0.04 0,-0.03 0.01,-0.03 0,-0.03 0.01,-0.03 0.01,-0.04 0.01,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.03,-0.02 0.04,-0.03 0.01,-0.01 0.02,-0.02 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.03,0 0.04,-0.01 0.03,-0.01 0.04,0 0.03,-0.01 0.04,0 0.04,-0.01 0.04,0 0.04,0 0.05,0 0.04,-0.01 0.05,0 0.05,0 h 0.47 c 0.2,0 0.32,0 0.32,0.24 0,0.23 -0.13,0.23 -0.26,0.23 -0.61,0.01 -0.61,0.14 -0.61,0.37 v 2.14 c 0,0.89 -0.7,1.54 -2.19,1.54 -0.56,0 -1.78,-0.04 -1.78,-0.92 0,-0.44 0.35,-0.63 0.62,-0.63 0.31,0 0.63,0.21 0.63,0.63 0,0.3 -0.19,0.47 -0.22,0.49 0.28,0.06 0.59,0.07 0.71,0.07 0.75,0 1.1,-0.42 1.1,-1.18 v -0.34 -0.31 -0.94 c 0,-0.96 -0.92,-1.09 -1.17,-1.09 -0.5,0 -0.9,0.35 -0.9,0.79 0,1.07 1.57,1.21 2.07,1.24 h 0 v 0.31 c -0.71,-0.03 -3.24,-0.12 -3.24,-1.56 0,-0.96 1.24,-1.14 1.92,-1.14 0.8,0 1.27,0.41 1.49,0.83 z"
    style="fill:#000000;stroke-width:0" />
 <path
-   id="path3333"
-   d="m 237.02,657.95 v -0.78 l 1.77,0.06 v 0.47 c -0.62,0 -0.69,0 -0.69,0.39 v 3.63 l -1.83,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.9 c 0,-0.82 -0.51,-1.35 -1.23,-1.35 -0.77,0 -0.8,0.25 -0.8,0.79 v 3.4 l -1.82,-0.08 v -0.47 c 0.61,0 0.68,0 0.68,-0.39 v -2.32 c 0,-1.07 0.81,-1.29 1.8,-1.29 0.26,0 0.97,0 1.43,0.78 z"
+   id="path4043"
+   d="m 233.16,657.66 v -0.49 l 1.83,0.06 v 0.47 c -0.62,0 -0.69,0 -0.69,0.39 v 6.06 l -1.77,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.94 c -0.5,0.39 -1.01,0.45 -1.34,0.45 -1.46,0 -2.5,-0.88 -2.5,-2.29 0,-1.31 0.91,-2.26 2.39,-2.26 l 0.1,0.36 c -1.22,0 -1.22,1.21 -1.22,1.9 0,0.48 0,1.02 0.26,1.41 0.29,0.42 0.76,0.52 1.07,0.52 0.56,0 0.96,-0.32 1.18,-0.61 h 0 v -2.49 c -0.13,-0.18 -0.54,-0.73 -1.29,-0.73 l -0.1,-0.36 c 0.61,0 1.08,0.24 1.39,0.49 z"
    style="fill:#000000;stroke-width:0" />
 <path
-   id="path3335"
-   d="m 241.26,664.15 -1.77,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -5.51 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.43,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.68 z"
+   id="path4045"
+   d="m 239.53,657.66 v -0.49 l 1.82,0.06 v 0.47 c -0.61,0 -0.69,0 -0.69,0.39 v 6.06 l -1.76,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.94 c -0.5,0.39 -1.02,0.45 -1.35,0.45 -1.45,0 -2.5,-0.88 -2.5,-2.29 0,-1.31 0.92,-2.26 2.39,-2.26 l 0.1,0.36 c -1.21,0 -1.21,1.21 -1.21,1.9 0,0.48 0,1.02 0.26,1.41 0.29,0.42 0.76,0.52 1.06,0.52 0.57,0 0.97,-0.32 1.19,-0.61 h 0 v -2.49 c -0.13,-0.18 -0.54,-0.73 -1.3,-0.73 l -0.1,-0.36 c 0.61,0 1.09,0.24 1.4,0.49 z"
    style="fill:#000000;stroke-width:0" />
 </g>    <g
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
-       id="g3415"
-       transform="matrix(1,0,0,-1,236.45,1258.7291)"
+       id="g4115"
+       transform="matrix(1,0,0,-1,186.59,1243.4138)"
        xml:space="preserve"
        stroke-miterlimit="10.433"
        font-style="normal"
        font-size-adjust="none"
        letter-spacing="normal"
        word-spacing="normal"
-       ns0:text="$\\mathbf{add}$\n"
+       ns0:text="$\\mathbf{mul}$\n"
        ns0:preamble="">
 <path
    style="fill:#000000;stroke-width:0"
-   d="m 227.16,658 0,-0.06 0,-0.06 0,-0.03 0.01,-0.04 0,-0.03 0.01,-0.03 0,-0.03 0.01,-0.03 0.01,-0.04 0.01,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.02,-0.03 0.03,-0.02 0.04,-0.03 0.01,-0.01 0.02,-0.02 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.03,0 0.04,-0.01 0.03,-0.01 0.04,0 0.03,-0.01 0.04,0 0.04,-0.01 0.04,0 0.04,0 0.05,0 0.04,-0.01 0.05,0 0.05,0 h 0.47 c 0.2,0 0.32,0 0.32,0.24 0,0.23 -0.13,0.23 -0.26,0.23 -0.61,0.01 -0.61,0.14 -0.61,0.37 v 2.14 c 0,0.89 -0.7,1.54 -2.19,1.54 -0.56,0 -1.78,-0.04 -1.78,-0.92 0,-0.44 0.35,-0.63 0.62,-0.63 0.31,0 0.63,0.21 0.63,0.63 0,0.3 -0.19,0.47 -0.22,0.49 0.28,0.06 0.59,0.07 0.71,0.07 0.75,0 1.1,-0.42 1.1,-1.18 v -0.34 -0.31 -0.94 c 0,-0.96 -0.92,-1.09 -1.17,-1.09 -0.5,0 -0.9,0.35 -0.9,0.79 0,1.07 1.57,1.21 2.07,1.24 h 0 v 0.31 c -0.71,-0.03 -3.24,-0.12 -3.24,-1.56 0,-0.96 1.24,-1.14 1.92,-1.14 0.8,0 1.27,0.41 1.49,0.83 z"
-   id="path3417" />
+   d="m 224.57,660.78 v -3.08 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.26,0.03 0.38,0 0.97,-0.02 1.25,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.56,-0.2 0.56,-0.97 v -2.69 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.55,-0.2 0.55,-0.97 v -2.69 h -0.68 v -0.47 c 0.28,0.01 0.87,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.58 c 0,1.03 -0.51,1.44 -1.53,1.44 -0.91,0 -1.43,-0.5 -1.69,-0.96 -0.2,0.93 -1.11,0.96 -1.49,0.96 -0.87,0 -1.44,-0.45 -1.76,-1.08 v 1.08 l -1.71,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 z"
+   id="path4117" />
 <path
    style="fill:#000000;stroke-width:0"
-   d="m 233.16,657.66 v -0.49 l 1.83,0.06 v 0.47 c -0.62,0 -0.69,0 -0.69,0.39 v 6.06 l -1.77,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.94 c -0.5,0.39 -1.01,0.45 -1.34,0.45 -1.46,0 -2.5,-0.88 -2.5,-2.29 0,-1.31 0.91,-2.26 2.39,-2.26 l 0.1,0.36 c -1.22,0 -1.22,1.21 -1.22,1.9 0,0.48 0,1.02 0.26,1.41 0.29,0.42 0.76,0.52 1.07,0.52 0.56,0 0.96,-0.32 1.18,-0.61 h 0 v -2.49 c -0.13,-0.18 -0.54,-0.73 -1.29,-0.73 l -0.1,-0.36 c 0.61,0 1.08,0.24 1.39,0.49 z"
-   id="path3419" />
+   d="m 237.02,657.95 v -0.78 l 1.77,0.06 v 0.47 c -0.62,0 -0.69,0 -0.69,0.39 v 3.63 l -1.83,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.9 c 0,-0.82 -0.51,-1.35 -1.23,-1.35 -0.77,0 -0.8,0.25 -0.8,0.79 v 3.4 l -1.82,-0.08 v -0.47 c 0.61,0 0.68,0 0.68,-0.39 v -2.32 c 0,-1.07 0.81,-1.29 1.8,-1.29 0.26,0 0.97,0 1.43,0.78 z"
+   id="path4119" />
 <path
    style="fill:#000000;stroke-width:0"
-   d="m 239.53,657.66 v -0.49 l 1.82,0.06 v 0.47 c -0.61,0 -0.69,0 -0.69,0.39 v 6.06 l -1.76,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -1.94 c -0.5,0.39 -1.02,0.45 -1.35,0.45 -1.45,0 -2.5,-0.88 -2.5,-2.29 0,-1.31 0.92,-2.26 2.39,-2.26 l 0.1,0.36 c -1.21,0 -1.21,1.21 -1.21,1.9 0,0.48 0,1.02 0.26,1.41 0.29,0.42 0.76,0.52 1.06,0.52 0.57,0 0.97,-0.32 1.19,-0.61 h 0 v -2.49 c -0.13,-0.18 -0.54,-0.73 -1.3,-0.73 l -0.1,-0.36 c 0.61,0 1.09,0.24 1.4,0.49 z"
-   id="path3421" />
+   d="m 241.26,664.15 -1.77,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 v -5.51 h -0.69 v -0.47 c 0.32,0.01 0.8,0.03 1.23,0.03 0.43,0 0.88,-0.02 1.22,-0.03 v 0.47 h -0.68 z"
+   id="path4121" />
 </g>    <g
        style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;letter-spacing:normal;word-spacing:normal;text-anchor:start;fill:none;stroke:#000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10.43299961;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
        ns0:preamble=""
-       ns0:text="$\\mathbf{mac}$\n\n\n"
+       ns0:text="$\\mathit{z}$\n\n"
        word-spacing="normal"
        letter-spacing="normal"
        font-size-adjust="none"
        font-style="normal"
        stroke-miterlimit="10.433"
        xml:space="preserve"
-       transform="matrix(1,0,0,-1,202.405,1218.0698)"
-       id="g3705">
-<path
-   id="path3707"
-   d="m 224.57,660.78 v -3.08 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.26,0.03 0.38,0 0.97,-0.02 1.25,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.56,-0.2 0.56,-0.97 v -2.69 h -0.69 v -0.47 c 0.28,0.01 0.88,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.08 c 0,1.09 0.87,1.58 1.49,1.58 0.34,0 0.55,-0.2 0.55,-0.97 v -2.69 h -0.68 v -0.47 c 0.28,0.01 0.87,0.03 1.25,0.03 0.39,0 0.98,-0.02 1.26,-0.03 v 0.47 h -0.69 v 2.58 c 0,1.03 -0.51,1.44 -1.53,1.44 -0.91,0 -1.43,-0.5 -1.69,-0.96 -0.2,0.93 -1.11,0.96 -1.49,0.96 -0.87,0 -1.44,-0.45 -1.76,-1.08 v 1.08 l -1.71,-0.08 v -0.47 c 0.62,0 0.69,0 0.69,-0.39 z"
-   style="fill:#000000;stroke-width:0" />
+       transform="matrix(1,0,0,-1,212.81168,1238.8703)"
+       id="g3214">
 <path
-   id="path3709"
-   d="m 236.71,658 0,-0.06 0,-0.06 0,-0.03 0,-0.04 0.01,-0.03 0,-0.03 0.01,-0.03 0.01,-0.03 0.01,-0.04 0.01,-0.03 0.02,-0.03 0.01,-0.03 0.02,-0.03 0.03,-0.03 0.02,-0.03 0.03,-0.02 0.03,-0.03 0.02,-0.01 0.02,-0.02 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.02,-0.01 0.03,-0.01 0.03,-0.01 0.03,-0.01 0.03,0 0.03,-0.01 0.04,-0.01 0.03,0 0.04,-0.01 0.04,0 0.04,-0.01 0.04,0 0.04,0 0.04,0 0.05,-0.01 0.04,0 0.05,0 h 0.48 c 0.2,0 0.32,0 0.32,0.24 0,0.23 -0.13,0.23 -0.26,0.23 -0.61,0.01 -0.61,0.14 -0.61,0.37 v 2.14 c 0,0.89 -0.71,1.54 -2.19,1.54 -0.57,0 -1.78,-0.04 -1.78,-0.92 0,-0.44 0.35,-0.63 0.62,-0.63 0.3,0 0.62,0.21 0.62,0.63 0,0.3 -0.19,0.47 -0.22,0.49 0.28,0.06 0.6,0.07 0.72,0.07 0.75,0 1.1,-0.42 1.1,-1.18 v -0.34 -0.31 -0.94 c 0,-0.96 -0.92,-1.09 -1.17,-1.09 -0.51,0 -0.91,0.35 -0.91,0.79 0,1.07 1.58,1.21 2.08,1.24 h 0 v 0.31 c -0.71,-0.03 -3.24,-0.12 -3.24,-1.56 0,-0.96 1.23,-1.14 1.92,-1.14 0.8,0 1.27,0.41 1.49,0.83 z"
-   style="fill:#000000;stroke-width:0" />
-<path
-   id="path3711"
-   d="m 242.13,661.29 -0.01,-0.02 -0.02,-0.01 -0.01,-0.02 -0.02,-0.01 -0.01,-0.02 -0.01,-0.02 -0.01,-0.01 -0.02,-0.02 -0.01,-0.02 0,-0.01 -0.01,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.02 -0.01,-0.01 -0.01,-0.02 0,-0.01 0,-0.02 -0.01,-0.01 0,-0.02 -0.01,-0.01 0,-0.02 0,-0.01 0,-0.01 0,-0.02 0,-0.01 -0.01,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 0,-0.01 c 0,-0.44 0.35,-0.63 0.62,-0.63 0.31,0 0.63,0.21 0.63,0.63 0,0.86 -1.16,0.92 -1.74,0.92 -1.78,0 -2.52,-1.15 -2.52,-2.31 0,-1.32 0.94,-2.27 2.47,-2.27 1.62,0 1.92,1.16 1.92,1.23 0,0.14 -0.14,0.14 -0.24,0.14 -0.18,0 -0.19,-0.02 -0.24,-0.15 -0.26,-0.63 -0.74,-0.82 -1.25,-0.82 -1.38,0 -1.38,1.47 -1.38,1.92 0,0.56 0,1.86 1.28,1.86 0.35,0 0.52,-0.03 0.65,-0.06 z"
+   id="path3216"
+   d="m 226.99,660.11 0.11,0.11 0.1,0.12 0.11,0.11 0.09,0.12 0.05,0.05 0.05,0.06 0.04,0.06 0.04,0.05 0.05,0.06 0.04,0.05 0.04,0.06 0.03,0.05 0.04,0.05 0.03,0.05 0.03,0.04 0.03,0.05 0.03,0.04 0.03,0.04 0.02,0.04 0.02,0.04 0.02,0.03 0.02,0.03 0.01,0.03 0.01,0.02 0.01,0.02 0.01,0.02 0,0.02 0,0.01 c 0,0.1 -0.07,0.1 -0.13,0.1 -0.12,0 -0.13,-0.01 -0.19,-0.13 -0.33,-0.57 -0.46,-0.62 -0.62,-0.62 -0.18,0 -0.28,0.1 -0.47,0.36 -0.12,0.16 -0.29,0.39 -0.61,0.39 -0.73,0 -1.16,-0.94 -1.16,-1.14 0,-0.09 0.07,-0.11 0.15,-0.11 0.12,0 0.13,0.02 0.18,0.14 0.08,0.22 0.36,0.47 0.73,0.47 0.2,0 0.38,-0.08 0.6,-0.18 0.33,-0.15 0.44,-0.15 0.59,-0.15 -0.15,-0.17 -0.24,-0.28 -0.4,-0.44 l -1.63,-1.62 c -0.56,-0.55 -1.04,-1.29 -1.04,-1.39 0,-0.1 0.09,-0.1 0.15,-0.1 0.11,0 0.12,0.02 0.16,0.09 0.14,0.21 0.41,0.66 0.79,0.66 0.22,0 0.3,-0.11 0.47,-0.36 0.16,-0.2 0.31,-0.39 0.62,-0.39 0.97,0 1.51,1.3 1.51,1.54 0,0.1 -0.12,0.1 -0.15,0.1 -0.12,0 -0.13,-0.03 -0.17,-0.16 -0.18,-0.5 -0.66,-0.84 -1.09,-0.84 -0.2,0 -0.36,0.07 -0.56,0.16 -0.29,0.13 -0.41,0.17 -0.61,0.17 -0.05,0 -0.13,0 -0.18,-0.01 0.07,0.08 0.28,0.33 0.55,0.61 z"
    style="fill:#000000;stroke-width:0" />
-</g>  </g>
+</g>    <path
+       sodipodi:nodetypes="ccc"
+       id="path3257"
+       d="m 443.7,583.34917 46,0 0,16.1"
+       style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#TriangleOutM)" />
+    <path
+       sodipodi:type="arc"
+       style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+       id="path3261"
+       sodipodi:cx="91.658714"
+       sodipodi:cy="18.274765"
+       sodipodi:rx="1.5026019"
+       sodipodi:ry="1.5026019"
+       d="m 93.161316,18.274765 c 0,0.829864 -0.672738,1.502602 -1.502602,1.502602 -0.829864,0 -1.502602,-0.672738 -1.502602,-1.502602 0,-0.829864 0.672738,-1.502602 1.502602,-1.502602 0.829864,0 1.502602,0.672738 1.502602,1.502602 z"
+       transform="matrix(0.93153813,0,0,0.93153813,358.08191,566.35403)" />
+    <path
+       transform="matrix(0.93153813,0,0,0.93153813,404.30691,586.85403)"
+       d="m 93.161316,18.274765 c 0,0.829864 -0.672738,1.502602 -1.502602,1.502602 -0.829864,0 -1.502602,-0.672738 -1.502602,-1.502602 0,-0.829864 0.672738,-1.502602 1.502602,-1.502602 0.829864,0 1.502602,0.672738 1.502602,1.502602 z"
+       sodipodi:ry="1.5026019"
+       sodipodi:rx="1.5026019"
+       sodipodi:cy="18.274765"
+       sodipodi:cx="91.658714"
+       id="path5257"
+       style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none"
+       sodipodi:type="arc" />
+  </g>
 </svg>