Commits

blooper committed ba2b855

commutative diagrams are added

  • Participants
  • Parent commits bcf3a24

Comments (0)

Files changed (18)

 # built documents.
 #
 # The short X.Y version.
-version = '0.1.2'
+version = '0.1.3'
 # The full version, including alpha/beta/rc tags.
-release = '0.1.2'
+release = '0.1.3'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.

images/Fractional.png

Added
New image

images/Num.png

Added
New image

images/associative.png

Added
New image

images/bind.png

Added
New image

images/bind_associative.png

Added
New image

images/bind_unit.png

Added
New image

images/functor.png

Added
New image

images/g2429.png

Added
New image

images/join.png

Added
New image

images/join_to_monad.svg

+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="744.09448819"
+   height="1052.3622047"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="join_to_monad.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow2Send"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Send"
+       style="overflow:visible;">
+      <path
+         id="path3376"
+         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(0.3) rotate(180) translate(-2.3,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow2Mend"
+       style="overflow:visible;">
+      <path
+         id="path3370"
+         style="font-size:12.0;fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
+         transform="scale(0.6) rotate(180) translate(0,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Lend"
+       style="overflow:visible;">
+      <path
+         id="path3346"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
+         transform="scale(0.8) rotate(180) translate(12.5,0)" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lstart"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Lstart"
+       style="overflow:visible">
+      <path
+         id="path3343"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none"
+         transform="scale(0.8) translate(12.5,0)" />
+    </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"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1"
+     inkscape:cx="242.54865"
+     inkscape:cy="-1602.7338"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1024"
+     inkscape:window-height="747"
+     inkscape:window-x="0"
+     inkscape:window-y="21" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <g
+       id="g3181"
+       transform="translate(-97,15)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/Fractional.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <g
+         id="g2420">
+        <rect
+           id="rect3163"
+           width="196.00673"
+           height="63.006714"
+           x="194.49664"
+           y="220.35883"
+           style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.09328115;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+           ry="8.7136946" />
+        <text
+           xml:space="preserve"
+           style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+           x="203.91504"
+           y="240.20862"
+           id="text3169"><tspan
+             sodipodi:role="line"
+             id="tspan3171"
+             x="203.91504"
+             y="240.20862">Fractional</tspan></text>
+        <text
+           xml:space="preserve"
+           style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+           x="232.91504"
+           y="257.20862"
+           id="text3173"><tspan
+             sodipodi:role="line"
+             id="tspan3175"
+             x="232.91504"
+             y="257.20862">(/) :: a -&gt; a -&gt; a</tspan></text>
+        <text
+           xml:space="preserve"
+           style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+           x="217.81421"
+           y="272.43738"
+           id="text3177"><tspan
+             sodipodi:role="line"
+             id="tspan3179"
+             x="217.81421"
+             y="272.43738">recip :: a -&gt; a</tspan></text>
+      </g>
+    </g>
+    <g
+       id="g2429"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/Fractional.png">
+      <rect
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         ry="13"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.10000002;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         y="98.362183"
+         x="77"
+         height="221"
+         width="243"
+         id="rect2391" />
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3165"
+         y="116.20862"
+         x="88.915039"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="116.20862"
+           x="88.915039"
+           id="tspan3167"
+           sodipodi:role="line">Num</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3190"
+         y="151.73596"
+         x="134.11621"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="151.73596"
+           x="134.11621"
+           id="tspan3192"
+           sodipodi:role="line">(-) :: a -&gt; a -&gt; a</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3194"
+         y="137.43738"
+         x="133.81421"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="137.43738"
+           x="133.81421"
+           id="tspan3196"
+           sodipodi:role="line">(+) :: a -&gt; a -&gt; a</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3198"
+         y="167.43738"
+         x="133.81421"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="167.43738"
+           x="133.81421"
+           id="tspan3200"
+           sodipodi:role="line">(*) :: a -&gt; a -&gt; a</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3202"
+         y="182.43738"
+         x="109.81421"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="182.43738"
+           x="109.81421"
+           id="tspan3204"
+           sodipodi:role="line">negate :: a -&gt; a</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3206"
+         y="197.52966"
+         x="132.36768"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="197.52966"
+           x="132.36768"
+           id="tspan3208"
+           sodipodi:role="line">abs :: a -&gt; a</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3210"
+         y="212.20862"
+         x="109.29492"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="212.20862"
+           x="109.29492"
+           id="tspan3212"
+           sodipodi:role="line">signum :: a -&gt; a</tspan></text>
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3218"
+       style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Bitstream Vera Sans Mono;font-style:normal;font-weight:normal;font-size:13;-inkscape-font-specification:Bitstream Vera Sans Mono;font-stretch:normal;font-variant:normal"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/g2429.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3220"><rect
+           id="rect3222"
+           width="247"
+           height="70"
+           x="488"
+           y="107.36218" /></flowRegion><flowPara
+         id="flowPara3224" /></flowRoot>    <g
+       id="g2453"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/Fractional.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text2387"
+         y="45.362183"
+         x="49"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="45.362183"
+           x="49"
+           id="tspan2389"
+           sodipodi:role="line">Eq</tspan></text>
+      <rect
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         ry="13"
+         y="19.362183"
+         x="28"
+         height="311"
+         width="307"
+         id="rect3214"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.10000002;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3226"
+         y="63.362183"
+         x="62"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="63.362183"
+           x="62"
+           id="tspan3228"
+           sodipodi:role="line">(==) :: a -&gt; a -&gt; Bool</tspan></text>
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text3230"
+         y="77.478638"
+         x="62.25293"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="77.478638"
+           x="62.25293"
+           id="tspan3232"
+           sodipodi:role="line">(/=) :: a -&gt; a -&gt; Bool</tspan></text>
+    </g>
+    <g
+       id="g2446"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/Fractional.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text2383"
+         y="115.36218"
+         x="484"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="115.36218"
+           x="484"
+           id="tspan2385"
+           sodipodi:role="line">Show</tspan></text>
+      <rect
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         ry="13"
+         y="91.362183"
+         x="65"
+         height="259"
+         width="467"
+         id="rect3216"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:1.10000002;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <text
+         inkscape:export-ydpi="90"
+         inkscape:export-xdpi="90"
+         inkscape:export-filename="/usr/tmp/join_to_monad/images/Num.png"
+         id="text2416"
+         y="136.43738"
+         x="352.81421"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="136.43738"
+           x="352.81421"
+           id="tspan2418"
+           sodipodi:role="line">show :: a -&gt; String</tspan></text>
+    </g>
+    <text
+       xml:space="preserve"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       x="52.5"
+       y="393.86218"
+       id="text3287"><tspan
+         sodipodi:role="line"
+         id="tspan3289"
+         x="52.5"
+         y="393.86218">a b =</tspan></text>
+    <g
+       id="g6781"
+       transform="translate(0,21)">
+      <text
+         id="text3283"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan3285"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect6753"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot6759"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(0,27)"><flowRegion
+         id="flowRegion6761"><rect
+           id="rect6763"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara6765">b</flowPara></flowRoot>    <g
+       id="g6775"
+       transform="translate(-8,-32)">
+      <text
+         id="text6767"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan6769"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect6771"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect6773"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 85,534.36218 L 85,496.36218"
+       id="path6786"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot8387"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-45,-61)"><flowRegion
+         id="flowRegion8389"><rect
+           id="rect8391"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara8393">return</flowPara></flowRoot>    <g
+       id="g8459"
+       transform="translate(-1,-13)">
+      <rect
+         y="564.36218"
+         x="260"
+         height="16"
+         width="14"
+         id="rect8401"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(70,58)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot8421"
+         xml:space="preserve"><flowRegion
+           id="flowRegion8423"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect8425" /></flowRegion><flowPara
+           id="flowPara8427">c</flowPara></flowRoot>    </g>
+    <g
+       id="g8441"
+       transform="translate(175.5,-159)">
+      <rect
+         y="552.36218"
+         x="202.5"
+         height="16"
+         width="14"
+         id="rect8429"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="548.36218"
+         x="198.5"
+         height="24"
+         width="22"
+         id="rect8431"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(12.5,46)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot8433"
+         xml:space="preserve"><flowRegion
+           id="flowRegion8435"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect8437" /></flowRegion><flowPara
+           id="flowPara8439">c</flowPara></flowRoot>    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot8466"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"><flowRegion
+         id="flowRegion8468"><rect
+           id="rect8470"
+           width="23.5"
+           height="13.5"
+           x="237"
+           y="515.36218" /></flowRegion><flowPara
+         id="flowPara8472">Clc</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot8474"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-94,21.5)"><flowRegion
+         id="flowRegion8476"><rect
+           id="rect8478"
+           width="10"
+           height="17"
+           x="249.5"
+           y="518.86218" /></flowRegion><flowPara
+         id="flowPara8480">c</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 100.5,549.36218 L 146.5,549.36218"
+       id="path8484" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9019"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(5,31)"><flowRegion
+         id="flowRegion9021"><rect
+           id="rect9023"
+           width="20"
+           height="22"
+           x="114"
+           y="520.36218" /></flowRegion><flowPara
+         id="flowPara9025">f</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 158.65056,535.77437 L 158.65056,497.77437"
+       id="path9027"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9029"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(89.65056,-59.587811)"><flowRegion
+         id="flowRegion9031"><rect
+           id="rect9033"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara9035">return</flowPara></flowRoot>    <g
+       id="g9037"
+       transform="translate(-108,-91)">
+      <rect
+         y="564.36218"
+         x="260"
+         height="16"
+         width="14"
+         id="rect9039"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(70,58)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot9041"
+         xml:space="preserve"><flowRegion
+           id="flowRegion9043"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect9045" /></flowRegion><flowPara
+           id="flowPara9047">c</flowPara></flowRoot>    </g>
+    <g
+       id="g9074"
+       transform="translate(-62.5,-156.5)">
+      <flowRoot
+         transform="translate(66.007324,95.96792)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot9049"
+         xml:space="preserve"><flowRegion
+           id="flowRegion9051"><rect
+             y="520.36218"
+             x="114"
+             height="22"
+             width="20"
+             id="rect9053" /></flowRegion><flowPara
+           id="flowPara9055">f</flowPara></flowRoot>      <rect
+         y="615.36218"
+         x="177"
+         height="16"
+         width="14"
+         id="rect9059"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9061"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(53,-122)"><flowRegion
+         id="flowRegion9063"><rect
+           id="rect9065"
+           width="35.5"
+           height="37"
+           x="193"
+           y="504.86218" /></flowRegion><flowPara
+         id="flowPara9067">c</flowPara></flowRoot>    <path
+       style="opacity:1;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 109.5,501.36218 L 122.5,492.86218 L 136,501.36218 L 125,500.86218 L 126.5,542.86218 L 116.5,542.86218 L 120,501.36218 L 109.5,501.36218 z"
+       id="path9087"
+       sodipodi:nodetypes="cccccccc" />
+    <g
+       id="g9407"
+       transform="translate(-0.5,3)">
+      <rect
+         y="507.86218"
+         x="100.5"
+         height="14"
+         width="43"
+         id="rect9405"
+         style="opacity:0.50157734;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(-45,76.5)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot9089"
+         xml:space="preserve"><flowRegion
+           id="flowRegion9091"><rect
+             style="fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+             y="430.36218"
+             x="146.5"
+             height="17.5"
+             width="68"
+             id="rect9093" /></flowRegion><flowPara
+           id="flowPara9095">liftM</flowPara></flowRoot>    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 98.58781,481.37179 L 144.58781,481.37179"
+       id="path9081" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9429"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(235.85815,21.375879)"><flowRegion
+         id="flowRegion9431"><rect
+           id="rect9433"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara9435">b</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 331.58781,543.87179 L 401.08781,543.87179"
+       id="path9437"
+       sodipodi:nodetypes="cc" />
+    <g
+       id="g9447"
+       transform="translate(330,83)">
+      <text
+         id="text9449"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan9451"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect9453"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g9455"
+       transform="translate(235,16.5)">
+      <text
+         id="text9457"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan9459"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect9461"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g9463"
+       transform="translate(163.5,59.5)">
+      <text
+         id="text9465"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan9467"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect9469"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 248.50961,468.27437 L 248.50961,507.27437"
+       id="path9473"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9475"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(18.5,6)"><flowRegion
+         id="flowRegion9477"><rect
+           id="rect9479"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara9481">join</flowPara></flowRoot>    <g
+       id="g9483"
+       transform="translate(158.65967,-7.75)">
+      <text
+         id="text9485"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan9487"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect9489"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect9491"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 415.16928,492.52437 L 415.16928,531.52437"
+       id="path9501"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9503"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(237.15967,30.25)"><flowRegion
+         id="flowRegion9505"><rect
+           id="rect9507"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara9509">join</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 335.83781,476.87179 L 395.83781,476.87179"
+       id="path9513"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9517"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(261.9646,-22.998633)"><flowRegion
+         id="flowRegion9519"><rect
+           id="rect9521"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara9523">return</flowPara></flowRoot>    <g
+       id="g9561"
+       transform="translate(5,9.5)">
+      <flowRoot
+         transform="translate(260.9646,-123.49863)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot9439"
+         xml:space="preserve"><flowRegion
+           id="flowRegion9441"><rect
+             y="568.36218"
+             x="74"
+             height="47"
+             width="144"
+             id="rect9443" /></flowRegion><flowPara
+           id="flowPara9445">return</flowPara></flowRoot>      <rect
+         y="445.86218"
+         x="333.25"
+         height="16"
+         width="51.5"
+         id="rect9529"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 330.08781,488.87179 L 401.08781,536.37179"
+       id="path9533"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot9535"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(29.5,9)"><flowRegion
+         id="flowRegion9537"><rect
+           id="rect9539"
+           width="27"
+           height="25.5"
+           x="320.5"
+           y="504.36218" /></flowRegion><flowPara
+         id="flowPara9541">id</flowPara></flowRoot>    <path
+       sodipodi:type="spiral"
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       id="path9568"
+       sodipodi:cx="60.5"
+       sodipodi:cy="453.86218"
+       sodipodi:expansion="1"
+       sodipodi:revolution="1.2892194"
+       sodipodi:radius="6.8522897"
+       sodipodi:argument="-19.701523"
+       sodipodi:t0="0.35632923"
+       d="M 59.408051,456.04608 C 57.602822,455.80982 56.72371,453.80569 57.127617,452.17599 C 57.73368,449.73063 60.492356,448.5954 62.780434,449.30131 C 65.867461,450.25372 67.266133,453.79527 66.249354,456.73686 C 65.883033,457.79664 65.236411,458.75036 64.400389,459.49608"
+       transform="translate(319.5,45.5)" />
+    <g
+       id="g10105"
+       transform="translate(21.5,-71)">
+      <text
+         id="text10107"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan10109"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect10111"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10113"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(1,0)"><flowRegion
+         id="flowRegion10115"><rect
+           id="rect10117"
+           width="74.5"
+           height="17"
+           x="49.5"
+           y="412.86218" /></flowRegion><flowPara
+         id="flowPara10119">liftM f =</flowPara></flowRoot>    <g
+       id="g10121"
+       transform="translate(-48,-202.5)">
+      <flowRoot
+         transform="translate(66.007324,95.96792)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot10123"
+         xml:space="preserve"><flowRegion
+           id="flowRegion10125"><rect
+             y="520.36218"
+             x="114"
+             height="22"
+             width="20"
+             id="rect10127" /></flowRegion><flowPara
+           id="flowPara10129">f</flowPara></flowRoot>      <rect
+         y="615.36218"
+         x="177"
+         height="16"
+         width="14"
+         id="rect10131"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g10133"
+       transform="translate(17.63932,261.26472)">
+      <text
+         id="text10135"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan10137"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect10139"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10141"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(17.63932,267.26472)"><flowRegion
+         id="flowRegion10143"><rect
+           id="rect10145"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara10147">b</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 102.63932,774.6269 L 102.63932,736.6269"
+       id="path10149"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10151"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-27.36068,179.26472)"><flowRegion
+         id="flowRegion10153"><rect
+           id="rect10155"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara10157">return</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10159"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-76.36068,261.76472)"><flowRegion
+         id="flowRegion10161"><rect
+           id="rect10163"
+           width="10"
+           height="17"
+           x="249.5"
+           y="518.86218" /></flowRegion><flowPara
+         id="flowPara10165">c</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 118.13932,789.6269 L 164.13932,789.6269"
+       id="path10167" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10169"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(20.63932,275.26472)"><flowRegion
+         id="flowRegion10171"><rect
+           id="rect10173"
+           width="20"
+           height="22"
+           x="114"
+           y="520.36218" /></flowRegion><flowPara
+         id="flowPara10175">f</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 176.28988,776.03909 L 176.28988,738.03909"
+       id="path10177"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10179"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(107.28988,180.67691)"><flowRegion
+         id="flowRegion10181"><rect
+           id="rect10183"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara10185">return</flowPara></flowRoot>    <g
+       id="g10187"
+       transform="translate(-90.36068,149.26472)">
+      <rect
+         y="564.36218"
+         x="260"
+         height="16"
+         width="14"
+         id="rect10189"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(70,58)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot10191"
+         xml:space="preserve"><flowRegion
+           id="flowRegion10193"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect10195" /></flowRegion><flowPara
+           id="flowPara10197">c</flowPara></flowRoot>    </g>
+    <g
+       id="g10199"
+       transform="translate(-44.86068,83.76472)">
+      <flowRoot
+         transform="translate(66.007324,95.96792)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot10201"
+         xml:space="preserve"><flowRegion
+           id="flowRegion10203"><rect
+             y="520.36218"
+             x="114"
+             height="22"
+             width="20"
+             id="rect10205" /></flowRegion><flowPara
+           id="flowPara10207">f</flowPara></flowRoot>      <rect
+         y="615.36218"
+         x="177"
+         height="16"
+         width="14"
+         id="rect10209"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 116.22713,721.63651 L 162.22713,721.63651"
+       id="path10225" />
+    <path
+       sodipodi:type="spiral"
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       id="path10227"
+       sodipodi:cx="60.5"
+       sodipodi:cy="453.86218"
+       sodipodi:expansion="1"
+       sodipodi:revolution="1.2892194"
+       sodipodi:radius="6.8522897"
+       sodipodi:argument="-19.701523"
+       sodipodi:t0="0.35632923"
+       d="M 59.408051,456.04608 C 57.602822,455.80982 56.72371,453.80569 57.127617,452.17599 C 57.73368,449.73063 60.492356,448.5954 62.780434,449.30131 C 65.867461,450.25372 67.266133,453.79527 66.249354,456.73686 C 65.883033,457.79664 65.236411,458.75036 64.400389,459.49608"
+       transform="translate(75.4163,220.63728)" />
+    <g
+       id="g10229"
+       transform="translate(-153,158)">
+      <text
+         id="text10231"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan10233"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect10235"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect10237"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g10241"
+       transform="translate(-32.5,81)">
+      <rect
+         y="552.36218"
+         x="202.5"
+         height="16"
+         width="14"
+         id="rect10243"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="548.36218"
+         x="198.5"
+         height="24"
+         width="22"
+         id="rect10245"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(12.5,46)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot10247"
+         xml:space="preserve"><flowRegion
+           id="flowRegion10249"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect10251" /></flowRegion><flowPara
+           id="flowPara10253">c</flowPara></flowRoot>    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 116.58781,641.37179 L 162.58781,641.37179"
+       id="path10257" />
+    <text
+       xml:space="preserve"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       x="633.61914"
+       y="633.36218"
+       id="text10273"><tspan
+         sodipodi:role="line"
+         id="tspan10275"
+         x="633.61914"
+         y="633.36218">b</tspan></text>
+    <rect
+       style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
+       id="rect10277"
+       width="14"
+       height="16"
+       x="649"
+       y="665.36218" />
+    <g
+       id="g10290"
+       transform="translate(0,7)">
+      <flowRoot
+         transform="translate(21.007324,86.96792)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot10261"
+         xml:space="preserve"><flowRegion
+           id="flowRegion10263"><rect
+             y="520.36218"
+             x="114"
+             height="22"
+             width="20"
+             id="rect10265" /></flowRegion><flowPara
+           id="flowPara10267">f</flowPara></flowRoot>      <rect
+         y="606.36218"
+         x="132"
+         height="16"
+         width="14"
+         id="rect10269"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="602.36218"
+         x="128"
+         height="24"
+         width="22"
+         id="rect10279"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 101.70435,663.45 L 101.70435,702.45"
+       id="path10298"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10300"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-128.30526,201.17563)"><flowRegion
+         id="flowRegion10302"><rect
+           id="rect10304"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10306">join</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 176.70435,662.45 L 176.70435,701.45"
+       id="path10308"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10310"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-5.30526,201.17563)"><flowRegion
+         id="flowRegion10312"><rect
+           id="rect10314"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10316">join</flowPara></flowRoot>    <path
+       sodipodi:type="spiral"
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       id="path10318"
+       sodipodi:cx="60.5"
+       sodipodi:cy="453.86218"
+       sodipodi:expansion="1"
+       sodipodi:revolution="1.2892194"
+       sodipodi:radius="6.8522897"
+       sodipodi:argument="-19.701523"
+       sodipodi:t0="0.35632923"
+       d="M 59.408051,456.04608 C 57.602822,455.80982 56.72371,453.80569 57.127617,452.17599 C 57.73368,449.73063 60.492356,448.5954 62.780434,449.30131 C 65.867461,450.25372 67.266133,453.79527 66.249354,456.73686 C 65.883033,457.79664 65.236411,458.75036 64.400389,459.49608"
+       transform="translate(76.776979,302.87256)" />
+    <g
+       id="g10320"
+       transform="translate(300.15967,-4.75)">
+      <text
+         id="text10322"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan10324"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect10326"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect10328"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g10330"
+       transform="translate(471.65967,86.75)">
+      <text
+         id="text10332"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan10334"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect10336"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 559.66928,495.52437 L 559.66928,534.52437"
+       id="path10338"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10340"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(378.65967,36.25)"><flowRegion
+         id="flowRegion10342"><rect
+           id="rect10344"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10346">join</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 549.65056,534.77437 L 549.65056,496.77437"
+       id="path10348"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10350"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(420.65056,-60.587811)"><flowRegion
+         id="flowRegion10352"><rect
+           id="rect10354"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara10356">return</flowPara></flowRoot>    <g
+       id="g10358"
+       transform="translate(69.159668,225.25)">
+      <text
+         id="text10360"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan10362"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect10364"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect10366"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g10368"
+       transform="translate(325.65967,250.75)">
+      <text
+         id="text10370"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan10372"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect10374"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10378"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(161.65967,245.25)"><flowRegion
+         id="flowRegion10380"><rect
+           id="rect10382"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10384">join</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 345.58781,711.37179 L 391.58781,711.37179"
+       id="path10386" />
+    <g
+       id="g10404"
+       transform="translate(165,-3)">
+      <text
+         id="text10390"
+         y="652.36218"
+         x="323.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="652.36218"
+           x="323.61914"
+           id="tspan10392"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="639.36218"
+         x="320"
+         height="16"
+         width="14"
+         id="rect10394"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="635.36218"
+         x="316"
+         height="24"
+         width="22"
+         id="rect10396"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="631.36218"
+         x="312"
+         height="32"
+         width="30"
+         id="rect10398"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 324.70435,651.45 L 324.70435,690.45"
+       id="path10411"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10413"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(94.694742,189.17563)"><flowRegion
+         id="flowRegion10415"><rect
+           id="rect10417"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10419">join</flowPara></flowRoot>    <g
+       id="g10421"
+       transform="translate(-3,-17)">
+      <text
+         id="text10423"
+         y="652.36218"
+         x="323.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="652.36218"
+           x="323.61914"
+           id="tspan10425"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="639.36218"
+         x="320"
+         height="16"
+         width="14"
+         id="rect10427"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="635.36218"
+         x="316"
+         height="24"
+         width="22"
+         id="rect10429"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="631.36218"
+         x="312"
+         height="32"
+         width="30"
+         id="rect10431"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <g
+       id="g10433"
+       transform="translate(156,146)">
+      <text
+         id="text10435"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan10437"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect10439"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect10441"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 345.58781,631.37179 L 391.58781,631.37179"
+       id="path10443" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10445"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(161.34351,135.61587)"><flowRegion
+         id="flowRegion10447"><rect
+           id="rect10449"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10451">join</flowPara></flowRoot>    <rect
+       style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
+       id="rect10453"
+       width="37"
+       height="19"
+       x="350"
+       y="606.36218" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 409.99039,651.45 L 409.99039,690.45"
+       id="path10455"
+       sodipodi:nodetypes="cc" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot10457"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(228.34351,190.61587)"><flowRegion
+         id="flowRegion10459"><rect
+           id="rect10461"
+           width="33.5"
+           height="17.5"
+           x="191"
+           y="471.36218" /></flowRegion><flowPara
+         id="flowPara10463">join</flowPara></flowRoot>    <path
+       sodipodi:type="spiral"
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       id="path10465"
+       sodipodi:cx="60.5"
+       sodipodi:cy="453.86218"
+       sodipodi:expansion="1"
+       sodipodi:revolution="1.2892194"
+       sodipodi:radius="6.8522897"
+       sodipodi:argument="-19.701523"
+       sodipodi:t0="0.35632923"
+       d="M 59.408051,456.04608 C 57.602822,455.80982 56.72371,453.80569 57.127617,452.17599 C 57.73368,449.73063 60.492356,448.5954 62.780434,449.30131 C 65.867461,450.25372 67.266133,453.79527 66.249354,456.73686 C 65.883033,457.79664 65.236411,458.75036 64.400389,459.49608"
+       transform="translate(305.77698,214.87256)" />
+    <g
+       id="g3114"
+       transform="translate(523.63932,442.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         id="text3116"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan3118"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect3120"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3122"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(465.63932,449.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3124"><rect
+           id="rect3126"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara3128">b</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3132"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(439.63932,360.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3134"><rect
+           id="rect3136"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara3138">return</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3140"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(384.63932,443.76472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3142"><rect
+           id="rect3144"
+           width="10"
+           height="17"
+           x="249.5"
+           y="518.86218" /></flowRegion><flowPara
+         id="flowPara3146">c</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3150"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(468.63932,453.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3152"><rect
+           id="rect3154"
+           width="20"
+           height="22"
+           x="114"
+           y="520.36218" /></flowRegion><flowPara
+         id="flowPara3156">f</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 647.28988,962.03909 L 685.28988,916.03909"
+       id="path3158"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3160"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(605.28988,364.67691)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3162"><rect
+           id="rect3164"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara3166">return</flowPara></flowRoot>    <g
+       id="g3168"
+       transform="translate(427.63932,330.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <rect
+         y="564.36218"
+         x="260"
+         height="16"
+         width="14"
+         id="rect3170"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(70,58)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot3172"
+         xml:space="preserve"><flowRegion
+           id="flowRegion3174"><rect
+             y="504.86218"
+             x="193"
+             height="37"
+             width="35.5"
+             id="rect3176" /></flowRegion><flowPara
+           id="flowPara3178">c</flowPara></flowRoot>    </g>
+    <g
+       id="g3180"
+       transform="translate(328.13932,271.76472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <flowRoot
+         transform="translate(66.007324,95.96792)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot3182"
+         xml:space="preserve"><flowRegion
+           id="flowRegion3184"><rect
+             y="520.36218"
+             x="114"
+             height="22"
+             width="20"
+             id="rect3186" /></flowRegion><flowPara
+           id="flowPara3188">f</flowPara></flowRoot>      <rect
+         y="615.36218"
+         x="177"
+         height="16"
+         width="14"
+         id="rect3190"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       d="M 646.625,907.625 L 621.625,910.125 L 634.09987,914.50368 L 591.125,959.125 L 602.125,964.125 L 643.125,917.125 L 655.625,922.125 L 646.625,907.625 z"
+       id="path3192"
+       sodipodi:nodetypes="cccccccc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <g
+       id="g3194"
+       transform="translate(499.13932,424.26472)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <rect
+         y="507.86218"
+         x="100.5"
+         height="14"
+         width="43"
+         id="rect3196"
+         style="opacity:0.50157734;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(-45,76.5)"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;opacity:1;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         id="flowRoot3198"
+         xml:space="preserve"><flowRegion
+           id="flowRegion3200"><rect
+             style="fill:#000000;fill-opacity:1;stroke:none;stroke-opacity:1"
+             y="430.36218"
+             x="146.5"
+             height="17.5"
+             width="68"
+             id="rect3202" /></flowRegion><flowPara
+           id="flowPara3204">liftM</flowPara></flowRoot>    </g>
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 621.22713,903.63651 L 679.22713,903.63651"
+       id="path3206"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 555.83197,962.03909 L 593.83197,916.03909"
+       id="path3210"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 565.58781,970.37179 L 623.58781,970.37179"
+       id="path3212"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <g
+       id="g3216"
+       transform="translate(220.35107,454.92268)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         id="text3218"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan3220"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect3223"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3225"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(162.35107,461.92268)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3227"><rect
+           id="rect3229"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara3231">b</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3233"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(200.35107,300.92268)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3235"><rect
+           id="rect3237"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara3239">return</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 252.54372,974.69705 L 290.54372,928.69705"
+       id="path3241"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 317.06575,904.00454 L 355.06575,858.00454"
+       id="path3385"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <g
+       id="g3387"
+       transform="translate(115,358)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         id="text3389"
+         y="489.36218"
+         x="251.61914"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="489.36218"
+           x="251.61914"
+           id="tspan3391"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="476.36218"
+         x="248"
+         height="16"
+         width="14"
+         id="rect3393"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+      <rect
+         y="472.36218"
+         x="244"
+         height="24"
+         width="22"
+         id="rect3395"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <text
+       xml:space="preserve"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       x="295.30322"
+       y="847.20862"
+       id="text3397"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><tspan
+         sodipodi:role="line"
+         id="tspan3399"
+         x="295.30322"
+         y="847.20862">a a b =</tspan></text>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3401"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(129.9646,374.50137)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return_twice.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3403"><rect
+           id="rect3405"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara3407">return</flowPara></flowRoot>    <g
+       id="g3409"
+       transform="translate(61.54431,454.92268)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90">
+      <text
+         id="text3411"
+         y="465.36218"
+         x="81.619141"
+         style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+         xml:space="preserve"><tspan
+           y="465.36218"
+           x="81.619141"
+           id="tspan3413"
+           sodipodi:role="line">b</tspan></text>
+      <rect
+         y="452.36218"
+         x="78"
+         height="16"
+         width="14"
+         id="rect3415"
+         style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linejoin:round;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
+    </g>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3417"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(3.54431,461.92268)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3419"><rect
+           id="rect3421"
+           width="10"
+           height="18"
+           x="82"
+           y="513.36218" /></flowRegion><flowPara
+         id="flowPara3423">b</flowPara></flowRoot>    <path
+       style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow2Mend);stroke-opacity:1"
+       d="M 93.73696,974.6971 L 131.73696,928.69705"
+       id="path3425"
+       sodipodi:nodetypes="cc"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90" />
+    <text
+       xml:space="preserve"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       x="90.771118"
+       y="919.86218"
+       id="text3427"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><tspan
+         sodipodi:role="line"
+         id="tspan3429"
+         x="90.771118"
+         y="919.86218">a b =</tspan></text>
+    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3431"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(-28.84216,374.50137)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/return.png"
+       inkscape:export-xdpi="90"
+       inkscape:export-ydpi="90"><flowRegion
+         id="flowRegion3433"><rect
+           id="rect3435"
+           width="144"
+           height="47"
+           x="74"
+           y="568.36218" /></flowRegion><flowPara
+         id="flowPara3437">return</flowPara></flowRoot>    <flowRoot
+       xml:space="preserve"
+       id="flowRoot3486"
+       style="font-size:13px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans Mono;-inkscape-font-specification:Bitstream Vera Sans Mono"
+       transform="translate(5,33)"
+       inkscape:export-filename="/usr/tmp/join_to_monad/images/liftM.png"
+       inkscape:export-xdpi="90"