2026-05-18 10:04:49 -04:00
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
< !DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
2026-05-18 10:08:43 -04:00
<!-- Generated by graphviz version 14.1.2 (20260124.0452)
2026-05-18 10:04:49 -04:00
-->
<!-- Title: src/composition/include/fourdst/composition/utils.h Pages: 1 -->
2026-05-18 10:08:43 -04:00
<!-- zoomable 360 -->
2026-05-18 10:04:49 -04:00
<svg id= "main" version= "1.1" xmlns= "http://www.w3.org/2000/svg" xmlns:xlink= "http://www.w3.org/1999/xlink" xml:space= "preserve" onload= "init(evt)" >
<style type= "text/css" > < ![CDATA[
.node, .edge {opacity: 0.7;}
.node.selected, .edge.selected {opacity: 1;}
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<defs >
<circle id= "rim" cx= "0" cy= "0" r= "7" />
<circle id= "rim2" cx= "0" cy= "0" r= "3.5" />
<g id= "zoomPlus" >
<use xlink:href= "#rim" fill= "#404040" > <set attributeName= "fill" to= "#808080" begin= "zoomplus.mouseover" end= "zoomplus.mouseout" /> </use>
<path d= "M-4,0h8M0,-4v8" fill= "none" stroke= "white" stroke-width= "1.5" pointer-events= "none" />
</g>
<g id= "zoomMin" >
<use xlink:href= "#rim" fill= "#404040" > <set attributeName= "fill" to= "#808080" begin= "zoomminus.mouseover" end= "zoomminus.mouseout" /> </use>
<path d= "M-4,0h8" fill= "none" stroke= "white" stroke-width= "1.5" pointer-events= "none" />
</g>
<g id= "arrowUp" transform= "translate(30 24)" >
<use xlink:href= "#rim" />
<path pointer-events= "none" fill= "none" stroke= "white" stroke-width= "1.5" d= "M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5" />
</g>
<g id= "arrowRight" transform= "rotate(90) translate(36 -43)" >
<use xlink:href= "#rim" />
<path pointer-events= "none" fill= "none" stroke= "white" stroke-width= "1.5" d= "M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5" />
</g>
<g id= "arrowDown" transform= "rotate(180) translate(-30 -48)" >
<use xlink:href= "#rim" />
<path pointer-events= "none" fill= "none" stroke= "white" stroke-width= "1.5" d= "M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5" />
</g>
<g id= "arrowLeft" transform= "rotate(270) translate(-36 17)" >
<use xlink:href= "#rim" />
<path pointer-events= "none" fill= "none" stroke= "white" stroke-width= "1.5" d= "M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5" />
</g>
<g id= "resetDef" >
<use xlink:href= "#rim2" fill= "#404040" > <set attributeName= "fill" to= "#808080" begin= "reset.mouseover" end= "reset.mouseout" /> </use>
</g>
</defs>
<script type= "application/ecmascript" >
2026-05-18 10:08:43 -04:00
var viewWidth = 896;
var viewHeight = 360;
2026-05-18 10:04:49 -04:00
var sectionId = 'dynsection-0';
</script>
<script type= "application/ecmascript" xlink:href= "svg.min.js" />
<svg id= "graph" class= "graph" >
<g id= "viewport" >
<title > src/composition/include/fourdst/composition/utils.h</title>
<!-- Node1 -->
<g id= "Node000001" class= "node" >
<title > Node1</title>
<g id= "a_Node000001" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "#999999" stroke= "#666666" points= "421.88,-351.75 288.12,-351.75 288.12,-321.25 421.88,-321.25 421.88,-351.75" />
<text xml:space= "preserve" text-anchor= "start" x= "296.12" y= "-338.25" font-family= "Helvetica,sans-Serif" font-size= "10.00" > src/composition/include</text>
<text xml:space= "preserve" text-anchor= "middle" x= "355" y= "-327" font-family= "Helvetica,sans-Serif" font-size= "10.00" > /fourdst/composition/utils.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2 -->
<g id= "Node000002" class= "node" >
<title > Node2</title>
<g id= "a_Node000002" > <a xlink:href= "composition_8h.html" target= "_top" xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "white" stroke= "#666666" points= "405.75,-285.25 304.25,-285.25 304.25,-254.75 405.75,-254.75 405.75,-285.25" />
<text xml:space= "preserve" text-anchor= "start" x= "312.25" y= "-271.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/composition</text>
<text xml:space= "preserve" text-anchor= "middle" x= "355" y= "-260.5" font-family= "Helvetica,sans-Serif" font-size= "10.00" > /composition.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node1->Node2 -->
<g id= "edge1_Node000001_Node000002" class= "edge" >
<title > Node1- > Node2</title>
<g id= "a_edge1_Node000001_Node000002" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M355,-320.86C355,-313.77 355,-305.04 355,-296.88" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "358.5,-297.09 355,-287.09 351.5,-297.09 358.5,-297.09" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node3 -->
<g id= "Node000003" class= "node" >
<title > Node3</title>
<g id= "a_Node000003" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "103,-19.25 63,-19.25 63,0 103,0 103,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "83" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > string</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node1->Node3 -->
<g id= "edge33_Node000001_Node000003" class= "edge" >
<title > Node1- > Node3</title>
<g id= "a_edge33_Node000001_Node000003" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M287.81,-324.81C184.89,-306.51 0,-265.19 0,-204.5 0,-204.5 0,-204.5 0,-130.38 0,-86.86 37.48,-47.76 62.07,-26.78" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "64.07,-29.67 69.58,-20.62 59.63,-24.25 64.07,-29.67" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node6 -->
<g id= "Node000006" class= "node" >
<title > Node6</title>
<g id= "a_Node000006" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "874.88,-19.25 825.12,-19.25 825.12,0 874.88,0 874.88,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "850" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > optional</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node1->Node6 -->
<g id= "edge32_Node000001_Node000006" class= "edge" >
<title > Node1- > Node6</title>
<g id= "a_edge32_Node000001_Node000006" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M422.23,-333.02C565.52,-325.91 888,-299.37 888,-204.5 888,-204.5 888,-204.5 888,-130.38 888,-93.43 871.36,-52.95 860.11,-29.79" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "863.29,-28.32 855.65,-20.98 857.04,-31.48 863.29,-28.32" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node12 -->
<g id= "Node000012" class= "node" >
<title > Node12</title>
<g id= "a_Node000012" > <a xlink:href= "atomic_species_8h.html" target= "_top" xlink:title= " " >
<polygon fill= "white" stroke= "#666666" points= "414,-74.5 260,-74.5 260,-55.25 414,-55.25 414,-74.5" />
<text xml:space= "preserve" text-anchor= "middle" x= "337" y= "-61" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/atomic/atomicSpecies.h</text>
</a>
</g>
</g>
<!-- Node1->Node12 -->
<g id= "edge30_Node000001_Node000012" class= "edge" >
<title > Node1- > Node12</title>
<g id= "a_edge30_Node000001_Node000012" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M295.3,-320.79C243.84,-304.77 172.14,-273.76 135,-218.75 108.02,-178.79 97.68,-147.98 128,-110.5 143.43,-91.43 198.69,-80.15 248.52,-73.71" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "248.71,-77.21 258.21,-72.51 247.85,-70.26 248.71,-77.21" />
</a>
</g>
</g>
<!-- Node18 -->
<g id= "Node000018" class= "node" >
<title > Node18</title>
<g id= "a_Node000018" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "695.5,-74.5 652.5,-74.5 652.5,-55.25 695.5,-55.25 695.5,-74.5" />
<text xml:space= "preserve" text-anchor= "middle" x= "674" y= "-61" font-family= "Helvetica,sans-Serif" font-size= "10.00" > vector</text>
</a>
</g>
</g>
<!-- Node1->Node18 -->
<g id= "edge31_Node000001_Node000018" class= "edge" >
<title > Node1- > Node18</title>
<g id= "a_edge31_Node000001_Node000018" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M422.12,-334.44C512,-329.46 671.32,-307.63 768,-218.75 804.35,-185.33 821.13,-151.08 793,-110.5 773.76,-82.73 734.96,-72.22 706.88,-68.25" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "707.44,-64.79 697.1,-67.1 706.62,-71.74 707.44,-64.79" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node3 -->
<g id= "edge2_Node000002_Node000003" class= "edge" >
<title > Node2- > Node3</title>
<g id= "a_edge2_Node000002_Node000003" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M303.98,-263.53C246.69,-256.36 158.61,-241.89 135,-218.75 82.8,-167.6 80.07,-72.58 81.64,-31" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "85.13,-31.39 82.15,-21.22 78.14,-31.02 85.13,-31.39" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node4 -->
<g id= "Node000004" class= "node" >
<title > Node4</title>
<g id= "a_Node000004" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "#e0e0e0" stroke= "#999999" points= "784.38,-141 701.62,-141 701.62,-121.75 784.38,-121.75 784.38,-141" />
<text xml:space= "preserve" text-anchor= "middle" x= "743" y= "-127.5" font-family= "Helvetica,sans-Serif" font-size= "10.00" > unordered_map</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node4 -->
<g id= "edge3_Node000002_Node000004" class= "edge" >
<title > Node2- > Node4</title>
<g id= "a_edge3_Node000002_Node000004" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M406.1,-266.19C507.58,-260.09 726.67,-244.11 749,-218.75 764.96,-200.63 758.52,-171.23 751.52,-151.85" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "754.81,-150.65 747.84,-142.67 748.31,-153.26 754.81,-150.65" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node5 -->
<g id= "Node000005" class= "node" >
<title > Node5</title>
<g id= "a_Node000005" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "#e0e0e0" stroke= "#999999" points= "176.75,-141 147.25,-141 147.25,-121.75 176.75,-121.75 176.75,-141" />
<text xml:space= "preserve" text-anchor= "middle" x= "162" y= "-127.5" font-family= "Helvetica,sans-Serif" font-size= "10.00" > set</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node5 -->
<g id= "edge4_Node000002_Node000005" class= "edge" >
<title > Node2- > Node5</title>
<g id= "a_edge4_Node000002_Node000005" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M304.02,-261.62C255.74,-253.52 188.15,-238.94 171,-218.75 155.62,-200.64 155.77,-172.1 158.15,-152.83" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "161.61,-153.38 159.71,-142.96 154.69,-152.29 161.61,-153.38" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node6 -->
<g id= "edge5_Node000002_Node000006" class= "edge" >
<title > Node2- > Node6</title>
<g id= "a_edge5_Node000002_Node000006" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M406.19,-269.13C503.98,-268.37 712.58,-261.61 768,-218.75 828.69,-171.81 844.55,-73.37 848.62,-30.87" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "852.09,-31.36 849.42,-21.11 845.12,-30.79 852.09,-31.36" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node7 -->
<g id= "Node000007" class= "node" >
<title > Node7</title>
<g id= "a_Node000007" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "#e0e0e0" stroke= "#999999" points= "257.75,-213.12 180.25,-213.12 180.25,-193.88 257.75,-193.88 257.75,-213.12" />
<text xml:space= "preserve" text-anchor= "middle" x= "219" y= "-199.62" font-family= "Helvetica,sans-Serif" font-size= "10.00" > unordered_set</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node7 -->
<g id= "edge6_Node000002_Node000007" class= "edge" >
<title > Node2- > Node7</title>
<g id= "a_edge6_Node000002_Node000007" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M324.14,-254.36C301.38,-243.57 270.6,-228.97 248.23,-218.36" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "249.9,-215.28 239.36,-214.16 246.9,-221.61 249.9,-215.28" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node8 -->
<g id= "Node000008" class= "node" >
<title > Node8</title>
<g id= "a_Node000008" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<polygon fill= "#e0e0e0" stroke= "#999999" points= "331.88,-213.12 276.12,-213.12 276.12,-193.88 331.88,-193.88 331.88,-213.12" />
<text xml:space= "preserve" text-anchor= "middle" x= "304" y= "-199.62" font-family= "Helvetica,sans-Serif" font-size= "10.00" > expected</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node8 -->
<g id= "edge7_Node000002_Node000008" class= "edge" >
<title > Node2- > Node8</title>
<g id= "a_edge7_Node000002_Node000008" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M343.43,-254.36C335.86,-244.79 325.92,-232.22 317.92,-222.1" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "320.86,-220.18 311.91,-214.51 315.37,-224.52 320.86,-220.18" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node9 -->
<g id= "Node000009" class= "node" >
<title > Node9</title>
2026-05-18 10:08:43 -04:00
<g id= "a_Node000009" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "462.38,-213.12 349.62,-213.12 349.62,-193.88 462.38,-193.88 462.38,-213.12" />
<text xml:space= "preserve" text-anchor= "middle" x= "406" y= "-199.62" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/config/config.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node9 -->
<g id= "edge8_Node000002_Node000009" class= "edge" >
<title > Node2- > Node9</title>
<g id= "a_edge8_Node000002_Node000009" > <a xlink:title= " " >
2026-05-18 10:08:43 -04:00
<path fill= "none" stroke= "#63b8ff" d= "M366.57,-254.36C374.14,-244.79 384.08,-232.22 392.08,-222.1" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "394.63,-224.52 398.09,-214.51 389.14,-220.18 394.63,-224.52" />
</a>
</g>
</g>
<!-- Node10 -->
<g id= "Node000010" class= "node" >
<title > Node10</title>
<g id= "a_Node000010" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "601.88,-213.12 480.12,-213.12 480.12,-193.88 601.88,-193.88 601.88,-213.12" />
<text xml:space= "preserve" text-anchor= "middle" x= "541" y= "-199.62" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/logging/logging.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
<!-- Node2->Node10 -->
2026-05-18 10:08:43 -04:00
<g id= "edge9_Node000002_Node000010" class= "edge" >
2026-05-18 10:04:49 -04:00
<title > Node2- > Node10</title>
2026-05-18 10:08:43 -04:00
<g id= "a_edge9_Node000002_Node000010" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M397.21,-254.36C429.38,-243.21 473.24,-228 504.04,-217.32" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "505.02,-220.68 513.32,-214.1 502.72,-214.07 505.02,-220.68" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11 -->
<g id= "Node000011" class= "node" >
<title > Node11</title>
<g id= "a_Node000011" > <a xlink:href= "composition__abstract_8h.html" target= "_top" xlink:title= " " >
<polygon fill= "white" stroke= "#666666" points= "740.12,-218.75 619.88,-218.75 619.88,-188.25 740.12,-188.25 740.12,-218.75" />
<text xml:space= "preserve" text-anchor= "start" x= "627.88" y= "-205.25" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/composition</text>
<text xml:space= "preserve" text-anchor= "middle" x= "680" y= "-194" font-family= "Helvetica,sans-Serif" font-size= "10.00" > /composition_abstract.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node2->Node11 -->
<g id= "edge10_Node000002_Node000011" class= "edge" >
<title > Node2- > Node11</title>
<g id= "a_edge10_Node000002_Node000011" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M406.03,-259.14C455.3,-249.58 532.32,-234.55 608.23,-219.3" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "608.83,-222.75 617.94,-217.34 607.45,-215.89 608.83,-222.75" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node2->Node12 -->
<g id= "edge29_Node000002_Node000012" class= "edge" >
<title > Node2- > Node12</title>
<g id= "a_edge29_Node000002_Node000012" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M303.83,-262.31C251.41,-254.43 174.76,-239.7 154,-218.75 132.6,-197.16 141.58,-182.44 138,-152.25 135.81,-133.82 126.4,-124.99 138,-110.5 152.18,-92.79 202.05,-81.62 248.32,-74.89" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "248.74,-78.37 258.17,-73.52 247.78,-71.43 248.74,-78.37" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node3 -->
<g id= "edge24_Node000011_Node000003" class= "edge" >
<title > Node11- > Node3</title>
<g id= "a_edge24_Node000011_Node000003" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M619.45,-189.84C616.59,-189.29 613.77,-188.76 611,-188.25 512.26,-170.09 483.99,-181.67 388,-152.25 279.09,-118.87 159.01,-54.1 108.06,-25.18" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "110,-22.26 99.58,-20.33 106.53,-28.33 110,-22.26" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node4 -->
<g id= "edge25_Node000011_Node000004" class= "edge" >
<title > Node11- > Node4</title>
<g id= "a_edge25_Node000011_Node000004" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M693.05,-187.97C703.06,-176.83 716.91,-161.41 727.49,-149.64" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "730.04,-152.04 734.12,-142.26 724.83,-147.36 730.04,-152.04" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node5 -->
<g id= "edge26_Node000011_Node000005" class= "edge" >
<title > Node11- > Node5</title>
<g id= "a_edge26_Node000011_Node000005" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M619.49,-189.59C616.62,-189.11 613.78,-188.66 611,-188.25 433.54,-162.07 383.04,-195.71 209,-152.25 201.78,-150.45 194.24,-147.69 187.36,-144.79" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "189.19,-141.78 178.63,-140.87 186.32,-148.16 189.19,-141.78" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node12 -->
<g id= "edge11_Node000011_Node000012" class= "edge" >
<title > Node11- > Node12</title>
<g id= "a_edge11_Node000011_Node000012" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M619.48,-189.49C556.05,-175.75 464.51,-155.63 457,-152.25 417.06,-134.28 377.05,-101.89 354.81,-82.29" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "357.32,-79.84 347.54,-75.76 352.64,-85.05 357.32,-79.84" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node17 -->
<g id= "Node000017" class= "node" >
<title > Node17</title>
<g id= "a_Node000017" > <a xlink:href= "composition__abstract__iterator_8h.html" target= "_top" xlink:title= " " >
<polygon fill= "white" stroke= "#666666" points= "575.88,-152.25 466.12,-152.25 466.12,-110.5 575.88,-110.5 575.88,-152.25" />
<text xml:space= "preserve" text-anchor= "start" x= "474.12" y= "-138.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > fourdst/composition</text>
<text xml:space= "preserve" text-anchor= "start" x= "474.12" y= "-127.5" font-family= "Helvetica,sans-Serif" font-size= "10.00" > /iterators/composition</text>
<text xml:space= "preserve" text-anchor= "middle" x= "521" y= "-116.25" font-family= "Helvetica,sans-Serif" font-size= "10.00" > _abstract_iterator.h</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node17 -->
<g id= "edge18_Node000011_Node000017" class= "edge" >
<title > Node11- > Node17</title>
<g id= "a_edge18_Node000011_Node000017" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M646.67,-187.8C626.61,-178.95 600.55,-167.46 577.37,-157.24" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "578.9,-154.08 568.34,-153.25 576.07,-160.49 578.9,-154.08" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node11->Node18 -->
<g id= "edge27_Node000011_Node000018" class= "edge" >
<title > Node11- > Node18</title>
<g id= "a_edge27_Node000011_Node000018" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M679.36,-187.88C678.28,-163.39 676.12,-114.05 674.89,-86.2" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "678.39,-86.12 674.46,-76.29 671.4,-86.43 678.39,-86.12" />
</a>
</g>
</g>
<!-- Node22 -->
<g id= "Node000022" class= "node" >
<title > Node22</title>
<g id= "a_Node000022" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "645.62,-141 594.38,-141 594.38,-121.75 645.62,-121.75 645.62,-141" />
<text xml:space= "preserve" text-anchor= "middle" x= "620" y= "-127.5" font-family= "Helvetica,sans-Serif" font-size= "10.00" > memory</text>
</a>
</g>
</g>
<!-- Node11->Node22 -->
<g id= "edge28_Node000011_Node000022" class= "edge" >
<title > Node11- > Node22</title>
<g id= "a_edge28_Node000011_Node000022" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M667.57,-187.97C658.03,-176.83 644.85,-161.41 634.77,-149.64" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "637.64,-147.61 628.48,-142.28 632.32,-152.16 637.64,-147.61" />
</a>
</g>
</g>
<!-- Node12->Node3 -->
<g id= "edge14_Node000012_Node000003" class= "edge" >
<title > Node12- > Node3</title>
<g id= "a_edge14_Node000012_Node000003" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M293.62,-54.78C242.77,-44.12 159.71,-26.71 114.59,-17.25" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "115.43,-13.85 104.93,-15.22 114,-20.7 115.43,-13.85" />
</a>
</g>
</g>
<!-- Node12->Node6 -->
<g id= "edge15_Node000012_Node000006" class= "edge" >
<title > Node12- > Node6</title>
<g id= "a_edge15_Node000012_Node000006" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M414.36,-55.85C526.67,-44.19 730.52,-23.03 813.44,-14.42" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "813.68,-17.91 823.27,-13.4 812.96,-10.95 813.68,-17.91" />
</a>
</g>
</g>
<!-- Node13 -->
<g id= "Node000013" class= "node" >
<title > Node13</title>
<g id= "a_Node000013" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "460.88,-19.25 417.12,-19.25 417.12,0 460.88,0 460.88,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "439" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > format</text>
</a>
</g>
</g>
<!-- Node12->Node13 -->
<g id= "edge12_Node000012_Node000013" class= "edge" >
<title > Node12- > Node13</title>
<g id= "a_edge12_Node000012_Node000013" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M354.3,-54.84C369.98,-46.66 393.35,-34.46 411.58,-24.94" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "413.03,-28.13 420.27,-20.4 409.79,-21.93 413.03,-28.13" />
</a>
</g>
</g>
<!-- Node14 -->
<g id= "Node000014" class= "node" >
<title > Node14</title>
<g id= "a_Node000014" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "265.75,-19.25 200.25,-19.25 200.25,0 265.75,0 265.75,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "233" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > string_view</text>
</a>
</g>
</g>
<!-- Node12->Node14 -->
<g id= "edge13_Node000012_Node000014" class= "edge" >
<title > Node12- > Node14</title>
<g id= "a_edge13_Node000012_Node000014" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M319.36,-54.84C303.37,-46.66 279.54,-34.46 260.96,-24.94" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "262.57,-21.83 252.08,-20.39 259.38,-28.07 262.57,-21.83" />
</a>
</g>
</g>
<!-- Node15 -->
<g id= "Node000015" class= "node" >
<title > Node15</title>
<g id= "a_Node000015" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "322.62,-19.25 283.38,-19.25 283.38,0 322.62,0 322.62,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "303" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > limits</text>
</a>
</g>
</g>
<!-- Node12->Node15 -->
<g id= "edge16_Node000012_Node000015" class= "edge" >
<title > Node12- > Node15</title>
<g id= "a_edge16_Node000012_Node000015" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M331.39,-55.08C326.88,-48.03 320.41,-37.9 314.79,-29.08" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "317.88,-27.43 309.55,-20.88 311.98,-31.2 317.88,-27.43" />
</a>
</g>
</g>
<!-- Node16 -->
<g id= "Node000016" class= "node" >
<title > Node16</title>
<g id= "a_Node000016" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "399.38,-19.25 340.62,-19.25 340.62,0 399.38,0 399.38,-19.25" />
<text xml:space= "preserve" text-anchor= "middle" x= "370" y= "-5.75" font-family= "Helvetica,sans-Serif" font-size= "10.00" > stdexcept</text>
</a>
</g>
</g>
<!-- Node12->Node16 -->
<g id= "edge17_Node000012_Node000016" class= "edge" >
<title > Node12- > Node16</title>
<g id= "a_edge17_Node000012_Node000016" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M342.45,-55.08C346.77,-48.11 352.96,-38.12 358.38,-29.37" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "361.34,-31.24 363.64,-20.9 355.39,-27.55 361.34,-31.24" />
</a>
</g>
</g>
<!-- Node17->Node12 -->
<g id= "edge23_Node000017_Node000012" class= "edge" >
<title > Node17- > Node12</title>
<g id= "a_edge23_Node000017_Node000012" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M465.79,-111.02C435.97,-100.57 399.97,-87.95 373.62,-78.71" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "374.99,-75.48 364.39,-75.48 372.67,-82.09 374.99,-75.48" />
</a>
</g>
</g>
<!-- Node17->Node18 -->
<g id= "edge19_Node000017_Node000018" class= "edge" >
<title > Node17- > Node18</title>
<g id= "a_edge19_Node000017_Node000018" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M568.99,-110.14C592.87,-100.08 621.08,-88.19 642.24,-79.26" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "643.36,-82.59 651.21,-75.48 640.64,-76.14 643.36,-82.59" />
</a>
</g>
</g>
<!-- Node19 -->
<g id= "Node000019" class= "node" >
<title > Node19</title>
<g id= "a_Node000019" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "612,-74.5 566,-74.5 566,-55.25 612,-55.25 612,-74.5" />
<text xml:space= "preserve" text-anchor= "middle" x= "589" y= "-61" font-family= "Helvetica,sans-Serif" font-size= "10.00" > iterator</text>
</a>
</g>
</g>
<!-- Node17->Node19 -->
<g id= "edge20_Node000017_Node000019" class= "edge" >
<title > Node17- > Node19</title>
<g id= "a_edge20_Node000017_Node000019" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M542.14,-110.32C551.5,-101.44 562.38,-91.12 571.3,-82.66" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "573.49,-85.41 578.34,-75.99 568.68,-80.33 573.49,-85.41" />
</a>
</g>
</g>
<!-- Node20 -->
<g id= "Node000020" class= "node" >
<title > Node20</title>
<g id= "a_Node000020" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "476.62,-74.5 437.38,-74.5 437.38,-55.25 476.62,-55.25 476.62,-74.5" />
<text xml:space= "preserve" text-anchor= "middle" x= "457" y= "-61" font-family= "Helvetica,sans-Serif" font-size= "10.00" > utility</text>
</a>
</g>
</g>
<!-- Node17->Node20 -->
<g id= "edge21_Node000017_Node000020" class= "edge" >
<title > Node17- > Node20</title>
<g id= "a_edge21_Node000017_Node000020" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M501.1,-110.32C492.39,-101.54 482.27,-91.34 473.92,-82.93" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "476.59,-80.65 467.07,-76.02 471.63,-85.58 476.59,-80.65" />
</a>
</g>
</g>
<!-- Node21 -->
<g id= "Node000021" class= "node" >
<title > Node21</title>
<g id= "a_Node000021" > <a xlink:title= " " >
<polygon fill= "#e0e0e0" stroke= "#999999" points= "547.75,-74.5 494.25,-74.5 494.25,-55.25 547.75,-55.25 547.75,-74.5" />
<text xml:space= "preserve" text-anchor= "middle" x= "521" y= "-61" font-family= "Helvetica,sans-Serif" font-size= "10.00" > compare</text>
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
2026-05-18 10:08:43 -04:00
<!-- Node17->Node21 -->
<g id= "edge22_Node000017_Node000021" class= "edge" >
<title > Node17- > Node21</title>
<g id= "a_edge22_Node000017_Node000021" > <a xlink:title= " " >
<path fill= "none" stroke= "#63b8ff" d= "M521,-110.32C521,-102.65 521,-93.89 521,-86.2" />
<polygon fill= "#63b8ff" stroke= "#63b8ff" points= "524.5,-86.46 521,-76.46 517.5,-86.46 524.5,-86.46" />
2026-05-18 10:04:49 -04:00
</a>
</g>
</g>
</g>
</svg>
<g id= "navigator" transform= "translate(0 0)" fill= "#404254" >
<rect fill= "#f2f5e9" fill-opacity= "0.5" stroke= "#606060" stroke-width= ".5" x= "0" y= "0" width= "60" height= "60" />
<use id= "zoomplus" xlink:href= "#zoomPlus" x= "17" y= "9" onmousedown= "handleZoom(evt,'in')" />
<use id= "zoomminus" xlink:href= "#zoomMin" x= "42" y= "9" onmousedown= "handleZoom(evt,'out')" />
<use id= "reset" xlink:href= "#resetDef" x= "30" y= "36" onmousedown= "handleReset()" />
<use id= "arrowup" xlink:href= "#arrowUp" x= "0" y= "0" onmousedown= "handlePan(0,-1)" />
<use id= "arrowright" xlink:href= "#arrowRight" x= "0" y= "0" onmousedown= "handlePan(1,0)" />
<use id= "arrowdown" xlink:href= "#arrowDown" x= "0" y= "0" onmousedown= "handlePan(0,1)" />
<use id= "arrowleft" xlink:href= "#arrowLeft" x= "0" y= "0" onmousedown= "handlePan(-1,0)" />
</g>
<svg viewBox= "0 0 15 15" width= "100%" height= "30px" preserveAspectRatio= "xMaxYMin meet" >
<g id= "arrow_out" transform= "scale(0.3 0.3)" >
<a xlink:href= "utils_8h__incl_org.svg" target= "_base" >
<rect id= "button" ry= "5" rx= "5" y= "6" x= "6" height= "38" width= "38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id= "arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
<style type= 'text/css' >
< ![CDATA[
[data-mouse-over-selected='false'] { opacity: 0.7; }
[data-mouse-over-selected='true'] { opacity: 1.0; }
]]>
</style>
<script type= "application/ecmascript" > < ![CDATA[
document.addEventListener('DOMContentLoaded', (event) => {
highlightEdges();
highlightAdjacentNodes();
});
]]></script>
</svg>