diff options
Diffstat (limited to 'docs/2026_REBASE/assets')
| -rw-r--r-- | docs/2026_REBASE/assets/memory-final.json | 198 | ||||
| -rw-r--r-- | docs/2026_REBASE/assets/memory-final.svg | 136 |
2 files changed, 133 insertions, 201 deletions
diff --git a/docs/2026_REBASE/assets/memory-final.json b/docs/2026_REBASE/assets/memory-final.json index e2f378ed..3900b426 100644 --- a/docs/2026_REBASE/assets/memory-final.json +++ b/docs/2026_REBASE/assets/memory-final.json @@ -1,7 +1,7 @@ { "ver": 1, "comp": "rebase-memory", - "step": 318, + "step": 332, "roots": [ 2, 3 @@ -990,45 +990,6 @@ "proj": null }, { - "id": 94, - "label": "st_sum", - "type": "MEM#2:Bot", - "kind": "MEM", - "edges": [ - { - "idx": 0, - "def": 0, - "role": "CTRL", - "label": null - }, - { - "idx": 1, - "def": 104, - "role": "MEM", - "label": null - }, - { - "idx": 2, - "def": 15, - "role": "DATA", - "label": null - }, - { - "idx": 3, - "def": 4, - "role": "DATA", - "label": null - }, - { - "idx": 4, - "def": 88, - "role": "DATA", - "label": null - } - ], - "proj": null - }, - { "id": 99, "label": "Add", "type": "int", @@ -1042,7 +1003,7 @@ }, { "idx": 1, - "def": 138, + "def": 141, "role": "DATA", "label": null }, @@ -1056,45 +1017,6 @@ "proj": null }, { - "id": 100, - "label": "st_visits", - "type": "MEM#3:Bot", - "kind": "MEM", - "edges": [ - { - "idx": 0, - "def": 0, - "role": "CTRL", - "label": null - }, - { - "idx": 1, - "def": 132, - "role": "MEM", - "label": null - }, - { - "idx": 2, - "def": 15, - "role": "DATA", - "label": null - }, - { - "idx": 3, - "def": 51, - "role": "DATA", - "label": null - }, - { - "idx": 4, - "def": 99, - "role": "DATA", - "label": null - } - ], - "proj": null - }, - { "id": 103, "label": "Add", "type": "int", @@ -1122,33 +1044,6 @@ "proj": null }, { - "id": 104, - "label": "MemPhi_2", - "type": "MEM#2:Bot", - "kind": "PHI", - "edges": [ - { - "idx": 0, - "def": 65, - "role": "ASSOC", - "label": null - }, - { - "idx": 1, - "def": 16, - "role": "MEM", - "label": null - }, - { - "idx": 2, - "def": 94, - "role": "MEM", - "label": null - } - ], - "proj": null - }, - { "id": 106, "label": "MemMerge", "type": "MemBot", @@ -1168,13 +1063,13 @@ }, { "idx": 2, - "def": 104, + "def": 146, "role": "MEM", "label": null }, { "idx": 3, - "def": 132, + "def": 142, "role": "MEM", "label": null }, @@ -1207,7 +1102,7 @@ }, { "idx": 1, - "def": 138, + "def": 141, "role": "DATA", "label": null }, @@ -1302,9 +1197,9 @@ "proj": null }, { - "id": 132, - "label": "MemPhi_3", - "type": "MEM#3:Bot", + "id": 141, + "label": "Phi_visits", + "type": "int", "kind": "PHI", "edges": [ { @@ -1315,40 +1210,91 @@ }, { "idx": 1, + "def": 4, + "role": "DATA", + "label": null + }, + { + "idx": 2, + "def": 99, + "role": "DATA", + "label": null + } + ], + "proj": null + }, + { + "id": 142, + "label": "st_visits", + "type": "MEM#3:int", + "kind": "MEM", + "edges": [ + { + "idx": 0, + "def": 0, + "role": "CTRL", + "label": null + }, + { + "idx": 1, "def": 16, "role": "MEM", "label": null }, { "idx": 2, - "def": 100, - "role": "MEM", + "def": 15, + "role": "DATA", + "label": null + }, + { + "idx": 3, + "def": 51, + "role": "DATA", + "label": null + }, + { + "idx": 4, + "def": 141, + "role": "DATA", "label": null } ], "proj": null }, { - "id": 138, - "label": "Phi_visits", - "type": "int", - "kind": "PHI", + "id": 146, + "label": "st_sum", + "type": "MEM#2:int", + "kind": "MEM", "edges": [ { "idx": 0, - "def": 65, - "role": "ASSOC", + "def": 0, + "role": "CTRL", "label": null }, { "idx": 1, + "def": 16, + "role": "MEM", + "label": null + }, + { + "idx": 2, + "def": 15, + "role": "DATA", + "label": null + }, + { + "idx": 3, "def": 4, "role": "DATA", "label": null }, { - "idx": 2, - "def": 99, + "idx": 4, + "def": 131, "role": "DATA", "label": null } @@ -1389,15 +1335,11 @@ 91, 92, 93, - 94, 99, - 100, 103, - 104, 112, 131, - 132, - 138 + 141 ] } ] diff --git a/docs/2026_REBASE/assets/memory-final.svg b/docs/2026_REBASE/assets/memory-final.svg index 205fea1b..47daa792 100644 --- a/docs/2026_REBASE/assets/memory-final.svg +++ b/docs/2026_REBASE/assets/memory-final.svg @@ -1,4 +1,4 @@ -<svg aria-label="Compiler graph" width="2263" height="2332" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2263 2332" style="font-family: sans-serif;"><style> +<svg aria-label="Compiler graph" width="1799" height="2202" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1799 2202" style="font-family: sans-serif;"><style> html, body { height:100%; margin:0; font-family:sans-serif; } .viewer { height:100%; display:grid; grid-template-rows:auto minmax(0,1fr) auto; } .source { padding:8px; border-bottom:1px solid #ccc; } @@ -60,18 +60,18 @@ .count { font-size:20px; min-width:35px; text-align:center; } #N { width:6ch; } #scrub { width:clamp(120px,35vw,600px); } - </style><defs><marker id="arrow-CTRL" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#b63838"/></marker><marker id="arrow-DATA" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#536477"/></marker><marker id="arrow-MEM" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#2867b2"/></marker><marker id="arrow-ASSOC" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#9396a3"/></marker><marker id="arrow-PARSER" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#7956a5"/></marker></defs><rect width="100%" height="100%" fill="rgb(250, 251, 252)"/><g><g class="regions" style="opacity: 1;"><g class="region" transform="translate(610,473)"><rect class="region-box" rx="8" width="836" height="556" fill="#f1f6fc"/></g><g class="region" transform="translate(658,1149)"><rect class="region-box" rx="8" width="1559" height="872" fill="#f1f6fc"/></g></g><rect class="peep-area" rx="36" style="opacity: 0;"/><g class="edges"><path class="edge CTRL" id="e3i0" d="M945,2231 C945,2255 1131.5,2258 1131.5,2282" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#3[0] → #115 · CTRL</title></path><path class="edge ASSOC" id="e4i0" d="M1017,52 C1017,76 492,151 492,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#4[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e5i0" d="M1017,52 C1017,76 562,25 562,49" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e12i0" d="M1017,52 C1017,76 340,151 340,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[0] → #2 · ASSOC</title></path><path class="edge MEM" id="e13i2" d="M834,124 L834,136 Q834,144 826,144 L208,144 Q200,144 200,152 L200,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#13[2] → #7 · MEM</title></path><path class="edge MEM" id="e13i3" d="M834,124 L834,136 Q834,144 826,144 L232,144 Q224,144 224,152 L224,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#13[3] → #7 · MEM</title></path><path class="edge CTRL" id="e14i0" d="M714,124 L714,146 Q714,154 706,154 L125,154 Q117,154 117,162 L117,288" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#14[0] → #6 · CTRL</title></path><path class="edge MEM" id="e14i1" d="M188,228 L188,270 Q188,278 180,278 L171,278 Q166,278 166,283 L166,288" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#14[1] → #13 · MEM</title></path><path class="edge DATA" id="e14i2" d="M340,228 L340,233 Q340,238 335,238 L223,238 Q215,238 215,246 L215,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[2] → #12 · DATA</title></path><path class="edge DATA" id="e14i3" d="M492,228 L492,260 Q492,268 484,268 L271,268 Q263,268 263,276 L263,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[3] → #4 · DATA</title></path><path class="edge DATA" id="e14i4" d="M492,228 L492,260 Q492,268 484,268 L320,268 Q312,268 312,276 L312,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[4] → #4 · DATA</title></path><path class="edge ASSOC" id="e18i0" d="M1017,52 C1017,76 644,151 644,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#18[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e24i0" d="M1017,52 C1017,76 976,151 976,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#24[0] → #2 · ASSOC</title></path><path class="edge MEM" id="e26i4" d="M834,124 L834,137 Q834,144 841,144 L841,144 Q848,144 848,151 L848,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#26[4] → #7 · MEM</title></path><path class="edge MEM" id="e26i5" d="M834,124 L834,136 Q834,144 842,144 L858,144 Q866,144 866,152 L866,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#26[5] → #7 · MEM</title></path><path class="edge CTRL" id="e27i0" d="M714,124 L714,146 Q714,154 722,154 L739,154 Q747,154 747,162 L747,250 Q747,258 755,258 L779,258 Q787,258 787,266 L787,288" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#27[0] → #6 · CTRL</title></path><path class="edge MEM" id="e27i1" d="M821,228 L821,254.5 Q821,258 824.5,258 L824.5,258 Q828,258 828,261.5 L828,288" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#27[1] → #26 · MEM</title></path><path class="edge DATA" id="e27i2" d="M976,228 L976,250 Q976,258 968,258 L876,258 Q868,258 868,266 L868,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[2] → #24 · DATA</title></path><path class="edge DATA" id="e27i3" d="M644,228 L644,240 Q644,248 652,248 L900,248 Q908,248 908,256 L908,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[3] → #18 · DATA</title></path><path class="edge DATA" id="e27i4" d="M492,228 L492,260 Q492,268 500,268 L941,268 Q949,268 949,276 L949,288" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[4] → #4 · DATA</title></path><path class="edge CTRL" id="e32i1" d="M714,124 L714,561" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#32[1] → #6 · CTRL</title></path><path class="edge CTRL" id="e32i2" d="M694,878 L694,883 Q694,888 699,888 L1426,888 Q1434,888 1434,880 L1434,544 Q1434,536 1426,536 L752,536 Q744,536 744,544 L744,564" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#32[2] → #41 · CTRL</title></path><path class="edge DATA" id="e34i1" d="M492,228 L492,260 Q492,268 500,268 L717,268 Q725,268 725,276 L725,450 Q725,458 733,458 L838,458 Q846,458 846,466 L846,561" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#34[1] → #4 · DATA</title></path><path class="edge DATA" id="e34i2" d="M785,730 L785,735 Q785,740 790,740 L1416,740 Q1424,740 1424,732 L1424,552 Q1424,544 1416,544 L894,544 Q886,544 886,552 L886,564" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#34[2] → #60 · DATA</title></path><path class="edge DATA" id="e35i1" d="M866,617 L866,659 Q866,667 874,667 L920,667 Q925,667 925,672 L925,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#35[1] → #34 · DATA</title></path><path class="edge DATA" id="e35i2" d="M644,228 L644,240 Q644,248 636,248 L581,248 Q573,248 573,256 L573,420 Q573,428 581,428 L635,428 Q643,428 643,436 L643,619 Q643,627 651,627 L947,627 Q955,627 955,635 L955,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#35[2] → #18 · DATA</title></path><path class="edge CTRL" id="e40i0" d="M714,617 L714,781" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#40[0] → #32 · CTRL</title></path><path class="edge DATA" id="e40i1" d="M925,733 L925,745 Q925,753 917,753 L802,753 Q794,753 794,761 L794,781" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#40[1] → #35 · DATA</title></path><path class="edge ASSOC" id="e46i0" d="M1017,52 C1017,76 644,311 644,335" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#46[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e51i0" d="M1017,52 C1017,76 1980,311 1980,335" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#51[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e52i0" d="M1017,52 C1017,76 1828,311 1828,335" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#52[0] → #2 · ASSOC</title></path><path class="edge DATA" id="e53i1" d="M866,617 L866,659 Q866,667 874,667 L1164,667 Q1169,667 1169,672 L1169,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#53[1] → #34 · DATA</title></path><path class="edge DATA" id="e53i2" d="M1828,388 L1828,430 Q1828,438 1820,438 L1207,438 Q1199,438 1199,446 L1199,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#53[2] → #52 · DATA</title></path><path class="edge DATA" id="e54i1" d="M1169,733 L1169,795.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#54[1] → #53 · DATA</title></path><path class="edge DATA" id="e54i2" d="M1980,388 L1980,450 Q1980,458 1972,458 L1247,458 Q1239,458 1239,466 L1239,735 Q1239,743 1231,743 L1207,743 Q1199,743 1199,751 L1199,795.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#54[2] → #51 · DATA</title></path><path class="edge DATA" id="e56i1" d="M866,617 L866,659 Q866,667 874,667 L1313,667 Q1321,667 1321,675 L1321,795.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#56[1] → #34 · DATA</title></path><path class="edge DATA" id="e56i2" d="M954,124 L954,129 Q954,134 949,134 L744,134 Q736,134 736,142 L736,440 Q736,448 744,448 L1343,448 Q1351,448 1351,456 L1351,795.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#56[2] → #8 · DATA</title></path><path class="edge CTRL" id="e57i0" d="M694,881 L694,886 Q694,891 699,891 L848,891 Q856,891 856,899 L856,941" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#57[0] → #41 · CTRL</title></path><path class="edge MEM" id="e57i1" d="M1018,617 L1018,649 Q1018,657 1026,657 L1079,657 Q1087,657 1087,665 L1087,893 Q1087,901 1079,901 L884,901 Q876,901 876,909 L876,941" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#57[1] → #124 · MEM</title></path><path class="edge DATA" id="e57i2" d="M808,388 L808,420 Q808,428 816,428 L1090,428 Q1098,428 1098,436 L1098,903 Q1098,911 1090,911 L904,911 Q896,911 896,919 L896,941" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[2] → #28 · DATA</title></path><path class="edge DATA" id="e57i3" d="M1169,851.6666666666667 L1169,913 Q1169,921 1161,921 L924,921 Q916,921 916,929 L916,941" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[3] → #54 · DATA</title></path><path class="edge DATA" id="e57i4" d="M1321,851.6666666666667 L1321,923 Q1321,931 1313,931 L941,931 Q936,931 936,936 L936,941" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[4] → #56 · DATA</title></path><path class="edge DATA" id="e60i1" d="M866,617 L866,659 Q866,667 858,667 L790,667 Q785,667 785,672 L785,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#60[1] → #34 · DATA</title></path><path class="edge DATA" id="e60i2" d="M644,388 L644,410 Q644,418 636,418 L630,418 Q622,418 622,426 L622,639 Q622,647 630,647 L807,647 Q815,647 815,655 L815,677" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#60[2] → #46 · DATA</title></path><path class="edge CTRL" id="e65i1" d="M814,881 L814,1281" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#65[1] → #42 · CTRL</title></path><path class="edge CTRL" id="e65i2" d="M794,1660 L794,1665 Q794,1670 799,1670 L2197,1670 Q2205,1670 2205,1662 L2205,1240 Q2205,1232 2197,1232 L852,1232 Q844,1232 844,1240 L844,1284" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#65[2] → #74 · CTRL</title></path><path class="edge DATA" id="e67i1" d="M492,228 L492,260 Q492,268 484,268 L65,268 Q57,268 57,276 L57,430 Q57,438 65,438 L71,438 Q79,438 79,446 L79,1086 Q79,1094 87,1094 L938,1094 Q946,1094 946,1102 L946,1281" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#67[1] → #4 · DATA</title></path><path class="edge DATA" id="e67i2" d="M1048,1510 L1048,1515 Q1048,1520 1053,1520 L2187,1520 Q2195,1520 2195,1512 L2195,1248 Q2195,1240 2187,1240 L994,1240 Q986,1240 986,1248 L986,1284" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#67[2] → #103 · DATA</title></path><path class="edge DATA" id="e68i1" d="M966,1337 L966,1359 Q966,1367 958,1367 L893,1367 Q885,1367 885,1375 L885,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#68[1] → #67 · DATA</title></path><path class="edge DATA" id="e68i2" d="M644,228 L644,240 Q644,248 636,248 L54,248 Q46,248 46,256 L46,1116 Q46,1124 54,1124 L683,1124 Q691,1124 691,1132 L691,1419 Q691,1427 699,1427 L907,1427 Q915,1427 915,1435 L915,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#68[2] → #18 · DATA</title></path><path class="edge CTRL" id="e73i0" d="M814,1337 L814,1563" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#73[0] → #65 · CTRL</title></path><path class="edge DATA" id="e73i1" d="M885,1513 L885,1518.5 Q885,1523 889.5,1523 L889.5,1523 Q894,1523 894,1527.5 L894,1563" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#73[1] → #68 · DATA</title></path><path class="edge DATA" id="e88i1" d="M1270,1337 L1270,1409 Q1270,1417 1262,1417 L985,1417 Q977,1417 977,1425 L977,1515 Q977,1523 985,1523 L1004,1523 Q1012,1523 1012,1531 L1012,1695 Q1012,1703 1004,1703 L977,1703 Q969,1703 969,1711 L969,1781 Q969,1789 977,1789 L1020,1789 Q1028,1789 1028,1797 L1028,1827" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#88[1] → #131 · DATA</title></path><path class="edge DATA" id="e88i2" d="M1040,1779 L1040,1784 Q1040,1789 1045,1789 L1050,1789 Q1058,1789 1058,1797 L1058,1827" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#88[2] → #93 · DATA</title></path><path class="edge DATA" id="e91i1" d="M966,1337 L966,1359 Q966,1367 974,1367 L1902,1367 Q1910,1367 1910,1375 L1910,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#91[1] → #67 · DATA</title></path><path class="edge DATA" id="e91i2" d="M1828,388 L1828,430 Q1828,438 1836,438 L1932,438 Q1940,438 1940,446 L1940,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#91[2] → #52 · DATA</title></path><path class="edge DATA" id="e92i1" d="M1910,1513 L1910,1577.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#92[1] → #91 · DATA</title></path><path class="edge DATA" id="e92i2" d="M1980,388 L1980,1515 Q1980,1523 1972,1523 L1948,1523 Q1940,1523 1940,1531 L1940,1577.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#92[2] → #51 · DATA</title></path><path class="edge CTRL" id="e93i0" d="M794,1663 L794,1685 Q794,1693 802,1693 L996,1693 Q1004,1693 1004,1701 L1004,1723" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#93[0] → #74 · CTRL</title></path><path class="edge MEM" id="e93i1" d="M1018,617 L1018,649 Q1018,657 1010,657 L631,657 Q623,657 623,665 L623,893 Q623,901 631,901 L817,901 Q825,901 825,909 L825,1036 Q825,1044 833,1044 L1636,1044 Q1644,1044 1644,1052 L1644,1341.5 Q1644,1347 1638.5,1347 L1638.5,1347 Q1633,1347 1633,1352.5 L1633,1675 Q1633,1683 1625,1683 L1036,1683 Q1028,1683 1028,1691 L1028,1723" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#93[1] → #124 · MEM</title></path><path class="edge DATA" id="e93i2" d="M808,388 L808,420 Q808,428 816,428 L1647,428 Q1655,428 1655,436 L1655,1351.5 Q1655,1357 1649.5,1357 L1649.5,1357 Q1644,1357 1644,1362.5 L1644,1685 Q1644,1693 1636,1693 L1060,1693 Q1052,1693 1052,1701 L1052,1723" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#93[2] → #28 · DATA</title></path><path class="edge DATA" id="e93i3" d="M1910,1633.6666666666667 L1910,1695 Q1910,1703 1902,1703 L1084,1703 Q1076,1703 1076,1711 L1076,1723" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#93[3] → #92 · DATA</title></path><path class="edge MEM" id="e94i1" d="M1118,1337 L1118,1379 Q1118,1387 1110,1387 L710,1387 Q702,1387 702,1395 L702,1705 Q702,1713 710,1713 L917,1713 Q925,1713 925,1721 L925,1915 Q925,1923 933,1923 L971,1923 Q976,1923 976,1928 L976,1933" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#94[1] → #104 · MEM</title></path><path class="edge DATA" id="e94i2" d="M155,388 L155,400 Q155,408 147,408 L43,408 Q35,408 35,416 L35,1126 Q35,1134 43,1134 L662,1134 Q670,1134 670,1142 L670,1439 Q670,1447 678,1447 L705,1447 Q713,1447 713,1455 L713,1695 Q713,1703 721,1703 L928,1703 Q936,1703 936,1711 L936,1905 Q936,1913 944,1913 L988,1913 Q996,1913 996,1921 L996,1933" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#94[2] → #15 · DATA</title></path><path class="edge DATA" id="e94i3" d="M492,228 L492,260 Q492,268 484,268 L65,268 Q57,268 57,276 L57,1106 Q57,1114 65,1114 L694,1114 Q702,1114 702,1122 L702,1369 Q702,1377 710,1377 L947,1377 Q955,1377 955,1385 L955,1535 Q955,1543 963,1543 L982,1543 Q990,1543 990,1551 L990,1665 Q990,1673 982,1673 L955,1673 Q947,1673 947,1681 L947,1895 Q947,1903 955,1903 L1008,1903 Q1016,1903 1016,1911 L1016,1933" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#94[3] → #4 · DATA</title></path><path class="edge DATA" id="e94i4" d="M1028,1883 L1028,1889 Q1028,1893 1032,1893 L1032,1893 Q1036,1893 1036,1897 L1036,1933" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#94[4] → #88 · DATA</title></path><path class="edge DATA" id="e99i1" d="M1574,1337 L1574,1419 Q1574,1427 1582,1427 L1750,1427 Q1758,1427 1758,1435 L1758,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#99[1] → #138 · DATA</title></path><path class="edge DATA" id="e99i2" d="M644,388 L644,410 Q644,418 652,418 L1780,418 Q1788,418 1788,426 L1788,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#99[2] → #46 · DATA</title></path><path class="edge MEM" id="e100i1" d="M1422,1337 L1422,1429 Q1422,1437 1430,1437 L1647,1437 Q1655,1437 1655,1445 L1655,1545 Q1655,1553 1663,1553 L1690,1553 Q1695,1553 1695,1558 L1695,1563" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#100[1] → #132 · MEM</title></path><path class="edge DATA" id="e100i2" d="M155,388 L155,400 Q155,408 163,408 L1658,408 Q1666,408 1666,416 L1666,1535 Q1666,1543 1674,1543 L1707,1543 Q1715,1543 1715,1551 L1715,1563" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#100[2] → #15 · DATA</title></path><path class="edge DATA" id="e100i3" d="M1980,388 L1980,450 Q1980,458 1972,458 L1685,458 Q1677,458 1677,466 L1677,1525 Q1677,1533 1685,1533 L1727,1533 Q1735,1533 1735,1541 L1735,1563" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#100[3] → #51 · DATA</title></path><path class="edge DATA" id="e100i4" d="M1758,1513 L1758,1521.5 Q1758,1523 1756.5,1523 L1756.5,1523 Q1755,1523 1755,1524.5 L1755,1563" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#100[4] → #99 · DATA</title></path><path class="edge DATA" id="e103i1" d="M966,1337 L966,1359 Q966,1367 974,1367 L1040,1367 Q1048,1367 1048,1375 L1048,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#103[1] → #67 · DATA</title></path><path class="edge DATA" id="e103i2" d="M644,388 L644,410 Q644,418 636,418 L76,418 Q68,418 68,426 L68,1096 Q68,1104 76,1104 L715,1104 Q723,1104 723,1112 L723,1399 Q723,1407 731,1407 L1070,1407 Q1078,1407 1078,1415 L1078,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#103[2] → #46 · DATA</title></path><path class="edge MEM" id="e104i1" d="M301,388 L301,420 Q301,428 293,428 L98,428 Q90,428 90,436 L90,1076 Q90,1084 98,1084 L1090,1084 Q1098,1084 1098,1092 L1098,1281" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#104[1] → #16 · MEM</title></path><path class="edge MEM" id="e104i2" d="M996,1986 L996,1991 Q996,1996 1001,1996 L2177,1996 Q2185,1996 2185,1988 L2185,1256 Q2185,1248 2177,1248 L1146,1248 Q1138,1248 1138,1256 L1138,1284" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#104[2] → #94 · MEM</title></path><path class="edge MEM" id="e106i1" d="M834,124 L834,136 Q834,144 826,144 L32,144 Q24,144 24,152 L24,2038 Q24,2046 32,2046 L1947,2046 Q1955,2046 1955,2054 L1955,2074" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[1] → #7 · MEM</title></path><path class="edge MEM" id="e106i2" d="M1118,1337 L1118,1379 Q1118,1387 1110,1387 L710,1387 Q702,1387 702,1395 L702,1705 Q702,1713 710,1713 L917,1713 Q925,1713 925,1721 L925,2028 Q925,2036 933,2036 L1965,2036 Q1973,2036 1973,2044 L1973,2074" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[2] → #104 · MEM</title></path><path class="edge MEM" id="e106i3" d="M1422,1337 L1422,1429 Q1422,1437 1430,1437 L1983,1437 Q1991,1437 1991,1445 L1991,2074" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[3] → #132 · MEM</title></path><path class="edge MEM" id="e106i4" d="M929,388 L929,393 Q929,398 934,398 L2219,398 Q2227,398 2227,406 L2227,2028 Q2227,2036 2219,2036 L2017,2036 Q2009,2036 2009,2044 L2009,2074" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[4] → #29 · MEM</title></path><path class="edge MEM" id="e106i5" d="M1018,617 L1018,649 Q1018,657 1010,657 L631,657 Q623,657 623,665 L623,893 Q623,901 631,901 L817,901 Q825,901 825,909 L825,1036 Q825,1044 833,1044 L2230,1044 Q2238,1044 2238,1052 L2238,2038 Q2238,2046 2230,2046 L2035,2046 Q2027,2046 2027,2054 L2027,2074" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[5] → #124 · MEM</title></path><path class="edge DATA" id="e112i1" d="M1574,1337 L1574,1419 Q1574,1427 1582,1427 L2065,1427 Q2073,1427 2073,1435 L2073,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#112[1] → #138 · DATA</title></path><path class="edge DATA" id="e112i2" d="M1270,1337 L1270,1409 Q1270,1417 1278,1417 L2095,1417 Q2103,1417 2103,1425 L2103,1457" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#112[2] → #131 · DATA</title></path><path class="edge CTRL" id="e115i0" d="M914,1663 L914,2178" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#115[0] → #75 · CTRL</title></path><path class="edge MEM" id="e115i1" d="M1982,2130 L1982,2135 Q1982,2140 1977,2140 L953,2140 Q945,2140 945,2148 L945,2178" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#115[1] → #106 · MEM</title></path><path class="edge DATA" id="e115i2" d="M2073,1513 L2073,2142 Q2073,2150 2065,2150 L984,2150 Q976,2150 976,2158 L976,2178" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#115[2] → #112 · DATA</title></path><path class="edge MEM" id="e124i1" d="M929,388 L929,393 Q929,398 934,398 L990,398 Q998,398 998,406 L998,561" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#124[1] → #29 · MEM</title></path><path class="edge MEM" id="e124i2" d="M896,994 L896,999 Q896,1004 901,1004 L1406,1004 Q1414,1004 1414,996 L1414,560 Q1414,552 1406,552 L1044,552 Q1038,552 1038,558 L1038,564" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#124[2] → #57 · MEM</title></path><path class="edge DATA" id="e131i1" d="M492,228 L492,260 Q492,268 484,268 L65,268 Q57,268 57,276 L57,430 Q57,438 65,438 L93,438 Q101,438 101,446 L101,1066 Q101,1074 109,1074 L1242,1074 Q1250,1074 1250,1082 L1250,1281" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#131[1] → #4 · DATA</title></path><path class="edge DATA" id="e131i2" d="M1028,1880 L1028,1885 Q1028,1890 1033,1890 L2167,1890 Q2175,1890 2175,1882 L2175,1264 Q2175,1256 2167,1256 L1298,1256 Q1290,1256 1290,1264 L1290,1284" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#131[2] → #88 · DATA</title></path><path class="edge MEM" id="e132i1" d="M301,388 L301,420 Q301,428 309,428 L473,428 Q481,428 481,436 L481,1056 Q481,1064 489,1064 L1394,1064 Q1402,1064 1402,1072 L1402,1281" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#132[1] → #16 · MEM</title></path><path class="edge MEM" id="e132i2" d="M1715,1616 L1715,1621 Q1715,1626 1720,1626 L1837.1666666666665,1626 Q1842,1626 1842,1630.8333333333335 L1842,1630.8333333333335 Q1842,1635.6666666666667 1846.8333333333335,1635.6666666666667 L2157,1635.6666666666667 Q2165,1635.6666666666667 2165,1627.6666666666667 L2165,1272 Q2165,1264 2157,1264 L1450,1264 Q1442,1264 1442,1272 L1442,1284" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#132[2] → #100 · MEM</title></path><path class="edge DATA" id="e138i1" d="M492,228 L492,1046 Q492,1054 500,1054 L1546,1054 Q1554,1054 1554,1062 L1554,1281" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#138[1] → #4 · DATA</title></path><path class="edge DATA" id="e138i2" d="M1758,1510 L1758,1515 Q1758,1520 1763,1520 L2147,1520 Q2155,1520 2155,1512 L2155,1280 Q2155,1272 2147,1272 L1600,1272 Q1594,1272 1594,1278 L1594,1284" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#138[2] → #99 · DATA</title></path></g><g class="edge-hits"/><g class="parser" style="opacity: 1;"/><g class="nodes"><g class="node" id="n2" data-id="2" transform="translate(654,30)" style="opacity: 1;"><path class="box" d="M0,0H360V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="180" y="18"><tspan>Start</tspan><tspan class="node-id"> #2</tspan></text><text class="type" text-anchor="middle" y="35" x="180">[ Ctrl, MemBot, int]</text><title>#2 Start + </style><defs><marker id="arrow-CTRL" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#b63838"/></marker><marker id="arrow-DATA" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#536477"/></marker><marker id="arrow-MEM" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#2867b2"/></marker><marker id="arrow-ASSOC" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#9396a3"/></marker><marker id="arrow-PARSER" viewBox="0 -4 8 8" refX="8" refY="0" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0,-4L8,0L0,4Z" fill="#7956a5"/></marker></defs><rect width="100%" height="100%" fill="rgb(250, 251, 252)"/><g><g class="regions" style="opacity: 1;"><g class="region" transform="translate(600,463)"><rect class="region-box" rx="8" width="836" height="546" fill="#f1f6fc"/></g><g class="region" transform="translate(650,1069)"><rect class="region-box" rx="8" width="1070" height="676" fill="#f1f6fc"/></g></g><rect class="peep-area" rx="36" style="opacity: 0;"/><g class="edges"><path class="edge CTRL" id="e3i0" d="M945,2101 C945,2125 899.5,2128 899.5,2152" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#3[0] → #115 · CTRL</title></path><path class="edge ASSOC" id="e4i0" d="M1017,52 C1017,76 492,151 492,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#4[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e5i0" d="M1017,52 C1017,76 1112,25 1112,49" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#5[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e12i0" d="M1017,52 C1017,76 340,151 340,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#12[0] → #2 · ASSOC</title></path><path class="edge MEM" id="e13i2" d="M834,124 L834,136 Q834,144 826,144 L208,144 Q200,144 200,152 L200,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#13[2] → #7 · MEM</title></path><path class="edge MEM" id="e13i3" d="M834,124 L834,136 Q834,144 826,144 L232,144 Q224,144 224,152 L224,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#13[3] → #7 · MEM</title></path><path class="edge CTRL" id="e14i0" d="M714,124 L714,129 Q714,134 709,134 L125,134 Q117,134 117,142 L117,298" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#14[0] → #6 · CTRL</title></path><path class="edge MEM" id="e14i1" d="M188,228 L188,280 Q188,288 180,288 L171,288 Q166,288 166,293 L166,298" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#14[1] → #13 · MEM</title></path><path class="edge DATA" id="e14i2" d="M340,228 L340,233 Q340,238 335,238 L223,238 Q215,238 215,246 L215,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[2] → #12 · DATA</title></path><path class="edge DATA" id="e14i3" d="M492,228 L492,270 Q492,278 484,278 L271,278 Q263,278 263,286 L263,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[3] → #4 · DATA</title></path><path class="edge DATA" id="e14i4" d="M492,228 L492,270 Q492,278 484,278 L320,278 Q312,278 312,286 L312,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#14[4] → #4 · DATA</title></path><path class="edge ASSOC" id="e18i0" d="M1017,52 C1017,76 644,151 644,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#18[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e24i0" d="M1017,52 C1017,76 1009,151 1009,175" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#24[0] → #2 · ASSOC</title></path><path class="edge MEM" id="e26i4" d="M834,124 L834,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#26[4] → #7 · MEM</title></path><path class="edge MEM" id="e26i5" d="M834,124 L834,136 Q834,144 842,144 L844,144 Q852,144 852,152 L852,172" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#26[5] → #7 · MEM</title></path><path class="edge CTRL" id="e27i0" d="M714,124 L714,260 Q714,268 722,268 L920,268 Q928,268 928,276 L928,298" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#27[0] → #6 · CTRL</title></path><path class="edge MEM" id="e27i1" d="M807,228 L807,250 Q807,258 815,258 L961,258 Q969,258 969,266 L969,298" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#27[1] → #26 · MEM</title></path><path class="edge DATA" id="e27i2" d="M1009,228 L1009,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[2] → #24 · DATA</title></path><path class="edge DATA" id="e27i3" d="M644,228 L644,240 Q644,248 652,248 L1041,248 Q1049,248 1049,256 L1049,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[3] → #18 · DATA</title></path><path class="edge DATA" id="e27i4" d="M492,228 L492,270 Q492,278 500,278 L1082,278 Q1090,278 1090,286 L1090,298" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#27[4] → #4 · DATA</title></path><path class="edge CTRL" id="e32i1" d="M714,124 L714,551" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#32[1] → #6 · CTRL</title></path><path class="edge CTRL" id="e32i2" d="M694,858 L694,863 Q694,868 699,868 L1416,868 Q1424,868 1424,860 L1424,534 Q1424,526 1416,526 L752,526 Q744,526 744,534 L744,554" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#32[2] → #41 · CTRL</title></path><path class="edge DATA" id="e34i1" d="M492,228 L492,270 Q492,278 500,278 L717,278 Q725,278 725,286 L725,430 Q725,438 733,438 L838,438 Q846,438 846,446 L846,551" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#34[1] → #4 · DATA</title></path><path class="edge DATA" id="e34i2" d="M937,710 L937,715 Q937,720 942,720 L1406,720 Q1414,720 1414,712 L1414,542 Q1414,534 1406,534 L894,534 Q886,534 886,542 L886,554" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#34[2] → #60 · DATA</title></path><path class="edge DATA" id="e35i1" d="M866,607 L866,629 Q866,637 858,637 L793,637 Q785,637 785,645 L785,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#35[1] → #34 · DATA</title></path><path class="edge DATA" id="e35i2" d="M644,228 L644,420 Q644,428 636,428 L630,428 Q622,428 622,436 L622,639 Q622,647 630,647 L810,647 Q815,647 815,652 L815,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#35[2] → #18 · DATA</title></path><path class="edge CTRL" id="e40i0" d="M714,607 L714,761" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#40[0] → #32 · CTRL</title></path><path class="edge DATA" id="e40i1" d="M785,713 L785,718.5 Q785,723 789.5,723 L789.5,723 Q794,723 794,727.5 L794,761" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#40[1] → #35 · DATA</title></path><path class="edge ASSOC" id="e46i0" d="M1017,52 C1017,76 574,321 574,345" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#46[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e51i0" d="M1017,52 C1017,76 1503,321 1503,345" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#51[0] → #2 · ASSOC</title></path><path class="edge ASSOC" id="e52i0" d="M1017,52 C1017,76 796,321 796,345" stroke="#9396a3" marker-start="url(#arrow-ASSOC)" style="opacity: 1;"><title>#52[0] → #2 · ASSOC</title></path><path class="edge DATA" id="e53i1" d="M866,607 L866,629 Q866,637 874,637 L1161,637 Q1169,637 1169,645 L1169,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#53[1] → #34 · DATA</title></path><path class="edge DATA" id="e53i2" d="M796,398 L796,420 Q796,428 804,428 L1191,428 Q1199,428 1199,436 L1199,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#53[2] → #52 · DATA</title></path><path class="edge DATA" id="e54i1" d="M1169,713 L1169,718 Q1169,723 1164,723 L1164,723 Q1159,723 1159,728 L1159,775.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#54[1] → #53 · DATA</title></path><path class="edge DATA" id="e54i2" d="M1503,398 L1503,430 Q1503,438 1495,438 L1247,438 Q1239,438 1239,446 L1239,715 Q1239,723 1231,723 L1197,723 Q1189,723 1189,731 L1189,775.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#54[2] → #51 · DATA</title></path><path class="edge DATA" id="e56i1" d="M866,607 L866,629 Q866,637 874,637 L1303,637 Q1311,637 1311,645 L1311,775.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#56[1] → #34 · DATA</title></path><path class="edge DATA" id="e56i2" d="M954,124 L954,129 Q954,134 959,134 L1333,134 Q1341,134 1341,142 L1341,775.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#56[2] → #8 · DATA</title></path><path class="edge CTRL" id="e57i0" d="M694,861 L694,866 Q694,871 699,871 L837,871 Q845,871 845,879 L845,921" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#57[0] → #41 · CTRL</title></path><path class="edge MEM" id="e57i1" d="M1018,607 L1018,873 Q1018,881 1010,881 L873,881 Q865,881 865,889 L865,921" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#57[1] → #124 · MEM</title></path><path class="edge DATA" id="e57i2" d="M949,398 L949,440 Q949,448 957,448 L1080,448 Q1088,448 1088,456 L1088,883 Q1088,891 1080,891 L893,891 Q885,891 885,899 L885,921" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[2] → #28 · DATA</title></path><path class="edge DATA" id="e57i3" d="M1159,831.6666666666667 L1159,893 Q1159,901 1151,901 L913,901 Q905,901 905,909 L905,921" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[3] → #54 · DATA</title></path><path class="edge DATA" id="e57i4" d="M1311,831.6666666666667 L1311,903 Q1311,911 1303,911 L930,911 Q925,911 925,916 L925,921" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#57[4] → #56 · DATA</title></path><path class="edge DATA" id="e60i1" d="M866,607 L866,629 Q866,637 874,637 L929,637 Q937,637 937,645 L937,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#60[1] → #34 · DATA</title></path><path class="edge DATA" id="e60i2" d="M574,398 L574,430 Q574,438 582,438 L625,438 Q633,438 633,446 L633,619 Q633,627 641,627 L959,627 Q967,627 967,635 L967,657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#60[2] → #46 · DATA</title></path><path class="edge CTRL" id="e65i1" d="M814,861 L814,1185" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#65[1] → #42 · CTRL</title></path><path class="edge CTRL" id="e65i2" d="M794,1502 L794,1507 Q794,1512 799,1512 L1700,1512 Q1708,1512 1708,1504 L1708,1160 Q1708,1152 1700,1152 L852,1152 Q844,1152 844,1160 L844,1188" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#65[2] → #74 · CTRL</title></path><path class="edge DATA" id="e67i1" d="M492,228 L492,270 Q492,278 484,278 L65,278 Q57,278 57,286 L57,400 Q57,408 65,408 L484,408 Q492,408 492,416 L492,1026 Q492,1034 500,1034 L938,1034 Q946,1034 946,1042 L946,1185" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#67[1] → #4 · DATA</title></path><path class="edge DATA" id="e67i2" d="M744,1354 L744,1359 Q744,1364 749,1364 L1690,1364 Q1698,1364 1698,1356 L1698,1168 Q1698,1160 1690,1160 L994,1160 Q986,1160 986,1168 L986,1188" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#67[2] → #103 · DATA</title></path><path class="edge DATA" id="e68i1" d="M966,1241 L966,1263 Q966,1271 958,1271 L903,1271 Q895,1271 895,1279 L895,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#68[1] → #67 · DATA</title></path><path class="edge DATA" id="e68i2" d="M644,228 L644,240 Q644,248 636,248 L54,248 Q46,248 46,256 L46,420 Q46,428 54,428 L315,428 Q323,428 323,436 L323,1036 Q323,1044 331,1044 L725,1044 Q733,1044 733,1052 L733,1253 Q733,1261 741,1261 L917,1261 Q925,1261 925,1269 L925,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#68[2] → #18 · DATA</title></path><path class="edge CTRL" id="e73i0" d="M814,1241 L814,1405" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#73[0] → #65 · CTRL</title></path><path class="edge DATA" id="e73i1" d="M895,1357 L895,1366.5 Q895,1367 894.5,1367 L894.5,1367 Q894,1367 894,1367.5 L894,1405" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#73[1] → #68 · DATA</title></path><path class="edge DATA" id="e88i1" d="M1118,1241 L1118,1246 Q1118,1251 1113,1251 L998,1251 Q990,1251 990,1259 L990,1517 Q990,1525 982,1525 L944,1525 Q936,1525 936,1533 L936,1611 Q936,1619 944,1619 L987,1619 Q995,1619 995,1627 L995,1657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#88[1] → #131 · DATA</title></path><path class="edge DATA" id="e88i2" d="M1007,1609 L1007,1614 Q1007,1619 1012,1619 L1017,1619 Q1025,1619 1025,1627 L1025,1657" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#88[2] → #93 · DATA</title></path><path class="edge DATA" id="e91i1" d="M966,1241 L966,1263 Q966,1271 974,1271 L1425,1271 Q1433,1271 1433,1279 L1433,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#91[1] → #67 · DATA</title></path><path class="edge DATA" id="e91i2" d="M796,398 L796,420 Q796,428 804,428 L1455,428 Q1463,428 1463,436 L1463,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#91[2] → #52 · DATA</title></path><path class="edge DATA" id="e92i1" d="M1433,1357 L1433,1419.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#92[1] → #91 · DATA</title></path><path class="edge DATA" id="e92i2" d="M1503,398 L1503,1359 Q1503,1367 1495,1367 L1471,1367 Q1463,1367 1463,1375 L1463,1419.6666666666667" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#92[2] → #51 · DATA</title></path><path class="edge CTRL" id="e93i0" d="M794,1505 L794,1510 Q794,1515 799,1515 L963,1515 Q971,1515 971,1523 L971,1553" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#93[0] → #74 · CTRL</title></path><path class="edge MEM" id="e93i1" d="M1018,607 L1018,612 Q1018,617 1023,617 L1373,617 Q1381,617 1381,625 L1381,1016 Q1381,1024 1373,1024 L1359,1024 Q1351,1024 1351,1032 L1351,1507 Q1351,1515 1343,1515 L1003,1515 Q995,1515 995,1523 L995,1553" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#93[1] → #124 · MEM</title></path><path class="edge DATA" id="e93i2" d="M949,398 L949,440 Q949,448 957,448 L1438,448 Q1446,448 1446,456 L1446,1026 Q1446,1034 1438,1034 L1370,1034 Q1362,1034 1362,1042 L1362,1517 Q1362,1525 1354,1525 L1027,1525 Q1019,1525 1019,1533 L1019,1553" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#93[2] → #28 · DATA</title></path><path class="edge DATA" id="e93i3" d="M1433,1475.6666666666667 L1433,1527 Q1433,1535 1425,1535 L1051,1535 Q1043,1535 1043,1543 L1043,1553" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#93[3] → #92 · DATA</title></path><path class="edge DATA" id="e99i1" d="M1270,1241 L1270,1255.5 Q1270,1261 1275.5,1261 L1275.5,1261 Q1281,1261 1281,1266.5 L1281,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#99[1] → #141 · DATA</title></path><path class="edge DATA" id="e99i2" d="M574,398 L574,430.5 Q574,438 581.5,438 L581.5,438 Q589,438 589,445.5 L589,1016 Q589,1024 597,1024 L1332,1024 Q1340,1024 1340,1032 L1340,1273 Q1340,1281 1332,1281 L1319,1281 Q1311,1281 1311,1289 L1311,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#99[2] → #46 · DATA</title></path><path class="edge DATA" id="e103i1" d="M966,1241 L966,1263 Q966,1271 958,1271 L752,1271 Q744,1271 744,1279 L744,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#103[1] → #67 · DATA</title></path><path class="edge DATA" id="e103i2" d="M574,398 L574,430 Q574,438 566,438 L320,438 Q312,438 312,446 L312,1046 Q312,1054 320,1054 L704,1054 Q712,1054 712,1062 L712,1283 Q712,1291 720,1291 L769,1291 Q774,1291 774,1296 L774,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#103[2] → #46 · DATA</title></path><path class="edge MEM" id="e106i1" d="M834,124 L834,136 Q834,144 826,144 L32,144 Q24,144 24,152 L24,440 Q24,448 32,448 L125,448 Q133,448 133,456 L133,1822 Q133,1830 141,1830 L917,1830 Q925,1830 925,1838 L925,1908 Q925,1916 933,1916 L1638,1916 Q1646,1916 1646,1924 L1646,1944" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[1] → #7 · MEM</title></path><path class="edge MEM" id="e106i2" d="M996,1896 L996,1901 Q996,1906 1001,1906 L1656,1906 Q1664,1906 1664,1914 L1664,1944" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[2] → #146 · MEM</title></path><path class="edge MEM" id="e106i3" d="M1682,1896 L1682,1944" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[3] → #142 · MEM</title></path><path class="edge MEM" id="e106i4" d="M1070,398 L1070,403 Q1070,408 1075,408 L1744,408 Q1752,408 1752,416 L1752,1898 Q1752,1906 1744,1906 L1708,1906 Q1700,1906 1700,1914 L1700,1944" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[4] → #29 · MEM</title></path><path class="edge MEM" id="e106i5" d="M1018,607 L1018,612 Q1018,617 1023,617 L1373,617 Q1381,617 1381,625 L1381,1016 Q1381,1024 1389,1024 L1755,1024 Q1763,1024 1763,1032 L1763,1908 Q1763,1916 1755,1916 L1726,1916 Q1718,1916 1718,1924 L1718,1944" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#106[5] → #124 · MEM</title></path><path class="edge DATA" id="e112i1" d="M1270,1241 L1270,1253 Q1270,1261 1278,1261 L1588,1261 Q1596,1261 1596,1269 L1596,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#112[1] → #141 · DATA</title></path><path class="edge DATA" id="e112i2" d="M1118,1241 L1118,1246 Q1118,1251 1123,1251 L1618,1251 Q1626,1251 1626,1259 L1626,1301" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#112[2] → #131 · DATA</title></path><path class="edge CTRL" id="e115i0" d="M914,1505 L914,2048" stroke="#b63838" marker-start="url(#arrow-CTRL)" style="opacity: 1;"><title>#115[0] → #75 · CTRL</title></path><path class="edge MEM" id="e115i1" d="M1673,2000 L1673,2005 Q1673,2010 1668,2010 L953,2010 Q945,2010 945,2018 L945,2048" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#115[1] → #106 · MEM</title></path><path class="edge DATA" id="e115i2" d="M1596,1357 L1596,1752 Q1596,1760 1604,1760 L1766,1760 Q1774,1760 1774,1768 L1774,2012 Q1774,2020 1766,2020 L984,2020 Q976,2020 976,2028 L976,2048" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#115[2] → #112 · DATA</title></path><path class="edge MEM" id="e124i1" d="M1070,398 L1070,403 Q1070,408 1065,408 L1006,408 Q998,408 998,416 L998,551" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#124[1] → #29 · MEM</title></path><path class="edge MEM" id="e124i2" d="M885,974 L885,979 Q885,984 890,984 L1396,984 Q1404,984 1404,976 L1404,550 Q1404,542 1396,542 L1044,542 Q1038,542 1038,548 L1038,554" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#124[2] → #57 · MEM</title></path><path class="edge DATA" id="e131i1" d="M492,228 L492,1026 Q492,1034 500,1034 L1090,1034 Q1098,1034 1098,1042 L1098,1185" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#131[1] → #4 · DATA</title></path><path class="edge DATA" id="e131i2" d="M995,1710 L995,1715 Q995,1720 1000,1720 L1680,1720 Q1688,1720 1688,1712 L1688,1176 Q1688,1168 1680,1168 L1146,1168 Q1138,1168 1138,1176 L1138,1188" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#131[2] → #88 · DATA</title></path><path class="edge DATA" id="e141i1" d="M492,228 L492,1026 Q492,1034 500,1034 L1242,1034 Q1250,1034 1250,1042 L1250,1185" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#141[1] → #4 · DATA</title></path><path class="edge DATA" id="e141i2" d="M1281,1354 L1281,1359 Q1281,1364 1286,1364 L1670,1364 Q1678,1364 1678,1356 L1678,1184 Q1678,1176 1670,1176 L1296,1176 Q1290,1176 1290,1182 L1290,1188" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#141[2] → #99 · DATA</title></path><path class="edge MEM" id="e142i1" d="M301,398 L301,1782 Q301,1790 309,1790 L1654,1790 Q1662,1790 1662,1798 L1662,1840" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#142[1] → #16 · MEM</title></path><path class="edge DATA" id="e142i2" d="M155,398 L155,410 Q155,418 163,418 L1722,418 Q1730,418 1730,426 L1730,1762 Q1730,1770 1722,1770 L1690,1770 Q1682,1770 1682,1778 L1682,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#142[2] → #15 · DATA</title></path><path class="edge DATA" id="e142i3" d="M1503,398 L1503,430 Q1503,438 1511,438 L1733,438 Q1741,438 1741,446 L1741,1782 Q1741,1790 1733,1790 L1710,1790 Q1702,1790 1702,1798 L1702,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#142[3] → #51 · DATA</title></path><path class="edge DATA" id="e142i4" d="M1270,1241 L1270,1253 Q1270,1261 1278,1261 L1517,1261 Q1525,1261 1525,1269 L1525,1772 Q1525,1780 1533,1780 L1714,1780 Q1722,1780 1722,1788 L1722,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#142[4] → #141 · DATA</title></path><path class="edge MEM" id="e146i1" d="M301,398 L301,440 Q301,448 293,448 L152,448 Q144,448 144,456 L144,1812 Q144,1820 152,1820 L968,1820 Q976,1820 976,1828 L976,1840" stroke="#2867b2" marker-start="url(#arrow-MEM)" style="opacity: 1;"><title>#146[1] → #16 · MEM</title></path><path class="edge DATA" id="e146i2" d="M155,398 L155,1802 Q155,1810 163,1810 L988,1810 Q996,1810 996,1818 L996,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#146[2] → #15 · DATA</title></path><path class="edge DATA" id="e146i3" d="M492,228 L492,270 Q492,278 484,278 L43,278 Q35,278 35,286 L35,430 Q35,438 43,438 L158,438 Q166,438 166,446 L166,1792 Q166,1800 174,1800 L1008,1800 Q1016,1800 1016,1808 L1016,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#146[3] → #4 · DATA</title></path><path class="edge DATA" id="e146i4" d="M1118,1241 L1118,1246 Q1118,1251 1123,1251 L1506,1251 Q1514,1251 1514,1259 L1514,1792 Q1514,1800 1506,1800 L1044,1800 Q1036,1800 1036,1808 L1036,1840" stroke="#536477" marker-start="url(#arrow-DATA)" style="opacity: 1;"><title>#146[4] → #131 · DATA</title></path></g><g class="edge-hits"/><g class="parser" style="opacity: 1;"/><g class="nodes"><g class="node" id="n2" data-id="2" transform="translate(654,30)" style="opacity: 1;"><path class="box" d="M0,0H360V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="180" y="18"><tspan>Start</tspan><tspan class="node-id"> #2</tspan></text><text class="type" text-anchor="middle" y="35" x="180">[ Ctrl, MemBot, int]</text><title>#2 Start [ Ctrl, MemBot, int] [0] → — ASSOC [1] → — CTRL -[2] → — CTRL</title><circle class="port" cx="90" cy="-3" r="3" fill="white"/><circle class="port" cx="180" cy="-3" r="3" fill="white"/><circle class="port" cx="270" cy="-3" r="3" fill="white"/><text class="slot" x="90" y="-10" text-anchor="middle">0</text><text class="slot" x="180" y="-10" text-anchor="middle">1</text><text class="slot" x="270" y="-10" text-anchor="middle">2</text></g><g class="node" id="n3" data-id="3" transform="translate(1095.5,2282)" style="opacity: 1;"><path class="box" d="M0,0H72V26H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="36" y="17"><tspan>Stop</tspan><tspan class="node-id"> #3</tspan></text><text class="type" text-anchor="middle" y="35" x="36"/><title>#3 Stop +[2] → — CTRL</title><circle class="port" cx="90" cy="-3" r="3" fill="white"/><circle class="port" cx="180" cy="-3" r="3" fill="white"/><circle class="port" cx="270" cy="-3" r="3" fill="white"/><text class="slot" x="90" y="-10" text-anchor="middle">0</text><text class="slot" x="180" y="-10" text-anchor="middle">1</text><text class="slot" x="270" y="-10" text-anchor="middle">2</text></g><g class="node" id="n3" data-id="3" transform="translate(863.5,2152)" style="opacity: 1;"><path class="box" d="M0,0H72V26H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="36" y="17"><tspan>Stop</tspan><tspan class="node-id"> #3</tspan></text><text class="type" text-anchor="middle" y="35" x="36"/><title>#3 Stop Bot [0] → #115 CTRL</title><circle class="port" cx="36" cy="0" r="3" fill="#536477"/><text class="slot" x="36" y="-7" text-anchor="middle">0</text></g><g class="node" id="n4" data-id="4" transform="translate(432,178)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #4</tspan></text><text class="type" text-anchor="middle" y="35" x="60">0</text><title>#4 Con 0 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n5" data-id="5" transform="translate(502,52)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Xctrl</tspan><tspan class="node-id"> #5</tspan></text><text class="type" text-anchor="middle" y="35" x="60">~Ctrl</text><title>#5 Xctrl +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n5" data-id="5" transform="translate(1052,52)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Xctrl</tspan><tspan class="node-id"> #5</tspan></text><text class="type" text-anchor="middle" y="35" x="60">~Ctrl</text><title>#5 Xctrl ~Ctrl [0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n6" data-id="6" transform="translate(654,74)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>$ctrl</tspan><tspan class="node-id"> #6/0</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#6 $ctrl @@ -95,28 +95,28 @@ MemBot [0] → — CTRL [1] → — DATA [2] → #7 MEM -[3] → #7 MEM</title><circle class="port" cx="24" cy="-3" r="3" fill="white"/><circle class="port" cx="48" cy="-3" r="3" fill="white"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="96" cy="-3" r="3" fill="#536477"/><text class="slot" x="24" y="-10" text-anchor="middle">0</text><text class="slot" x="48" y="-10" text-anchor="middle">1</text><text class="slot" x="72" y="-10" text-anchor="middle">2</text><text class="slot" x="96" y="-10" text-anchor="middle">3</text></g><g class="node" id="n14" data-id="14" transform="translate(68,294)" style="opacity: 1;"><path class="box" d="M0,0H293V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="146.5" y="18"><tspan>new_Totals</tspan><tspan class="node-id"> #14</tspan></text><text class="type" text-anchor="middle" y="35" x="146.5">[ *Totals {int !sum; int !visits; }, MemBot]</text><title>#14 new_Totals +[3] → #7 MEM</title><circle class="port" cx="24" cy="-3" r="3" fill="white"/><circle class="port" cx="48" cy="-3" r="3" fill="white"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="96" cy="-3" r="3" fill="#536477"/><text class="slot" x="24" y="-10" text-anchor="middle">0</text><text class="slot" x="48" y="-10" text-anchor="middle">1</text><text class="slot" x="72" y="-10" text-anchor="middle">2</text><text class="slot" x="96" y="-10" text-anchor="middle">3</text></g><g class="node" id="n14" data-id="14" transform="translate(68,304)" style="opacity: 1;"><path class="box" d="M0,0H293V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="146.5" y="18"><tspan>new_Totals</tspan><tspan class="node-id"> #14</tspan></text><text class="type" text-anchor="middle" y="35" x="146.5">[ *Totals {int !sum; int !visits; }, MemBot]</text><title>#14 new_Totals [ *Totals {int !sum; int !visits; }, MemBot] [0] → #6 CTRL [1] → #13 MEM [2] → #12 DATA [3] → #4 DATA -[4] → #4 DATA</title><circle class="port" cx="49" cy="-3" r="3" fill="#536477"/><circle class="port" cx="98" cy="-3" r="3" fill="#536477"/><circle class="port" cx="147" cy="-3" r="3" fill="#536477"/><circle class="port" cx="195" cy="-3" r="3" fill="#536477"/><circle class="port" cx="244" cy="-3" r="3" fill="#536477"/><text class="slot" x="49" y="-10" text-anchor="middle">0</text><text class="slot" x="98" y="-10" text-anchor="middle">1</text><text class="slot" x="147" y="-10" text-anchor="middle">2</text><text class="slot" x="195" y="-10" text-anchor="middle">3</text><text class="slot" x="244" y="-10" text-anchor="middle">4</text></g><g class="node" id="n15" data-id="15" transform="translate(68,338)" style="opacity: 1;"><path class="box" d="M0,0H173V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="86.5" y="18"><tspan>Totals</tspan><tspan class="node-id"> #15/0</tspan></text><text class="type" text-anchor="middle" y="35" x="86.5">*Totals {int !sum; int !visits; }</text><title>#15 Totals +[4] → #4 DATA</title><circle class="port" cx="49" cy="-3" r="3" fill="#536477"/><circle class="port" cx="98" cy="-3" r="3" fill="#536477"/><circle class="port" cx="147" cy="-3" r="3" fill="#536477"/><circle class="port" cx="195" cy="-3" r="3" fill="#536477"/><circle class="port" cx="244" cy="-3" r="3" fill="#536477"/><text class="slot" x="49" y="-10" text-anchor="middle">0</text><text class="slot" x="98" y="-10" text-anchor="middle">1</text><text class="slot" x="147" y="-10" text-anchor="middle">2</text><text class="slot" x="195" y="-10" text-anchor="middle">3</text><text class="slot" x="244" y="-10" text-anchor="middle">4</text></g><g class="node" id="n15" data-id="15" transform="translate(68,348)" style="opacity: 1;"><path class="box" d="M0,0H173V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="86.5" y="18"><tspan>Totals</tspan><tspan class="node-id"> #15/0</tspan></text><text class="type" text-anchor="middle" y="35" x="86.5">*Totals {int !sum; int !visits; }</text><title>#15 Totals Projection 0 of #14 *Totals {int !sum; int !visits; } -[0] → #14 DATA</title></g><g class="node" id="n16" data-id="16" transform="translate(241,338)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>$mem</tspan><tspan class="node-id"> #16/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MemBot</text><title>#16 $mem +[0] → #14 DATA</title></g><g class="node" id="n16" data-id="16" transform="translate(241,348)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>$mem</tspan><tspan class="node-id"> #16/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MemBot</text><title>#16 $mem Projection 1 of #14 MemBot [0] → #14 MEM</title></g><g class="node" id="n18" data-id="18" transform="translate(584,178)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #18</tspan></text><text class="type" text-anchor="middle" y="35" x="60">4</text><title>#18 Con 4 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n24" data-id="24" transform="translate(916,178)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #24</tspan></text><text class="type" text-anchor="middle" y="35" x="60">40</text><title>#24 Con +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n24" data-id="24" transform="translate(949,178)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #24</tspan></text><text class="type" text-anchor="middle" y="35" x="60">40</text><title>#24 Con 40 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n26" data-id="26" transform="translate(758,178)" style="opacity: 1;"><path class="box" d="M10,0H116L126,10V34L116,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="63" y="18"><tspan>MemMerge</tspan><tspan class="node-id"> #26</tspan></text><text class="type" text-anchor="middle" y="35" x="63">MemBot</text><title>#26 MemMerge +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n26" data-id="26" transform="translate(744,178)" style="opacity: 1;"><path class="box" d="M10,0H116L126,10V34L116,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="63" y="18"><tspan>MemMerge</tspan><tspan class="node-id"> #26</tspan></text><text class="type" text-anchor="middle" y="35" x="63">MemBot</text><title>#26 MemMerge MemBot [0] → — CTRL @@ -124,197 +124,187 @@ MemBot [2] → — DATA [3] → — DATA [4] → #7 MEM -[5] → #7 MEM</title><circle class="port" cx="18" cy="-3" r="3" fill="white"/><circle class="port" cx="36" cy="-3" r="3" fill="white"/><circle class="port" cx="54" cy="-3" r="3" fill="white"/><circle class="port" cx="72" cy="-3" r="3" fill="white"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><circle class="port" cx="108" cy="-3" r="3" fill="#536477"/><text class="slot" x="18" y="-10" text-anchor="middle">0</text><text class="slot" x="36" y="-10" text-anchor="middle">1</text><text class="slot" x="54" y="-10" text-anchor="middle">2</text><text class="slot" x="72" y="-10" text-anchor="middle">3</text><text class="slot" x="90" y="-10" text-anchor="middle">4</text><text class="slot" x="108" y="-10" text-anchor="middle">5</text></g><g class="node" id="n27" data-id="27" transform="translate(747,294)" style="opacity: 1;"><path class="box" d="M0,0H242V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="121" y="18"><tspan>new_ary_int</tspan><tspan class="node-id"> #27</tspan></text><text class="type" text-anchor="middle" y="35" x="121">[ *[int] {int #; int ![]; }, MemBot]</text><title>#27 new_ary_int +[5] → #7 MEM</title><circle class="port" cx="18" cy="-3" r="3" fill="white"/><circle class="port" cx="36" cy="-3" r="3" fill="white"/><circle class="port" cx="54" cy="-3" r="3" fill="white"/><circle class="port" cx="72" cy="-3" r="3" fill="white"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><circle class="port" cx="108" cy="-3" r="3" fill="#536477"/><text class="slot" x="18" y="-10" text-anchor="middle">0</text><text class="slot" x="36" y="-10" text-anchor="middle">1</text><text class="slot" x="54" y="-10" text-anchor="middle">2</text><text class="slot" x="72" y="-10" text-anchor="middle">3</text><text class="slot" x="90" y="-10" text-anchor="middle">4</text><text class="slot" x="108" y="-10" text-anchor="middle">5</text></g><g class="node" id="n27" data-id="27" transform="translate(888,304)" style="opacity: 1;"><path class="box" d="M0,0H242V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="121" y="18"><tspan>new_ary_int</tspan><tspan class="node-id"> #27</tspan></text><text class="type" text-anchor="middle" y="35" x="121">[ *[int] {int #; int ![]; }, MemBot]</text><title>#27 new_ary_int [ *[int] {int #; int ![]; }, MemBot] [0] → #6 CTRL [1] → #26 MEM [2] → #24 DATA [3] → #18 DATA -[4] → #4 DATA</title><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="81" cy="-3" r="3" fill="#536477"/><circle class="port" cx="121" cy="-3" r="3" fill="#536477"/><circle class="port" cx="161" cy="-3" r="3" fill="#536477"/><circle class="port" cx="202" cy="-3" r="3" fill="#536477"/><text class="slot" x="40" y="-10" text-anchor="middle">0</text><text class="slot" x="81" y="-10" text-anchor="middle">1</text><text class="slot" x="121" y="-10" text-anchor="middle">2</text><text class="slot" x="161" y="-10" text-anchor="middle">3</text><text class="slot" x="202" y="-10" text-anchor="middle">4</text></g><g class="node" id="n28" data-id="28" transform="translate(747,338)" style="opacity: 1;"><path class="box" d="M0,0H122V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="61" y="18"><tspan>[int]</tspan><tspan class="node-id"> #28/0</tspan></text><text class="type" text-anchor="middle" y="35" x="61">*[int] {int #; int ![]; }</text><title>#28 [int] +[4] → #4 DATA</title><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="81" cy="-3" r="3" fill="#536477"/><circle class="port" cx="121" cy="-3" r="3" fill="#536477"/><circle class="port" cx="161" cy="-3" r="3" fill="#536477"/><circle class="port" cx="202" cy="-3" r="3" fill="#536477"/><text class="slot" x="40" y="-10" text-anchor="middle">0</text><text class="slot" x="81" y="-10" text-anchor="middle">1</text><text class="slot" x="121" y="-10" text-anchor="middle">2</text><text class="slot" x="161" y="-10" text-anchor="middle">3</text><text class="slot" x="202" y="-10" text-anchor="middle">4</text></g><g class="node" id="n28" data-id="28" transform="translate(888,348)" style="opacity: 1;"><path class="box" d="M0,0H122V44H0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="61" y="18"><tspan>[int]</tspan><tspan class="node-id"> #28/0</tspan></text><text class="type" text-anchor="middle" y="35" x="61">*[int] {int #; int ![]; }</text><title>#28 [int] Projection 0 of #27 *[int] {int #; int ![]; } -[0] → #27 DATA</title></g><g class="node" id="n29" data-id="29" transform="translate(869,338)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>$mem</tspan><tspan class="node-id"> #29/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MemBot</text><title>#29 $mem +[0] → #27 DATA</title></g><g class="node" id="n29" data-id="29" transform="translate(1010,348)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>$mem</tspan><tspan class="node-id"> #29/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MemBot</text><title>#29 $mem Projection 1 of #27 MemBot -[0] → #27 MEM</title></g><g class="node" id="n32" data-id="32" transform="translate(654,567)" style="opacity: 1;"><path class="box" d="M20,0H100Q120,0 120,20V24Q120,44 100,44H20Q0,44 0,24V20Q0,0 20,0Z" fill="#ffe0ab"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Loop</tspan><tspan class="node-id"> #32</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#32 Loop +[0] → #27 MEM</title></g><g class="node" id="n32" data-id="32" transform="translate(654,557)" style="opacity: 1;"><path class="box" d="M20,0H100Q120,0 120,20V24Q120,44 100,44H20Q0,44 0,24V20Q0,0 20,0Z" fill="#ffe0ab"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Loop</tspan><tspan class="node-id"> #32</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#32 Loop Ctrl [0] → — ASSOC [1] → #6 CTRL -[2] → #41 CTRL</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n34" data-id="34" transform="translate(806,567)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_i</tspan><tspan class="node-id"> #34</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#34 Phi_i +[2] → #41 CTRL</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n34" data-id="34" transform="translate(806,557)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_i</tspan><tspan class="node-id"> #34</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#34 Phi_i int [0] → #32 ASSOC [1] → #4 DATA -[2] → #60 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #32</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n35" data-id="35" transform="translate(865,683)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>LT</tspan><tspan class="node-id"> #35</tspan></text><text class="type" text-anchor="middle" y="35" x="60">bool</text><title>#35 LT +[2] → #60 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #32</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n35" data-id="35" transform="translate(725,663)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>LT</tspan><tspan class="node-id"> #35</tspan></text><text class="type" text-anchor="middle" y="35" x="60">bool</text><title>#35 LT bool [0] → — CTRL [1] → #34 DATA -[2] → #18 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n40" data-id="40" transform="translate(634,787)" style="opacity: 1;"><path class="box" d="M0,0H240V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="120" y="18"><tspan>If</tspan><tspan class="node-id"> #40</tspan></text><text class="type" text-anchor="middle" y="35" x="120">[ Ctrl, Ctrl]</text><title>#40 If +[2] → #18 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n40" data-id="40" transform="translate(634,767)" style="opacity: 1;"><path class="box" d="M0,0H240V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="120" y="18"><tspan>If</tspan><tspan class="node-id"> #40</tspan></text><text class="type" text-anchor="middle" y="35" x="120">[ Ctrl, Ctrl]</text><title>#40 If [ Ctrl, Ctrl] [0] → #32 CTRL -[1] → #35 DATA</title><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="160" cy="-3" r="3" fill="#536477"/><text class="slot" x="80" y="-10" text-anchor="middle">0</text><text class="slot" x="160" y="-10" text-anchor="middle">1</text></g><g class="node" id="n41" data-id="41" transform="translate(634,831)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>True</tspan><tspan class="node-id"> #41/0</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#41 True +[1] → #35 DATA</title><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="160" cy="-3" r="3" fill="#536477"/><text class="slot" x="80" y="-10" text-anchor="middle">0</text><text class="slot" x="160" y="-10" text-anchor="middle">1</text></g><g class="node" id="n41" data-id="41" transform="translate(634,811)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>True</tspan><tspan class="node-id"> #41/0</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#41 True Projection 0 of #40 Ctrl -[0] → #40 CTRL</title></g><g class="node" id="n42" data-id="42" transform="translate(754,831)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>False</tspan><tspan class="node-id"> #42/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#42 False +[0] → #40 CTRL</title></g><g class="node" id="n42" data-id="42" transform="translate(754,811)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>False</tspan><tspan class="node-id"> #42/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#42 False Projection 1 of #40 Ctrl -[0] → #40 CTRL</title></g><g class="node" id="n46" data-id="46" transform="translate(584,338)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #46</tspan></text><text class="type" text-anchor="middle" y="35" x="60">1</text><title>#46 Con +[0] → #40 CTRL</title></g><g class="node" id="n46" data-id="46" transform="translate(514,348)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #46</tspan></text><text class="type" text-anchor="middle" y="35" x="60">1</text><title>#46 Con 1 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n51" data-id="51" transform="translate(1920,338)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #51</tspan></text><text class="type" text-anchor="middle" y="35" x="60">8</text><title>#51 Con +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n51" data-id="51" transform="translate(1443,348)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #51</tspan></text><text class="type" text-anchor="middle" y="35" x="60">8</text><title>#51 Con 8 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n52" data-id="52" transform="translate(1768,338)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #52</tspan></text><text class="type" text-anchor="middle" y="35" x="60">3</text><title>#52 Con +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n52" data-id="52" transform="translate(736,348)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Con</tspan><tspan class="node-id"> #52</tspan></text><text class="type" text-anchor="middle" y="35" x="60">3</text><title>#52 Con 3 -[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n53" data-id="53" transform="translate(1109,683)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Shl</tspan><tspan class="node-id"> #53</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#53 Shl +[0] → #2 ASSOC</title><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><text class="slot" x="60" y="-10" text-anchor="middle">0</text></g><g class="node" id="n53" data-id="53" transform="translate(1109,663)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Shl</tspan><tspan class="node-id"> #53</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#53 Shl int [0] → — CTRL [1] → #34 DATA -[2] → #52 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n54" data-id="54" transform="translate(1109,801.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #54</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#54 Add +[2] → #52 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n54" data-id="54" transform="translate(1099,781.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #54</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#54 Add int [0] → — CTRL [1] → #53 DATA -[2] → #51 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n56" data-id="56" transform="translate(1261,801.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #56</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#56 Add +[2] → #51 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n56" data-id="56" transform="translate(1251,781.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #56</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#56 Add int [0] → — CTRL [1] → #34 DATA -[2] → #8 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n57" data-id="57" transform="translate(836,947)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_ary</tspan><tspan class="node-id"> #57</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#5:Bot</text><title>#57 st_ary +[2] → #8 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n57" data-id="57" transform="translate(825,927)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_ary</tspan><tspan class="node-id"> #57</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#5:Bot</text><title>#57 st_ary MEM#5:Bot [0] → #41 CTRL [1] → #124 MEM [2] → #28 DATA [3] → #54 DATA -[4] → #56 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g><g class="node" id="n60" data-id="60" transform="translate(725,683)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #60</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#60 Add +[4] → #56 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g><g class="node" id="n60" data-id="60" transform="translate(877,663)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #60</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#60 Add int [0] → — CTRL [1] → #34 DATA -[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n65" data-id="65" transform="translate(754,1287)" style="opacity: 1;"><path class="box" d="M20,0H100Q120,0 120,20V24Q120,44 100,44H20Q0,44 0,24V20Q0,0 20,0Z" fill="#ffe0ab"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Loop</tspan><tspan class="node-id"> #65</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#65 Loop +[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n65" data-id="65" transform="translate(754,1191)" style="opacity: 1;"><path class="box" d="M20,0H100Q120,0 120,20V24Q120,44 100,44H20Q0,44 0,24V20Q0,0 20,0Z" fill="#ffe0ab"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Loop</tspan><tspan class="node-id"> #65</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#65 Loop Ctrl [0] → — ASSOC [1] → #42 CTRL -[2] → #74 CTRL</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n67" data-id="67" transform="translate(906,1287)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_i</tspan><tspan class="node-id"> #67</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#67 Phi_i +[2] → #74 CTRL</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n67" data-id="67" transform="translate(906,1191)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_i</tspan><tspan class="node-id"> #67</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#67 Phi_i int [0] → #65 ASSOC [1] → #4 DATA -[2] → #103 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n68" data-id="68" transform="translate(825,1463)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>LT</tspan><tspan class="node-id"> #68</tspan></text><text class="type" text-anchor="middle" y="35" x="60">bool</text><title>#68 LT +[2] → #103 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n68" data-id="68" transform="translate(835,1307)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>LT</tspan><tspan class="node-id"> #68</tspan></text><text class="type" text-anchor="middle" y="35" x="60">bool</text><title>#68 LT bool [0] → — CTRL [1] → #67 DATA -[2] → #18 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n73" data-id="73" transform="translate(734,1569)" style="opacity: 1;"><path class="box" d="M0,0H240V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="120" y="18"><tspan>If</tspan><tspan class="node-id"> #73</tspan></text><text class="type" text-anchor="middle" y="35" x="120">[ Ctrl, Ctrl]</text><title>#73 If +[2] → #18 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n73" data-id="73" transform="translate(734,1411)" style="opacity: 1;"><path class="box" d="M0,0H240V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="120" y="18"><tspan>If</tspan><tspan class="node-id"> #73</tspan></text><text class="type" text-anchor="middle" y="35" x="120">[ Ctrl, Ctrl]</text><title>#73 If [ Ctrl, Ctrl] [0] → #65 CTRL -[1] → #68 DATA</title><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="160" cy="-3" r="3" fill="#536477"/><text class="slot" x="80" y="-10" text-anchor="middle">0</text><text class="slot" x="160" y="-10" text-anchor="middle">1</text></g><g class="node" id="n74" data-id="74" transform="translate(734,1613)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>True</tspan><tspan class="node-id"> #74/0</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#74 True +[1] → #68 DATA</title><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="160" cy="-3" r="3" fill="#536477"/><text class="slot" x="80" y="-10" text-anchor="middle">0</text><text class="slot" x="160" y="-10" text-anchor="middle">1</text></g><g class="node" id="n74" data-id="74" transform="translate(734,1455)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>True</tspan><tspan class="node-id"> #74/0</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#74 True Projection 0 of #73 Ctrl -[0] → #73 CTRL</title></g><g class="node" id="n75" data-id="75" transform="translate(854,1613)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>False</tspan><tspan class="node-id"> #75/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#75 False +[0] → #73 CTRL</title></g><g class="node" id="n75" data-id="75" transform="translate(854,1455)" style="opacity: 1;"><path class="box" d="M0,0H120V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>False</tspan><tspan class="node-id"> #75/1</tspan></text><text class="type" text-anchor="middle" y="35" x="60">Ctrl</text><title>#75 False Projection 1 of #73 Ctrl -[0] → #73 CTRL</title></g><g class="node" id="n88" data-id="88" transform="translate(968,1833)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #88</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#88 Add +[0] → #73 CTRL</title></g><g class="node" id="n88" data-id="88" transform="translate(935,1663)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #88</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#88 Add int [0] → — CTRL [1] → #131 DATA -[2] → #93 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n91" data-id="91" transform="translate(1850,1463)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Shl</tspan><tspan class="node-id"> #91</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#91 Shl +[2] → #93 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n91" data-id="91" transform="translate(1373,1307)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Shl</tspan><tspan class="node-id"> #91</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#91 Shl int [0] → — CTRL [1] → #67 DATA -[2] → #52 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n92" data-id="92" transform="translate(1850,1583.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #92</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#92 Add +[2] → #52 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n92" data-id="92" transform="translate(1373,1425.6666666666667)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #92</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#92 Add int [0] → — CTRL [1] → #91 DATA -[2] → #51 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n93" data-id="93" transform="translate(980,1729)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>ld_ary</tspan><tspan class="node-id"> #93</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#93 ld_ary +[2] → #51 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n93" data-id="93" transform="translate(947,1559)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>ld_ary</tspan><tspan class="node-id"> #93</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#93 ld_ary int [0] → #74 CTRL [1] → #124 MEM [2] → #28 DATA -[3] → #92 DATA</title><circle class="port" cx="24" cy="-3" r="3" fill="#536477"/><circle class="port" cx="48" cy="-3" r="3" fill="#536477"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="96" cy="-3" r="3" fill="#536477"/><text class="slot" x="24" y="-10" text-anchor="middle">0</text><text class="slot" x="48" y="-10" text-anchor="middle">1</text><text class="slot" x="72" y="-10" text-anchor="middle">2</text><text class="slot" x="96" y="-10" text-anchor="middle">3</text></g><g class="node" id="n94" data-id="94" transform="translate(936,1939)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_sum</tspan><tspan class="node-id"> #94</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#2:Bot</text><title>#94 st_sum -MEM#2:Bot - -[0] → — CTRL -[1] → #104 MEM -[2] → #15 DATA -[3] → #4 DATA -[4] → #88 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="white"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g><g class="node" id="n99" data-id="99" transform="translate(1698,1463)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #99</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#99 Add +[3] → #92 DATA</title><circle class="port" cx="24" cy="-3" r="3" fill="#536477"/><circle class="port" cx="48" cy="-3" r="3" fill="#536477"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="96" cy="-3" r="3" fill="#536477"/><text class="slot" x="24" y="-10" text-anchor="middle">0</text><text class="slot" x="48" y="-10" text-anchor="middle">1</text><text class="slot" x="72" y="-10" text-anchor="middle">2</text><text class="slot" x="96" y="-10" text-anchor="middle">3</text></g><g class="node" id="n99" data-id="99" transform="translate(1221,1307)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #99</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#99 Add int [0] → — CTRL -[1] → #138 DATA -[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n100" data-id="100" transform="translate(1655,1569)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_visits</tspan><tspan class="node-id"> #100</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#3:Bot</text><title>#100 st_visits -MEM#3:Bot - -[0] → — CTRL -[1] → #132 MEM -[2] → #15 DATA -[3] → #51 DATA -[4] → #99 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="white"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g><g class="node" id="n103" data-id="103" transform="translate(988,1463)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #103</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#103 Add +[1] → #141 DATA +[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n103" data-id="103" transform="translate(684,1307)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #103</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#103 Add int [0] → — CTRL [1] → #67 DATA -[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n104" data-id="104" transform="translate(1058,1287)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>MemPhi_2</tspan><tspan class="node-id"> #104</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#2:Bot</text><title>#104 MemPhi_2 -MEM#2:Bot - -[0] → #65 ASSOC -[1] → #16 MEM -[2] → #94 MEM</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n106" data-id="106" transform="translate(1919,2080)" style="opacity: 1;"><path class="box" d="M10,0H116L126,10V34L116,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="63" y="18"><tspan>MemMerge</tspan><tspan class="node-id"> #106</tspan></text><text class="type" text-anchor="middle" y="35" x="63">MemBot</text><title>#106 MemMerge +[2] → #46 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n106" data-id="106" transform="translate(1610,1950)" style="opacity: 1;"><path class="box" d="M10,0H116L126,10V34L116,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="63" y="18"><tspan>MemMerge</tspan><tspan class="node-id"> #106</tspan></text><text class="type" text-anchor="middle" y="35" x="63">MemBot</text><title>#106 MemMerge MemBot [0] → — CTRL [1] → #7 MEM -[2] → #104 MEM -[3] → #132 MEM +[2] → #146 MEM +[3] → #142 MEM [4] → #29 MEM -[5] → #124 MEM</title><circle class="port" cx="18" cy="-3" r="3" fill="white"/><circle class="port" cx="36" cy="-3" r="3" fill="#536477"/><circle class="port" cx="54" cy="-3" r="3" fill="#536477"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><circle class="port" cx="108" cy="-3" r="3" fill="#536477"/><text class="slot" x="18" y="-10" text-anchor="middle">0</text><text class="slot" x="36" y="-10" text-anchor="middle">1</text><text class="slot" x="54" y="-10" text-anchor="middle">2</text><text class="slot" x="72" y="-10" text-anchor="middle">3</text><text class="slot" x="90" y="-10" text-anchor="middle">4</text><text class="slot" x="108" y="-10" text-anchor="middle">5</text></g><g class="node" id="n112" data-id="112" transform="translate(2013,1463)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #112</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#112 Add +[5] → #124 MEM</title><circle class="port" cx="18" cy="-3" r="3" fill="white"/><circle class="port" cx="36" cy="-3" r="3" fill="#536477"/><circle class="port" cx="54" cy="-3" r="3" fill="#536477"/><circle class="port" cx="72" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><circle class="port" cx="108" cy="-3" r="3" fill="#536477"/><text class="slot" x="18" y="-10" text-anchor="middle">0</text><text class="slot" x="36" y="-10" text-anchor="middle">1</text><text class="slot" x="54" y="-10" text-anchor="middle">2</text><text class="slot" x="72" y="-10" text-anchor="middle">3</text><text class="slot" x="90" y="-10" text-anchor="middle">4</text><text class="slot" x="108" y="-10" text-anchor="middle">5</text></g><g class="node" id="n112" data-id="112" transform="translate(1536,1307)" style="opacity: 1;"><path class="box" d="M14,0H106Q120,0 120,14V30Q120,44 106,44H14Q0,44 0,30V14Q0,0 14,0Z" fill="#edf3f7"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Add</tspan><tspan class="node-id"> #112</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#112 Add int [0] → — CTRL -[1] → #138 DATA -[2] → #131 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n115" data-id="115" transform="translate(883,2184)" style="opacity: 1;"><path class="box" d="M0,0H124V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="62" y="18"><tspan>Return</tspan><tspan class="node-id"> #115</tspan></text><text class="type" text-anchor="middle" y="35" x="62">[ Ctrl, MemBot, int]</text><title>#115 Return +[1] → #141 DATA +[2] → #131 DATA</title><circle class="port" cx="30" cy="-3" r="3" fill="white"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="90" cy="-3" r="3" fill="#536477"/><text class="slot" x="30" y="-10" text-anchor="middle">0</text><text class="slot" x="60" y="-10" text-anchor="middle">1</text><text class="slot" x="90" y="-10" text-anchor="middle">2</text></g><g class="node" id="n115" data-id="115" transform="translate(883,2054)" style="opacity: 1;"><path class="box" d="M0,0H124V44H0Z" fill="#fff1c4"/><text class="label" text-anchor="middle" x="62" y="18"><tspan>Return</tspan><tspan class="node-id"> #115</tspan></text><text class="type" text-anchor="middle" y="35" x="62">[ Ctrl, MemBot, int]</text><title>#115 Return [ Ctrl, MemBot, int] [0] → #75 CTRL [1] → #106 MEM -[2] → #112 DATA</title><circle class="port" cx="31" cy="-3" r="3" fill="#536477"/><circle class="port" cx="62" cy="-3" r="3" fill="#536477"/><circle class="port" cx="93" cy="-3" r="3" fill="#536477"/><text class="slot" x="31" y="-10" text-anchor="middle">0</text><text class="slot" x="62" y="-10" text-anchor="middle">1</text><text class="slot" x="93" y="-10" text-anchor="middle">2</text></g><g class="node" id="n124" data-id="124" transform="translate(958,567)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>MemPhi_5</tspan><tspan class="node-id"> #124</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#5:Bot</text><title>#124 MemPhi_5 +[2] → #112 DATA</title><circle class="port" cx="31" cy="-3" r="3" fill="#536477"/><circle class="port" cx="62" cy="-3" r="3" fill="#536477"/><circle class="port" cx="93" cy="-3" r="3" fill="#536477"/><text class="slot" x="31" y="-10" text-anchor="middle">0</text><text class="slot" x="62" y="-10" text-anchor="middle">1</text><text class="slot" x="93" y="-10" text-anchor="middle">2</text></g><g class="node" id="n124" data-id="124" transform="translate(958,557)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>MemPhi_5</tspan><tspan class="node-id"> #124</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#5:Bot</text><title>#124 MemPhi_5 MEM#5:Bot [0] → #32 ASSOC [1] → #29 MEM -[2] → #57 MEM</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #32</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n131" data-id="131" transform="translate(1210,1287)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_sum</tspan><tspan class="node-id"> #131</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#131 Phi_sum +[2] → #57 MEM</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #32</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n131" data-id="131" transform="translate(1058,1191)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_sum</tspan><tspan class="node-id"> #131</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#131 Phi_sum int [0] → #65 ASSOC [1] → #4 DATA -[2] → #88 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n132" data-id="132" transform="translate(1362,1287)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>MemPhi_3</tspan><tspan class="node-id"> #132</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#3:Bot</text><title>#132 MemPhi_3 -MEM#3:Bot - -[0] → #65 ASSOC -[1] → #16 MEM -[2] → #100 MEM</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n138" data-id="138" transform="translate(1514,1287)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_visits</tspan><tspan class="node-id"> #138</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#138 Phi_visits +[2] → #88 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n141" data-id="141" transform="translate(1210,1191)" style="opacity: 1;"><path class="box" d="M12,0H108L120,22L108,44H12L0,22Z" fill="#f5e4fa"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>Phi_visits</tspan><tspan class="node-id"> #141</tspan></text><text class="type" text-anchor="middle" y="35" x="60">int</text><title>#141 Phi_visits int [0] → #65 ASSOC [1] → #4 DATA -[2] → #99 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g></g><g class="region-heads" style="opacity: 1;"><g class="region-head" transform="translate(610,473)"><text class="label" x="26" y="17"><tspan>Loop</tspan><tspan class="node-id"> #32</tspan></text><title>Loop · 12 nodes</title><g class="fold-btn" role="button" tabindex="0" transform="translate(4,4)" aria-label="Fold region #32"><rect width="16" height="16" rx="2"/><text x="8" y="12" text-anchor="middle">−</text><title>Fold region</title></g></g><g class="region-head" transform="translate(658,1149)"><text class="label" x="26" y="17"><tspan>Loop</tspan><tspan class="node-id"> #65</tspan></text><title>Loop · 19 nodes</title><g class="fold-btn" role="button" tabindex="0" transform="translate(4,4)" aria-label="Fold region #65"><rect width="16" height="16" rx="2"/><text x="8" y="12" text-anchor="middle">−</text><title>Fold region</title></g></g></g><g class="shortcuts" style="opacity: 1;"/><g class="peep-ghosts" pointer-events="none"/></g></svg> +[2] → #99 DATA</title><circle class="port" cx="-3" cy="22" r="3" fill="#536477"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><path class="reg" fill="none" stroke="#b63838" d="M-3,22H-18m4,-3l-4,3l4,3"><title>[0] → #65</title></path><text class="slot" x="-10" y="15" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="80" y="-10" text-anchor="middle">2</text></g><g class="node" id="n142" data-id="142" transform="translate(1622,1846)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_visits</tspan><tspan class="node-id"> #142</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#3:int</text><title>#142 st_visits +MEM#3:int + +[0] → — CTRL +[1] → #16 MEM +[2] → #15 DATA +[3] → #51 DATA +[4] → #141 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="white"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g><g class="node" id="n146" data-id="146" transform="translate(936,1846)" style="opacity: 1;"><path class="box" d="M10,0H110L120,10V34L110,44H10L0,34V10Z" fill="#dcecff"/><text class="label" text-anchor="middle" x="60" y="18"><tspan>st_sum</tspan><tspan class="node-id"> #146</tspan></text><text class="type" text-anchor="middle" y="35" x="60">MEM#2:int</text><title>#146 st_sum +MEM#2:int + +[0] → — CTRL +[1] → #16 MEM +[2] → #15 DATA +[3] → #4 DATA +[4] → #131 DATA</title><circle class="port" cx="20" cy="-3" r="3" fill="white"/><circle class="port" cx="40" cy="-3" r="3" fill="#536477"/><circle class="port" cx="60" cy="-3" r="3" fill="#536477"/><circle class="port" cx="80" cy="-3" r="3" fill="#536477"/><circle class="port" cx="100" cy="-3" r="3" fill="#536477"/><text class="slot" x="20" y="-10" text-anchor="middle">0</text><text class="slot" x="40" y="-10" text-anchor="middle">1</text><text class="slot" x="60" y="-10" text-anchor="middle">2</text><text class="slot" x="80" y="-10" text-anchor="middle">3</text><text class="slot" x="100" y="-10" text-anchor="middle">4</text></g></g><g class="region-heads" style="opacity: 1;"><g class="region-head" transform="translate(600,463)"><text class="label" x="26" y="17"><tspan>Loop</tspan><tspan class="node-id"> #32</tspan></text><title>Loop · 12 nodes</title><g class="fold-btn" role="button" tabindex="0" transform="translate(4,4)" aria-label="Fold region #32"><rect width="16" height="16" rx="2"/><text x="8" y="12" text-anchor="middle">−</text><title>Fold region</title></g></g><g class="region-head" transform="translate(650,1069)"><text class="label" x="26" y="17"><tspan>Loop</tspan><tspan class="node-id"> #65</tspan></text><title>Loop · 15 nodes</title><g class="fold-btn" role="button" tabindex="0" transform="translate(4,4)" aria-label="Fold region #65"><rect width="16" height="16" rx="2"/><text x="8" y="12" text-anchor="middle">−</text><title>Fold region</title></g></g></g><g class="shortcuts" style="opacity: 1;"/><g class="peep-ghosts" pointer-events="none"/></g></svg> |
