metaparse/doc/images/foldr_diag1.svg
2015-08-15 21:55:20 +02:00

1240 lines
40 KiB
XML

<?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:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1090.4526"
height="1417.1938"
id="svg2"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="foldr_diag1.svg">
<defs
id="defs4">
<linearGradient
id="linearGradient18419">
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="0"
id="stop18421" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop18423" />
</linearGradient>
<linearGradient
id="linearGradient4707">
<stop
id="stop4709"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711" />
<stop
id="stop4713"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient5254-5">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7" />
</linearGradient>
<linearGradient
id="linearGradient4707-3">
<stop
id="stop4709-1"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-4" />
<stop
id="stop4713-1"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-4"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient5254-5-2">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-9" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-9" />
</linearGradient>
<linearGradient
id="linearGradient4707-6">
<stop
id="stop4709-2"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-0" />
<stop
id="stop4713-2"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-5"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient5254-5-5">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-4" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-96" />
</linearGradient>
<linearGradient
id="linearGradient4707-5">
<stop
id="stop4709-3"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-9" />
<stop
id="stop4713-8"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-8"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient5254-5-3">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-43" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-4" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient18419-7"
id="linearGradient18429-4"
x1="-108.93402"
y1="-376.16904"
x2="741.15741"
y2="-376.16904"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient18419-7">
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="0"
id="stop18421-0" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop18423-4" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient18419-0"
id="linearGradient18429-7"
x1="-108.93402"
y1="-376.16904"
x2="741.15741"
y2="-376.16904"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient18419-0">
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="0"
id="stop18421-8" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop18423-1" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient18419-05"
id="linearGradient18429-5"
x1="-108.93402"
y1="-376.16904"
x2="741.15741"
y2="-376.16904"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient18419-05">
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="0"
id="stop18421-06" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop18423-0" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707"
id="linearGradient18600"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5"
id="linearGradient18602"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-3"
id="linearGradient18604"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-2"
id="linearGradient18606"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-6"
id="linearGradient18608"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-5"
id="linearGradient18610"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-5"
id="linearGradient18612"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-3"
id="linearGradient18614"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient4707-4">
<stop
id="stop4709-31"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-7" />
<stop
id="stop4713-22"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-3"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient5254-5-1">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-94" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-7" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-4"
id="linearGradient3189"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-1"
id="linearGradient3191"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-4-9"
id="linearGradient3189-3"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient4707-4-9">
<stop
id="stop4709-31-7"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-7-9" />
<stop
id="stop4713-22-9"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-3-1"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-1-3"
id="linearGradient3191-9"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient5254-5-1-3">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-94-4" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-7-0" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-4-9-3"
id="linearGradient3189-3-7"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient4707-4-9-3">
<stop
id="stop4709-31-7-0"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-7-9-0" />
<stop
id="stop4713-22-9-6"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-3-1-2"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-1-3-2"
id="linearGradient3191-9-7"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient5254-5-1-3-2">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-94-4-5" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-7-0-3" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-4-9-1"
id="linearGradient3189-3-9"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient4707-4-9-1">
<stop
id="stop4709-31-7-8"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-7-9-9" />
<stop
id="stop4713-22-9-7"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-3-1-21"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-1-3-26"
id="linearGradient3191-9-9"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.42596717,0,0,0.57376114,615.18158,202.43298)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient5254-5-1-3-26">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-94-4-7" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-7-0-5" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient4707-7"
id="linearGradient18600-3"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.067319,0,0,7.3697213,2957.9771,1184.2675)"
spreadMethod="pad"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient4707-7">
<stop
id="stop4709-7"
offset="0"
style="stop-color:#c0c0c0;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0.40000001"
id="stop4711-6" />
<stop
id="stop4713-3"
offset="0.60000002"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
id="stop4715-9"
offset="1"
style="stop-color:#c0c0c0;stop-opacity:1;" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient5254-5-7"
id="linearGradient18602-6"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.067319,0,0,7.3697213,2957.9771,1184.2675)"
x1="-1057.1428"
y1="-137.63783"
x2="-1057.1428"
y2="108.07645" />
<linearGradient
id="linearGradient5254-5-7">
<stop
style="stop-color:#c0c0c0;stop-opacity:1;"
offset="0"
id="stop5256-7-44" />
<stop
style="stop-color:#808080;stop-opacity:1;"
offset="1"
id="stop5262-7-49" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4"
inkscape:cx="707.36172"
inkscape:cy="1293.5889"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1855"
inkscape:window-height="1056"
inkscape:window-x="65"
inkscape:window-y="24"
inkscape:window-maximized="1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<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" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Ebene 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(274.73846,-242.21983)">
<g
transform="matrix(0.54151067,0,0,0.5239281,-19.221657,512.70191)"
id="g17514-5">
<rect
ry="68.776787"
y="138.33096"
x="28.290833"
height="1789.7896"
width="1494.3762"
id="rect5215-5-12"
style="fill:url(#linearGradient18600-3);fill-opacity:1;stroke:url(#linearGradient18602-6);stroke-width:39.03276062;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text5640-00-5"
y="1885.0845"
x="381.11914"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="1885.0845"
x="381.11914"
id="tspan5642-9-88"
sodipodi:role="line"
style="font-size:60.07733154px">foldr&lt;int_token, int_&lt;0&gt;, sum_op&gt;</tspan></text>
</g>
<path
style="fill:#c0c0c0;fill-opacity:1"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="rect17648"
d="m 409.73796,284.51725 82.92051,0.12897 -338.40179,88.89341 -136.073937,0 z" />
<path
style="fill:#808080;fill-opacity:1"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="rect17648-3"
d="m 488.12451,284.54116 72.81898,0.12897 -217.18348,88.89341 -136.07394,0 z" />
<path
style="fill:#c0c0c0;fill-opacity:1"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="rect17648-37"
d="m 563.86064,282.11475 52.6159,0.12897 -75.76209,88.89341 -136.07394,0 z" />
<path
style="fill:#808080;fill-opacity:1"
sodipodi:nodetypes="ccccc"
inkscape:connector-curvature="0"
id="rect17648-5"
d="m 614.94691,284.54116 54.63629,0.12897 57.57796,88.89341 -136.07394,0 z" />
<rect
style="fill:#808080;fill-opacity:1"
y="243.10817"
x="-669.96472"
height="42.426407"
width="56.568546"
id="rect18516-4-8"
transform="scale(-1,1)" />
<rect
style="fill:#808080;fill-opacity:1"
y="243.08786"
x="485.39606"
height="42.426407"
width="78.791901"
id="rect18516-4" />
<rect
style="fill:#c0c0c0;fill-opacity:1"
y="243.14877"
x="563.25391"
height="42.426407"
width="50.507629"
id="rect18516-6" />
<rect
style="fill:#c0c0c0;fill-opacity:1"
y="242.21983"
x="412.14224"
height="42.426407"
width="78.791901"
id="rect18516" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="704.02618"
y="278.58533"
id="text2985"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan2987"
x="704.02618"
y="278.58533">BOOST_METAPARSE_STRING(&quot;11 13 3 21&quot;)</tspan></text>
<g
transform="matrix(0.54151067,0,0,0.5239281,-1.7638252,307.9855)"
id="g17514">
<rect
ry="45.900894"
y="121.0028"
x="11.525307"
height="139.342"
width="307.91342"
id="rect5215-5"
style="fill:url(#linearGradient18600);fill-opacity:1;stroke:url(#linearGradient18602);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text5640-00"
y="206.41183"
x="26.949203"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="206.41183"
x="26.949203"
id="tspan5642-9"
sodipodi:role="line"
style="font-size:60.07733154px">int_token</tspan></text>
</g>
<g
transform="matrix(0.54151067,0,0,0.5239281,187.60783,307.9855)"
id="g17514-2">
<rect
ry="45.900894"
y="121.0028"
x="11.525307"
height="139.342"
width="307.91342"
id="rect5215-5-1"
style="fill:url(#linearGradient18604);fill-opacity:1;stroke:url(#linearGradient18606);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text5640-00-3"
y="206.41183"
x="26.949203"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="206.41183"
x="26.949203"
id="tspan5642-9-8"
sodipodi:role="line"
style="font-size:60.07733154px">int_token</tspan></text>
</g>
<g
transform="matrix(0.54151067,0,0,0.5239281,376.97949,305.9652)"
id="g17514-1">
<rect
ry="45.900894"
y="121.0028"
x="11.525307"
height="139.342"
width="307.91342"
id="rect5215-5-8"
style="fill:url(#linearGradient18608);fill-opacity:1;stroke:url(#linearGradient18610);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text5640-00-8"
y="206.41183"
x="26.949203"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="206.41183"
x="26.949203"
id="tspan5642-9-3"
sodipodi:role="line"
style="font-size:60.07733154px">int_token</tspan></text>
</g>
<g
transform="matrix(0.54151067,0,0,0.5239281,566.35115,305.92458)"
id="g17514-3">
<rect
ry="45.900894"
y="121.0028"
x="11.525307"
height="139.342"
width="307.91342"
id="rect5215-5-7"
style="fill:url(#linearGradient18612);fill-opacity:1;stroke:url(#linearGradient18614);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none" />
<text
sodipodi:linespacing="125%"
id="text5640-00-7"
y="206.41183"
x="26.949203"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
xml:space="preserve"><tspan
y="206.41183"
x="26.949203"
id="tspan5642-9-85"
sodipodi:role="line"
style="font-size:60.07733154px">int_token</tspan></text>
</g>
<g
transform="matrix(0.54151067,0,0,0.5239281,540.81613,662.68608)"
id="g17514-32">
<g
id="g3184"
transform="translate(89.540843,-19.280365)">
<rect
style="fill:url(#linearGradient3189);fill-opacity:1;stroke:url(#linearGradient3191);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="rect5215-5-3"
width="307.91342"
height="139.342"
x="11.525307"
y="121.0028"
ry="45.900894" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="49.038189"
y="200.4129"
id="text5640-00-0"
sodipodi:linespacing="125%"><tspan
style="font-size:60.07733154px"
sodipodi:role="line"
id="tspan5642-9-5"
x="49.038189"
y="200.4129">sum_op</tspan></text>
</g>
</g>
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-6"
width="4.0406103"
height="149.50259"
x="635.28308"
y="540.83295" />
<path
style="fill:#000000;fill-opacity:1"
d="m 621.74113,686.99769 30.30458,0 -15.44939,26.26396 0,0 z"
id="rect18817-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34"
width="4.0406103"
height="60.609154"
x="726.56226"
y="649.89905" />
<path
style="fill:#000000;fill-opacity:1"
d="m 713.02035,685.49522 30.30458,0 -15.44939,26.26396 0,0 z"
id="rect18817-7"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="585.96509"
y="875.38232"
id="text18736-8-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan18738-3-1"
x="585.96509"
y="875.38232"
style="font-size:28px">int_&lt;21&gt;</tspan></text>
<g
transform="matrix(0.54151067,0,0,0.5239281,424.27809,883.3054)"
id="g17514-32-2">
<g
id="g3184-8"
transform="translate(89.540843,-19.280365)">
<rect
style="fill:url(#linearGradient3189-3);fill-opacity:1;stroke:url(#linearGradient3191-9);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="rect5215-5-3-2"
width="307.91342"
height="139.342"
x="11.525307"
y="121.0028"
ry="45.900894" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="49.038189"
y="200.4129"
id="text5640-00-0-7"
sodipodi:linespacing="125%"><tspan
style="font-size:60.07733154px"
sodipodi:role="line"
id="tspan5642-9-5-3"
x="49.038189"
y="200.4129">sum_op</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="430.73636"
y="1087.5144"
id="text18736-8-6-4"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan18738-3-1-6"
x="430.73636"
y="1087.5144"
style="font-size:28px">int_&lt;24&gt;</tspan></text>
<g
transform="matrix(0.54151067,0,0,0.5239281,253.39989,1100.1037)"
id="g17514-32-2-8">
<g
id="g3184-8-4"
transform="translate(89.540843,-19.280365)">
<rect
style="fill:url(#linearGradient3189-3-7);fill-opacity:1;stroke:url(#linearGradient3191-9-7);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="rect5215-5-3-2-9"
width="307.91342"
height="139.342"
x="11.525307"
y="121.0028"
ry="45.900894" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="49.038189"
y="200.4129"
id="text5640-00-0-7-0"
sodipodi:linespacing="125%"><tspan
style="font-size:60.07733154px"
sodipodi:role="line"
id="tspan5642-9-5-3-8"
x="49.038189"
y="200.4129">sum_op</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="219.85818"
y="1304.3127"
id="text18736-8-6-4-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan18738-3-1-6-7"
x="219.85818"
y="1304.3127"
style="font-size:28px">int_&lt;37&gt;</tspan></text>
<g
transform="matrix(0.54151067,0,0,0.5239281,47.06491,1314.0936)"
id="g17514-32-2-2">
<g
id="g3184-8-5"
transform="translate(89.540843,-19.280365)">
<rect
style="fill:url(#linearGradient3189-3-9);fill-opacity:1;stroke:url(#linearGradient3191-9-9);stroke-width:4.943717;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none"
id="rect5215-5-3-2-5"
width="307.91342"
height="139.342"
x="11.525307"
y="121.0028"
ry="45.900894" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="49.038189"
y="200.4129"
id="text5640-00-0-7-5"
sodipodi:linespacing="125%"><tspan
style="font-size:60.07733154px"
sodipodi:role="line"
id="tspan5642-9-5-3-7"
x="49.038189"
y="200.4129">sum_op</tspan></text>
</g>
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="21.827759"
y="1652.8102"
id="text18736-8-6-4-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan18738-3-1-6-1"
x="21.827759"
y="1652.8102"
style="font-size:28px">int_&lt;48&gt;</tspan></text>
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-0"
width="4.0406103"
height="60.609154"
x="633.75006"
y="790.65027" />
<path
style="fill:#000000;fill-opacity:1"
d="m 620.20815,826.24649 30.30458,0 -15.44939,26.26396 0,0 z"
id="rect18817-7-4"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-3"
width="4.0406103"
height="42.426407"
x="608.35919"
y="889.64532" />
<path
style="fill:#000000;fill-opacity:1"
d="m 594.8173,907.0587 30.30458,0 -15.44939,26.2639 0,0 z"
id="rect18817-7-7"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-9"
width="4.0406103"
height="60.609154"
x="517.33386"
y="1010.8635" />
<path
style="fill:#000000;fill-opacity:1"
d="m 503.79194,1046.4597 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-2"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-30"
width="4.0406103"
height="60.609154"
x="442.02423"
y="1091.6758" />
<path
style="fill:#000000;fill-opacity:1"
d="m 428.48232,1127.272 30.30458,0 -15.44939,26.2639 0,0 z"
id="rect18817-7-41"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-2"
width="4.0406103"
height="60.609154"
x="327.01917"
y="1225.016" />
<path
style="fill:#000000;fill-opacity:1"
d="m 313.47727,1260.6121 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-1"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-36"
width="4.0406103"
height="60.609154"
x="233.79083"
y="1307.8485" />
<path
style="fill:#000000;fill-opacity:1"
d="m 220.24886,1343.4446 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-23"
width="4.0406103"
height="167.68532"
x="120.96844"
y="1441.1886"
inkscape:transform-center-x="-147.89218"
inkscape:transform-center-y="83.842659" />
<path
style="fill:#000000;fill-opacity:1"
d="m 107.42655,1598.7848 30.30458,0 -15.44939,26.2639 0,0 z"
id="rect18817-7-45"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc"
inkscape:transform-center-x="-147.48227"
inkscape:transform-center-y="48.728125" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-4"
width="4.0406103"
height="814.18292"
x="127.41516"
y="545.57416" />
<path
style="fill:#000000;fill-opacity:1"
d="m 111.87327,1338.7441 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-71"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-34"
width="4.0406103"
height="614.17273"
x="336.95828"
y="538.11218" />
<path
style="fill:#000000;fill-opacity:1"
d="m 323.41635,1127.2719 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-3"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-99"
width="4.0406103"
height="400.02042"
x="515.1308"
y="532.09192" />
<path
style="fill:#000000;fill-opacity:1"
d="m 501.5889,907.0993 30.30458,0 -15.44939,26.264 0,0 z"
id="rect18817-7-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<g
id="g3106-8-7"
transform="matrix(1,0,0,5.2027123,-49.82241,-1084.3281)">
<path
inkscape:connector-curvature="0"
id="path3086-6-4"
d="m 8.0812203,274.54473 c -34.3451863,0 -40.4061013,115.15739 -40.4061013,115.15739"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path3086-0-1-1"
d="m 9.147187,505.28081 c -34.345187,0 -40.406097,-115.15739 -40.406097,-115.15739"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="-274.73846"
y="902.56964"
id="text3081-8-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-274.73846"
y="902.56964"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3586-7">parsing with</tspan><tspan
sodipodi:role="line"
x="-274.73846"
y="937.56964"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3668">foldr&lt;</tspan><tspan
sodipodi:role="line"
x="-274.73846"
y="972.56964"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3672"> int_token,</tspan><tspan
sodipodi:role="line"
x="-274.73846"
y="1007.5696"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3674"> int_&lt;0&gt;,</tspan><tspan
sodipodi:role="line"
x="-274.73846"
y="1042.5696"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3219"> sum_op</tspan><tspan
sodipodi:role="line"
x="-274.73846"
y="1077.5696"
style="font-size:28px;text-align:start;text-anchor:start"
id="tspan3670">&gt;</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="85.0644"
y="528.29016"
id="text18736"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan18738"
x="85.0644"
y="528.29016"
style="font-size:28px">int_&lt;11&gt; int_&lt;13&gt; int_&lt;3&gt; int_&lt;21&gt;</tspan></text>
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761"
width="4.0406103"
height="47.75201"
x="125.43476"
y="446.40756" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-1"
width="4.0406103"
height="44.894867"
x="336.8064"
y="445.28348" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-7"
width="4.0406103"
height="44.180584"
x="515.36475"
y="445.81143" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-3"
width="4.0406103"
height="46.323441"
x="634.20776"
y="443.79105" />
<path
style="fill:#000000;fill-opacity:1"
d="m 111.89284,482.00377 30.30449,0 -15.44939,26.2639 0,0 z"
id="rect18817"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<path
style="fill:#000000;fill-opacity:1"
d="m 323.36993,482.00377 30.3046,0 -15.4494,26.2639 0,0 z"
id="rect18817-9"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<path
style="fill:#000000;fill-opacity:1"
d="m 501.35982,482.00377 30.3046,0 -15.4494,26.2639 0,0 z"
id="rect18817-1"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<path
style="fill:#000000;fill-opacity:1"
d="m 621.03512,482.00377 30.3045,0 -15.4494,26.2639 0,0 z"
id="rect18817-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccc" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-4-7"
width="4.0406103"
height="764.68542"
x="771.77954"
y="649.89905" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-34-6"
width="4.0406103"
height="60.609154"
x="521.26172"
y="1412.9364" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-3-0-4"
width="254.30014"
height="4.8948693"
x="520.97247"
y="1412.5093" />
<rect
style="fill:#000000;fill-opacity:1"
id="rect18761-3-0-4-1"
width="47.535759"
height="4.8948693"
x="727.04358"
y="649.42572" />
</g>
</svg>