summaryrefslogtreecommitdiff
path: root/docs/chapter11/graph5.svg
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2024-06-30 01:58:08 +0100
committerCliff Click <cliffc@acm.org>2024-10-23 17:51:09 -0700
commitdc77490c735104497851ed8c12ae5c713ab05b04 (patch)
tree251544a95f158f4bcccc4a8d393933e638037265 /docs/chapter11/graph5.svg
parentb933257d6b26343f3ad517f5876bb5a0093ab403 (diff)
downloadSimple-linear-chapter11.tar.gz
Simple-linear-chapter11.zip
Chapter 11: Global Code Motionlinear-chapter11
Co-authored-by: Dibyendu Majumdar <mobile@majumdar.org.uk> Co-authored-by: Thalia Archibald <thalia@archibald.dev> Co-authored-by: Robert Obkircher <robert.obkircher@gmail.com>
Diffstat (limited to 'docs/chapter11/graph5.svg')
-rw-r--r--docs/chapter11/graph5.svg452
1 files changed, 452 insertions, 0 deletions
diff --git a/docs/chapter11/graph5.svg b/docs/chapter11/graph5.svg
new file mode 100644
index 00000000..6dbf29f9
--- /dev/null
+++ b/docs/chapter11/graph5.svg
@@ -0,0 +1,452 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
+ "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<!-- Generated by graphviz version 2.43.0 (0)
+ -->
+<!-- Title: chapter11 Pages: 1 -->
+<svg width="474pt" height="680pt"
+ viewBox="0.00 0.00 474.00 679.67" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 675.67)">
+<title>chapter11</title>
+<polygon fill="white" stroke="transparent" points="-4,4 -4,-675.67 470,-675.67 470,4 -4,4"/>
+<g id="clust1" class="cluster">
+<title>cluster_Nodes</title>
+<polygon fill="none" stroke="black" points="8,-23.67 8,-663.67 458,-663.67 458,-23.67 8,-23.67"/>
+</g>
+<!-- Start2 -->
+<g id="node1" class="node">
+<title>Start2</title>
+<polygon fill="yellow" stroke="transparent" points="109,-626.67 109,-651.67 215,-651.67 215,-626.67 109,-626.67"/>
+<polygon fill="none" stroke="black" points="109,-626.67 109,-651.67 215,-651.67 215,-626.67 109,-626.67"/>
+<text text-anchor="start" x="143.5" y="-635.47" font-family="Times,serif" font-size="14.00">Start</text>
+<polygon fill="none" stroke="black" points="109,-595.67 109,-626.67 215,-626.67 215,-595.67 109,-595.67"/>
+<polygon fill="yellow" stroke="transparent" points="114,-600.67 114,-621.67 154,-621.67 154,-600.67 114,-600.67"/>
+<polygon fill="none" stroke="black" points="114,-600.67 114,-621.67 154,-621.67 154,-600.67 114,-600.67"/>
+<text text-anchor="start" x="117" y="-607.47" font-family="Times,serif" font-size="14.00">$ctrl</text>
+<polygon fill="none" stroke="black" points="154,-600.67 154,-621.67 185,-621.67 185,-600.67 154,-600.67"/>
+<text text-anchor="start" x="157" y="-607.47" font-family="Times,serif" font-size="14.00">arg</text>
+<polygon fill="none" stroke="black" points="185,-600.67 185,-621.67 210,-621.67 210,-600.67 185,-600.67"/>
+<text text-anchor="start" x="188" y="-607.47" font-family="Times,serif" font-size="14.00">$2</text>
+</g>
+<!-- Stop3 -->
+<g id="node2" class="node">
+<title>Stop3</title>
+<polygon fill="yellow" stroke="black" points="178,-67.67 124,-67.67 124,-31.67 178,-31.67 178,-67.67"/>
+<text text-anchor="middle" x="151" y="-45.97" font-family="Times,serif" font-size="14.00">Stop</text>
+</g>
+<!-- Return37 -->
+<g id="node21" class="node">
+<title>Return37</title>
+<polygon fill="yellow" stroke="black" points="184,-153.67 118,-153.67 118,-117.67 184,-117.67 184,-153.67"/>
+<text text-anchor="middle" x="151" y="-131.97" font-family="Times,serif" font-size="14.00">Return</text>
+</g>
+<!-- Stop3&#45;&gt;Return37 -->
+<g id="edge1" class="edge">
+<title>Stop3&#45;&gt;Return37</title>
+<path fill="none" stroke="red" d="M151,-68.08C151,-79.42 151,-94.45 151,-107.36"/>
+<polygon fill="red" stroke="red" points="147.5,-107.58 151,-117.58 154.5,-107.58 147.5,-107.58"/>
+<text text-anchor="middle" x="148" y="-70.68" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Con_4 -->
+<g id="node3" class="node">
+<title>Con_4</title>
+<ellipse fill="none" stroke="black" cx="262" cy="-537.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="262" y="-533.97" font-family="Times,serif" font-size="14.00">#0</text>
+</g>
+<!-- new9 -->
+<g id="node4" class="node">
+<title>new9</title>
+<ellipse fill="none" stroke="black" cx="127" cy="-537.67" rx="38.99" ry="18"/>
+<text text-anchor="middle" x="127" y="-533.97" font-family="Times,serif" font-size="14.00">new S</text>
+</g>
+<!-- new9&#45;&gt;Start2 -->
+<g id="edge2" class="edge">
+<title>new9&#45;&gt;Start2:p0</title>
+<path fill="none" stroke="green" d="M130.01,-555.71C131.49,-565.24 133.09,-577.6 133.72,-589.67"/>
+<polygon fill="green" stroke="green" points="130.22,-589.78 134,-599.67 137.22,-589.58 130.22,-589.78"/>
+<text text-anchor="middle" x="127.01" y="-558.31" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Store10 -->
+<g id="node5" class="node">
+<title>Store10</title>
+<ellipse fill="none" stroke="black" cx="138" cy="-465.67" rx="27.9" ry="18"/>
+<text text-anchor="middle" x="138" y="-461.97" font-family="Times,serif" font-size="14.00">.f =</text>
+</g>
+<!-- Store10&#45;&gt;Start2 -->
+<g id="edge3" class="edge">
+<title>Store10&#45;&gt;Start2:p0</title>
+<path fill="none" stroke="red" d="M154.15,-480.42C167.51,-493.39 184.39,-514.14 185,-536.67"/>
+<path fill="none" stroke="red" d="M185,-538.67C185.75,-566.42 153.85,-566.41 140.14,-582.26"/>
+<polygon fill="red" stroke="red" points="136.81,-581.05 135.08,-591.5 142.95,-584.41 136.81,-581.05"/>
+<text text-anchor="middle" x="151.15" y="-483.02" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Store10&#45;&gt;Start2 -->
+<g id="edge4" class="edge">
+<title>Store10&#45;&gt;Start2:p2</title>
+<path fill="none" stroke="blue" d="M155.9,-479.6C167.73,-489.22 182.4,-503.45 190,-519.67 203.61,-548.75 199.22,-561.31 198.19,-589.48"/>
+<polygon fill="blue" stroke="blue" points="194.69,-589.61 198,-599.67 201.69,-589.74 194.69,-589.61"/>
+<text text-anchor="middle" x="158.9" y="-482.2" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Store10&#45;&gt;Con_4 -->
+<g id="edge6" class="edge">
+<title>Store10&#45;&gt;Con_4</title>
+<path fill="none" stroke="black" d="M158.48,-478.23C178.79,-489.7 210.11,-507.38 232.98,-520.29"/>
+<polygon fill="black" stroke="black" points="231.48,-523.46 241.9,-525.33 234.92,-517.37 231.48,-523.46"/>
+<text text-anchor="middle" x="155.48" y="-471.83" font-family="Helvetica,sans-Serif" font-size="8.00">3</text>
+</g>
+<!-- Store10&#45;&gt;new9 -->
+<g id="edge5" class="edge">
+<title>Store10&#45;&gt;new9</title>
+<path fill="none" stroke="black" d="M135.34,-483.62C134.13,-491.33 132.66,-500.65 131.3,-509.31"/>
+<polygon fill="black" stroke="black" points="127.81,-508.98 129.71,-519.4 134.72,-510.06 127.81,-508.98"/>
+<text text-anchor="middle" x="132.34" y="-486.22" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Loop11 -->
+<g id="node6" class="node">
+<title>Loop11</title>
+<polygon fill="yellow" stroke="black" points="194,-411.67 140,-411.67 140,-375.67 194,-375.67 194,-411.67"/>
+<text text-anchor="middle" x="167" y="-389.97" font-family="Times,serif" font-size="14.00">Loop</text>
+</g>
+<!-- Loop11&#45;&gt;Start2 -->
+<g id="edge7" class="edge">
+<title>Loop11&#45;&gt;Start2:p0</title>
+<path fill="none" stroke="red" d="M170.34,-412.08C175.19,-438.77 183.78,-491.46 185,-536.67"/>
+<text text-anchor="middle" x="167.34" y="-414.68" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Region32 -->
+<g id="node17" class="node">
+<title>Region32</title>
+<polygon fill="yellow" stroke="black" points="268,-67.67 202,-67.67 202,-31.67 268,-31.67 268,-67.67"/>
+<text text-anchor="middle" x="235" y="-45.97" font-family="Times,serif" font-size="14.00">Region</text>
+</g>
+<!-- Loop11&#45;&gt;Region32 -->
+<g id="edge8" class="edge">
+<title>Loop11&#45;&gt;Region32</title>
+<path fill="none" stroke="red" d="M155.44,-375.36C125.2,-327.71 50.11,-192.34 109,-103.67 114.01,-96.13 157.85,-78.74 192.42,-65.93"/>
+<polygon fill="red" stroke="red" points="193.71,-69.18 201.89,-62.45 191.3,-62.61 193.71,-69.18"/>
+<text text-anchor="middle" x="152.44" y="-368.96" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Phi_arg13 -->
+<g id="node7" class="node">
+<title>Phi_arg13</title>
+<ellipse fill="lightyellow" stroke="black" cx="341" cy="-393.67" rx="37.09" ry="18"/>
+<text text-anchor="middle" x="341" y="-389.97" font-family="Times,serif" font-size="14.00">φ_arg</text>
+</g>
+<!-- Phi_arg13&#45;&gt;Start2 -->
+<g id="edge10" class="edge">
+<title>Phi_arg13&#45;&gt;Start2:p1</title>
+<path fill="none" stroke="black" d="M341.39,-411.71C341.18,-444.06 336.07,-514.83 298,-555.67 259.62,-596.84 181.02,-546.84 171.05,-589.48"/>
+<polygon fill="black" stroke="black" points="167.54,-589.37 170,-599.67 174.5,-590.09 167.54,-589.37"/>
+<text text-anchor="middle" x="338.39" y="-414.31" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Phi_arg13&#45;&gt;Loop11 -->
+<g id="edge9" class="edge">
+<title>Phi_arg13&#45;&gt;Loop11</title>
+<path fill="none" stroke="black" stroke-dasharray="1,5" d="M321.44,-378.23C310.28,-370.41 295.63,-361.73 281,-357.67 251.45,-349.49 240.94,-347.52 212,-357.67 204.86,-360.18 198.01,-364.35 191.91,-368.97"/>
+<polygon fill="black" stroke="black" points="189.55,-366.38 184.08,-375.46 194.01,-371.77 189.55,-366.38"/>
+<text text-anchor="middle" x="318.44" y="-371.83" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Sub35 -->
+<g id="node19" class="node">
+<title>Sub35</title>
+<ellipse fill="none" stroke="black" cx="217" cy="-321.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="217" y="-317.97" font-family="Times,serif" font-size="14.00">&#45;</text>
+</g>
+<!-- LT14 -->
+<g id="node8" class="node">
+<title>LT14</title>
+<ellipse fill="none" stroke="black" cx="289" cy="-321.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="289" y="-317.97" font-family="Times,serif" font-size="14.00">&lt;</text>
+</g>
+<!-- LT14&#45;&gt;Con_4 -->
+<g id="edge13" class="edge">
+<title>LT14&#45;&gt;Con_4</title>
+<path fill="none" stroke="black" d="M286.84,-339.83C282.17,-376.84 271.11,-464.49 265.46,-509.29"/>
+<polygon fill="black" stroke="black" points="261.95,-509.08 264.17,-519.44 268.9,-509.96 261.95,-509.08"/>
+<text text-anchor="middle" x="283.84" y="-342.43" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- LT14&#45;&gt;Loop11 -->
+<g id="edge12" class="edge">
+<title>LT14&#45;&gt;Loop11</title>
+<path fill="none" stroke="red" d="M269.13,-334.08C251.28,-344.31 224.66,-359.59 203.06,-371.98"/>
+<polygon fill="red" stroke="red" points="201.09,-369.08 194.16,-377.09 204.57,-375.15 201.09,-369.08"/>
+<text text-anchor="middle" x="266.13" y="-336.68" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- LT14&#45;&gt;Phi_arg13 -->
+<g id="edge14" class="edge">
+<title>LT14&#45;&gt;Phi_arg13</title>
+<path fill="none" stroke="black" d="M300.54,-338.21C307.02,-346.93 315.26,-358.02 322.61,-367.91"/>
+<polygon fill="black" stroke="black" points="319.99,-370.27 328.77,-376.21 325.61,-366.09 319.99,-370.27"/>
+<text text-anchor="middle" x="297.54" y="-340.81" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- If16 -->
+<g id="node9" class="node">
+<title>If16</title>
+<polygon fill="yellow" stroke="transparent" points="205,-238.67 205,-263.67 299,-263.67 299,-238.67 205,-238.67"/>
+<polygon fill="none" stroke="black" points="205,-238.67 205,-263.67 299,-263.67 299,-238.67 205,-238.67"/>
+<text text-anchor="start" x="246.5" y="-247.47" font-family="Times,serif" font-size="14.00">If</text>
+<polygon fill="none" stroke="black" points="205,-207.67 205,-238.67 299,-238.67 299,-207.67 205,-207.67"/>
+<polygon fill="yellow" stroke="transparent" points="210,-212.67 210,-233.67 250,-233.67 250,-212.67 210,-212.67"/>
+<polygon fill="none" stroke="black" points="210,-212.67 210,-233.67 250,-233.67 250,-212.67 210,-212.67"/>
+<text text-anchor="start" x="213" y="-219.47" font-family="Times,serif" font-size="14.00">True</text>
+<polygon fill="yellow" stroke="transparent" points="250,-212.67 250,-233.67 294,-233.67 294,-212.67 250,-212.67"/>
+<polygon fill="none" stroke="black" points="250,-212.67 250,-233.67 294,-233.67 294,-212.67 250,-212.67"/>
+<text text-anchor="start" x="253" y="-219.47" font-family="Times,serif" font-size="14.00">False</text>
+</g>
+<!-- If16&#45;&gt;Loop11 -->
+<g id="edge15" class="edge">
+<title>If16&#45;&gt;Loop11</title>
+<path fill="none" stroke="red" d="M209.76,-267.98C198.76,-278.17 188.03,-290.33 181,-303.67 170.94,-322.76 167.65,-347.11 166.77,-365.52"/>
+<polygon fill="red" stroke="red" points="163.27,-365.49 166.49,-375.59 170.26,-365.69 163.27,-365.49"/>
+<text text-anchor="middle" x="206.76" y="-270.58" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- If16&#45;&gt;LT14 -->
+<g id="edge16" class="edge">
+<title>If16&#45;&gt;LT14</title>
+<path fill="none" stroke="black" d="M265.78,-267.95C269.68,-276.8 273.87,-286.34 277.62,-294.83"/>
+<polygon fill="black" stroke="black" points="274.52,-296.48 281.75,-304.22 280.92,-293.65 274.52,-296.48"/>
+<text text-anchor="middle" x="262.78" y="-270.55" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Div21 -->
+<g id="node10" class="node">
+<title>Div21</title>
+<ellipse fill="none" stroke="black" cx="43" cy="-537.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="43" y="-533.97" font-family="Times,serif" font-size="14.00">//</text>
+</g>
+<!-- Div21&#45;&gt;Start2 -->
+<g id="edge17" class="edge">
+<title>Div21&#45;&gt;Start2</title>
+<path fill="none" stroke="red" d="M60.82,-551.25C73.8,-560.41 92.1,-573.33 109.58,-585.67"/>
+<polygon fill="red" stroke="red" points="107.88,-588.75 118.07,-591.66 111.91,-583.04 107.88,-588.75"/>
+<text text-anchor="middle" x="57.82" y="-553.85" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Div21&#45;&gt;Start2 -->
+<g id="edge18" class="edge">
+<title>Div21&#45;&gt;Start2:p1</title>
+<path fill="none" stroke="black" d="M64.54,-548.87C92.71,-562.22 140.81,-585.08 160.83,-594.93"/>
+<polygon fill="black" stroke="black" points="159.51,-598.19 170,-599.67 162.72,-591.97 159.51,-598.19"/>
+<text text-anchor="middle" x="67.54" y="-551.47" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Con_22 -->
+<g id="node11" class="node">
+<title>Con_22</title>
+<ellipse fill="none" stroke="black" cx="43" cy="-623.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="43" y="-619.97" font-family="Times,serif" font-size="14.00">#3</text>
+</g>
+<!-- Div21&#45;&gt;Con_22 -->
+<g id="edge19" class="edge">
+<title>Div21&#45;&gt;Con_22</title>
+<path fill="none" stroke="black" d="M43,-556.08C43,-567.42 43,-582.45 43,-595.36"/>
+<polygon fill="black" stroke="black" points="39.5,-595.58 43,-605.58 46.5,-595.58 39.5,-595.58"/>
+<text text-anchor="middle" x="40" y="-558.68" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- EQ23 -->
+<g id="node12" class="node">
+<title>EQ23</title>
+<ellipse fill="none" stroke="black" cx="361" cy="-321.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="361" y="-317.97" font-family="Times,serif" font-size="14.00">==</text>
+</g>
+<!-- EQ23&#45;&gt;Loop11 -->
+<g id="edge20" class="edge">
+<title>EQ23&#45;&gt;Loop11</title>
+<path fill="none" stroke="red" d="M339.92,-333.3C335.08,-335.55 329.91,-337.8 325,-339.67 274.96,-358.74 257.65,-355.93 203.69,-375.71"/>
+<polygon fill="red" stroke="red" points="202.46,-372.44 194.33,-379.24 204.92,-378.99 202.46,-372.44"/>
+<text text-anchor="middle" x="336.92" y="-335.9" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- EQ23&#45;&gt;Phi_arg13 -->
+<g id="edge21" class="edge">
+<title>EQ23&#45;&gt;Phi_arg13</title>
+<path fill="none" stroke="black" d="M356.16,-339.62C353.93,-347.41 351.23,-356.85 348.74,-365.6"/>
+<polygon fill="black" stroke="black" points="345.32,-364.82 345.94,-375.4 352.05,-366.75 345.32,-364.82"/>
+<text text-anchor="middle" x="353.16" y="-342.22" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Con_24 -->
+<g id="node13" class="node">
+<title>Con_24</title>
+<ellipse fill="none" stroke="black" cx="423" cy="-393.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="423" y="-389.97" font-family="Times,serif" font-size="14.00">#5</text>
+</g>
+<!-- EQ23&#45;&gt;Con_24 -->
+<g id="edge22" class="edge">
+<title>EQ23&#45;&gt;Con_24</title>
+<path fill="none" stroke="black" d="M374.15,-337.52C382.53,-346.99 393.56,-359.44 403.02,-370.11"/>
+<polygon fill="black" stroke="black" points="400.62,-372.69 409.87,-377.85 405.86,-368.04 400.62,-372.69"/>
+<text text-anchor="middle" x="371.15" y="-340.12" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- If25 -->
+<g id="node14" class="node">
+<title>If25</title>
+<polygon fill="yellow" stroke="transparent" points="210,-138.67 210,-163.67 304,-163.67 304,-138.67 210,-138.67"/>
+<polygon fill="none" stroke="black" points="210,-138.67 210,-163.67 304,-163.67 304,-138.67 210,-138.67"/>
+<text text-anchor="start" x="251.5" y="-147.47" font-family="Times,serif" font-size="14.00">If</text>
+<polygon fill="none" stroke="black" points="210,-107.67 210,-138.67 304,-138.67 304,-107.67 210,-107.67"/>
+<polygon fill="yellow" stroke="transparent" points="215,-112.67 215,-133.67 255,-133.67 255,-112.67 215,-112.67"/>
+<polygon fill="none" stroke="black" points="215,-112.67 215,-133.67 255,-133.67 255,-112.67 215,-112.67"/>
+<text text-anchor="start" x="218" y="-119.47" font-family="Times,serif" font-size="14.00">True</text>
+<polygon fill="yellow" stroke="transparent" points="255,-112.67 255,-133.67 299,-133.67 299,-112.67 255,-112.67"/>
+<polygon fill="none" stroke="black" points="255,-112.67 255,-133.67 299,-133.67 299,-112.67 255,-112.67"/>
+<text text-anchor="start" x="258" y="-119.47" font-family="Times,serif" font-size="14.00">False</text>
+</g>
+<!-- If25&#45;&gt;If16 -->
+<g id="edge23" class="edge">
+<title>If25&#45;&gt;If16:p0</title>
+<path fill="none" stroke="red" d="M240.36,-167.91C236.06,-178.07 232.22,-189.75 230.69,-201.44"/>
+<polygon fill="red" stroke="red" points="227.18,-201.46 230,-211.67 234.17,-201.93 227.18,-201.46"/>
+<text text-anchor="middle" x="237.36" y="-170.51" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- If25&#45;&gt;EQ23 -->
+<g id="edge24" class="edge">
+<title>If25&#45;&gt;EQ23</title>
+<path fill="none" stroke="black" d="M288.6,-167.9C298.28,-178.61 308.37,-191.08 316,-203.67 333.46,-232.5 346.27,-269.27 353.66,-293.82"/>
+<polygon fill="black" stroke="black" points="350.33,-294.92 356.49,-303.54 357.05,-292.96 350.33,-294.92"/>
+<text text-anchor="middle" x="285.6" y="-170.5" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Phi_230 -->
+<g id="node15" class="node">
+<title>Phi_230</title>
+<ellipse fill="lightyellow" stroke="black" cx="89" cy="-393.67" rx="33.29" ry="18"/>
+<text text-anchor="middle" x="89" y="-389.97" font-family="Times,serif" font-size="14.00">φ_$2</text>
+</g>
+<!-- Phi_230&#45;&gt;Store10 -->
+<g id="edge26" class="edge">
+<title>Phi_230&#45;&gt;Store10</title>
+<path fill="none" stroke="blue" d="M100.36,-410.91C106.57,-419.78 114.38,-430.94 121.28,-440.78"/>
+<polygon fill="blue" stroke="blue" points="118.43,-442.82 127.03,-449.01 124.17,-438.81 118.43,-442.82"/>
+<text text-anchor="middle" x="97.36" y="-413.51" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Phi_230&#45;&gt;Loop11 -->
+<g id="edge25" class="edge">
+<title>Phi_230&#45;&gt;Loop11</title>
+<path fill="none" stroke="black" stroke-dasharray="1,5" d="M122.21,-393.67C124.67,-393.67 127.13,-393.67 129.59,-393.67"/>
+<polygon fill="black" stroke="black" points="129.71,-397.17 139.71,-393.67 129.71,-390.17 129.71,-397.17"/>
+<text text-anchor="middle" x="125.21" y="-387.27" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Phi_233 -->
+<g id="node18" class="node">
+<title>Phi_233</title>
+<ellipse fill="lightyellow" stroke="black" cx="61" cy="-49.67" rx="33.29" ry="18"/>
+<text text-anchor="middle" x="61" y="-45.97" font-family="Times,serif" font-size="14.00">φ_$2</text>
+</g>
+<!-- Store31 -->
+<g id="node16" class="node">
+<title>Store31</title>
+<ellipse fill="none" stroke="black" cx="44" cy="-321.67" rx="27.9" ry="18"/>
+<text text-anchor="middle" x="44" y="-317.97" font-family="Times,serif" font-size="14.00">.f =</text>
+</g>
+<!-- Store31&#45;&gt;new9 -->
+<g id="edge30" class="edge">
+<title>Store31&#45;&gt;new9</title>
+<path fill="none" stroke="black" d="M30,-466.67C39.91,-492.39 65.61,-510.26 88.07,-521.5"/>
+<polygon fill="black" stroke="black" points="86.58,-524.67 97.12,-525.77 89.57,-518.34 86.58,-524.67"/>
+<text text-anchor="middle" x="27" y="-460.27" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Store31&#45;&gt;Loop11 -->
+<g id="edge28" class="edge">
+<title>Store31&#45;&gt;Loop11</title>
+<path fill="none" stroke="red" d="M64.31,-334.23C82.34,-344.49 109.11,-359.73 130.8,-372.07"/>
+<polygon fill="red" stroke="red" points="129.32,-375.26 139.75,-377.16 132.79,-369.18 129.32,-375.26"/>
+<text text-anchor="middle" x="61.31" y="-336.83" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Store31&#45;&gt;Div21 -->
+<g id="edge31" class="edge">
+<title>Store31&#45;&gt;Div21</title>
+<path fill="none" stroke="black" d="M37.26,-339.26C27.22,-366.66 11.4,-422.52 30,-464.67"/>
+<path fill="none" stroke="black" d="M30,-466.67C35.26,-480.33 38.43,-496.32 40.33,-509.57"/>
+<polygon fill="black" stroke="black" points="36.86,-510.03 41.59,-519.51 43.8,-509.15 36.86,-510.03"/>
+<text text-anchor="middle" x="34.26" y="-341.86" font-family="Helvetica,sans-Serif" font-size="8.00">3</text>
+</g>
+<!-- Store31&#45;&gt;Phi_230 -->
+<g id="edge29" class="edge">
+<title>Store31&#45;&gt;Phi_230</title>
+<path fill="none" stroke="blue" d="M54.21,-338.56C59.77,-347.21 66.77,-358.1 73.04,-367.84"/>
+<polygon fill="blue" stroke="blue" points="70.17,-369.85 78.52,-376.37 76.05,-366.06 70.17,-369.85"/>
+<text text-anchor="middle" x="51.21" y="-341.16" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Region32&#45;&gt;If25 -->
+<g id="edge32" class="edge">
+<title>Region32&#45;&gt;If25:p0</title>
+<path fill="none" stroke="red" d="M235,-67.77C235,-77.22 235,-89.45 235,-101.36"/>
+<polygon fill="red" stroke="red" points="231.5,-101.67 235,-111.67 238.5,-101.67 231.5,-101.67"/>
+<text text-anchor="middle" x="232" y="-70.37" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Region32&#45;&gt;If25 -->
+<g id="edge33" class="edge">
+<title>Region32&#45;&gt;If25:p1</title>
+<path fill="none" stroke="red" d="M255.02,-67.8C263.64,-76.74 272.48,-88.51 275.71,-101.52"/>
+<polygon fill="red" stroke="red" points="272.27,-102.19 277,-111.67 279.22,-101.31 272.27,-102.19"/>
+<text text-anchor="middle" x="252.02" y="-70.4" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Phi_233&#45;&gt;Phi_230 -->
+<g id="edge36" class="edge">
+<title>Phi_233&#45;&gt;Phi_230</title>
+<path fill="none" stroke="blue" d="M63.28,-78.47C68.55,-142.92 81.57,-301.9 86.79,-365.62"/>
+<polygon fill="blue" stroke="blue" points="66.73,-77.79 62.43,-68.1 59.75,-78.36 66.73,-77.79"/>
+<polygon fill="blue" stroke="blue" points="83.3,-366 87.61,-375.69 90.28,-365.43 83.3,-366"/>
+<text text-anchor="middle" x="59.43" y="-70.7" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Phi_233&#45;&gt;Store31 -->
+<g id="edge35" class="edge">
+<title>Phi_233&#45;&gt;Store31</title>
+<path fill="none" stroke="blue" d="M59.91,-67.97C57.03,-113.69 49.21,-238 45.72,-293.4"/>
+<polygon fill="blue" stroke="blue" points="42.22,-293.32 45.08,-303.52 49.2,-293.76 42.22,-293.32"/>
+<text text-anchor="middle" x="56.91" y="-70.57" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Phi_233&#45;&gt;Region32 -->
+<g id="edge34" class="edge">
+<title>Phi_233&#45;&gt;Region32</title>
+<path fill="none" stroke="black" stroke-dasharray="1,5" d="M77.36,-33.99C89.26,-23.73 106.31,-11.24 124,-5.67 146.89,1.53 155.28,2.07 178,-5.67 189.71,-9.67 200.89,-17.16 210.2,-24.83"/>
+<polygon fill="black" stroke="black" points="208.03,-27.59 217.86,-31.55 212.65,-22.33 208.03,-27.59"/>
+<text text-anchor="middle" x="74.36" y="-27.59" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Sub35&#45;&gt;Loop11 -->
+<g id="edge37" class="edge">
+<title>Sub35&#45;&gt;Loop11</title>
+<path fill="none" stroke="red" d="M205.9,-338.21C199.85,-346.68 192.2,-357.39 185.3,-367.06"/>
+<polygon fill="red" stroke="red" points="182.44,-365.04 179.47,-375.21 188.13,-369.11 182.44,-365.04"/>
+<text text-anchor="middle" x="202.9" y="-340.81" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Sub35&#45;&gt;Phi_arg13 -->
+<g id="edge38" class="edge">
+<title>Sub35&#45;&gt;Phi_arg13</title>
+<path fill="none" stroke="black" d="M245.77,-338.92C264.66,-349.58 289.38,-363.54 308.91,-374.56"/>
+<polygon fill="black" stroke="black" points="247.35,-335.79 236.92,-333.92 243.91,-341.89 247.35,-335.79"/>
+<polygon fill="black" stroke="black" points="307.32,-377.68 317.75,-379.55 310.76,-371.58 307.32,-377.68"/>
+<text text-anchor="middle" x="233.92" y="-336.52" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Con_36 -->
+<g id="node20" class="node">
+<title>Con_36</title>
+<ellipse fill="none" stroke="black" cx="239" cy="-393.67" rx="27" ry="18"/>
+<text text-anchor="middle" x="239" y="-389.97" font-family="Times,serif" font-size="14.00">#1</text>
+</g>
+<!-- Sub35&#45;&gt;Con_36 -->
+<g id="edge39" class="edge">
+<title>Sub35&#45;&gt;Con_36</title>
+<path fill="none" stroke="black" d="M222.33,-339.62C224.84,-347.62 227.9,-357.34 230.7,-366.27"/>
+<polygon fill="black" stroke="black" points="227.39,-367.39 233.72,-375.89 234.06,-365.3 227.39,-367.39"/>
+<text text-anchor="middle" x="219.33" y="-342.22" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+<!-- Return37&#45;&gt;new9 -->
+<g id="edge41" class="edge">
+<title>Return37&#45;&gt;new9</title>
+<path fill="none" stroke="black" d="M152.88,-153.84C154.6,-173.54 156.18,-206.74 151,-234.67"/>
+<path fill="none" stroke="black" d="M151,-236.67C140.92,-291.1 115.67,-296.53 81,-339.67 67.22,-356.83 55.13,-355.22 47,-375.67 26.8,-426.48 71.69,-483.13 102.06,-513.85"/>
+<polygon fill="black" stroke="black" points="99.83,-516.56 109.42,-521.08 104.74,-511.57 99.83,-516.56"/>
+<text text-anchor="middle" x="149.88" y="-156.44" font-family="Helvetica,sans-Serif" font-size="8.00">1</text>
+</g>
+<!-- Return37&#45;&gt;If16 -->
+<g id="edge40" class="edge">
+<title>Return37&#45;&gt;If16:p1</title>
+<path fill="none" stroke="red" d="M173.3,-153.95C179.56,-158.57 186.45,-163.46 193,-167.67 223.49,-187.31 263.28,-174.61 270.76,-201.47"/>
+<polygon fill="red" stroke="red" points="267.32,-202.17 272,-211.67 274.27,-201.33 267.32,-202.17"/>
+<text text-anchor="middle" x="170.3" y="-156.55" font-family="Helvetica,sans-Serif" font-size="8.00">0</text>
+</g>
+<!-- Return37&#45;&gt;Phi_230 -->
+<g id="edge42" class="edge">
+<title>Return37&#45;&gt;Phi_230</title>
+<path fill="none" stroke="blue" d="M151,-236.67C145.42,-285.27 120.51,-337.2 104.01,-367.2"/>
+<polygon fill="blue" stroke="blue" points="100.84,-365.71 98.99,-376.14 106.94,-369.14 100.84,-365.71"/>
+<text text-anchor="middle" x="148" y="-230.27" font-family="Helvetica,sans-Serif" font-size="8.00">2</text>
+</g>
+</g>
+</svg>