Files
libcomposition/docs/html/composition__masked_8cpp__incl.svg

1090 lines
52 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 14.1.2 (20260124.0452)
-->
<!-- Title: src/composition/lib/decorators/composition_masked.cpp Pages: 1 -->
<!--zoomable 460 -->
<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">
var viewWidth = 1988;
var viewHeight = 460;
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/lib/decorators/composition_masked.cpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="1214.12,-452 1093.88,-452 1093.88,-410.25 1214.12,-410.25 1214.12,-452"/>
<text xml:space="preserve" text-anchor="start" x="1101.88" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">src/composition/lib</text>
<text xml:space="preserve" text-anchor="start" x="1101.88" y="-427.25" font-family="Helvetica,sans-Serif" font-size="10.00">/decorators/composition</text>
<text xml:space="preserve" text-anchor="middle" x="1154" y="-416" font-family="Helvetica,sans-Serif" font-size="10.00">_masked.cpp</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="composition__masked_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="599.12,-374.25 478.88,-374.25 478.88,-332.5 599.12,-332.5 599.12,-374.25"/>
<text xml:space="preserve" text-anchor="start" x="486.88" y="-360.75" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="start" x="486.88" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">/decorators/composition</text>
<text xml:space="preserve" text-anchor="middle" x="539" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">_masked.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node2 -->
<g id="edge1_Node000001_Node000002" class="edge">
<title>Node1&#45;&gt;Node2</title>
<g id="a_edge1_Node000001_Node000002"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1093.63,-422.69C979.47,-408.63 732.46,-378.2 610.33,-363.16"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="611.12,-359.73 600.77,-361.98 610.26,-366.68 611.12,-359.73"/>
</a>
</g>
</g>
<!-- Node3 -->
<g id="Node000003" class="node">
<title>Node3</title>
<g id="a_Node000003"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="154.5,-74.5 111.5,-74.5 111.5,-55.25 154.5,-55.25 154.5,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="133" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">vector</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node3 -->
<g id="edge55_Node000001_Node000003" class="edge">
<title>Node1&#45;&gt;Node3</title>
<g id="a_edge55_Node000001_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1093.42,-428.84C917.79,-424.73 410.68,-410.01 249,-374.25 132.94,-348.58 0,-395.49 0,-276.62 0,-276.62 0,-276.62 0,-202.5 0,-143.83 63.76,-100.9 102.99,-80.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="104.44,-83.24 111.74,-75.57 101.25,-77.01 104.44,-83.24"/>
</a>
</g>
</g>
<!-- Node4 -->
<g id="Node000004" class="node">
<title>Node4</title>
<g id="a_Node000004"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="242.75,-141 213.25,-141 213.25,-121.75 242.75,-121.75 242.75,-141"/>
<text xml:space="preserve" text-anchor="middle" x="228" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">set</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node4 -->
<g id="edge56_Node000001_Node000004" class="edge">
<title>Node1&#45;&gt;Node4</title>
<g id="a_edge56_Node000001_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1093.48,-429.56C973.47,-427.49 697.28,-417.92 470,-374.25 354.48,-352.05 289.9,-388.82 217,-296.5 183.59,-254.2 205.43,-185.06 219.2,-151.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="222.27,-153.38 223.04,-142.81 215.85,-150.59 222.27,-153.38"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="808.38,-141 725.62,-141 725.62,-121.75 808.38,-121.75 808.38,-141"/>
<text xml:space="preserve" text-anchor="middle" x="767" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">unordered_map</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node5 -->
<g id="edge57_Node000001_Node000005" class="edge">
<title>Node1&#45;&gt;Node5</title>
<g id="a_edge57_Node000001_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1093.63,-412.91C1011.06,-386 864.85,-325.64 792,-218.75 778.36,-198.73 772.07,-171.24 769.23,-152.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="772.73,-152.45 767.96,-142.99 765.79,-153.36 772.73,-152.45"/>
</a>
</g>
</g>
<!-- Node6 -->
<g id="Node000006" class="node">
<title>Node6</title>
<g id="a_Node000006"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1733.62,-141 1682.38,-141 1682.38,-121.75 1733.62,-121.75 1733.62,-141"/>
<text xml:space="preserve" text-anchor="middle" x="1708" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">memory</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node6 -->
<g id="edge53_Node000001_Node000006" class="edge">
<title>Node1&#45;&gt;Node6</title>
<g id="a_edge53_Node000001_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1214.5,-425.94C1352.9,-414.99 1685.82,-380.32 1753,-296.5 1788.33,-252.42 1745.78,-182.62 1721.97,-150.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1725.04,-148.36 1716.21,-142.5 1719.46,-152.59 1725.04,-148.36"/>
</a>
</g>
</g>
<!-- Node7 -->
<g id="Node000007" class="node">
<title>Node7</title>
<g id="a_Node000007"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1453,-19.25 1413,-19.25 1413,0 1453,0 1453,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="1433" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">string</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node7 -->
<g id="edge54_Node000001_Node000007" class="edge">
<title>Node1&#45;&gt;Node7</title>
<g id="a_edge54_Node000001_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1214.41,-430.43C1391.33,-429.71 1896,-415.49 1896,-276.62 1896,-276.62 1896,-276.62 1896,-130.38 1896,-90.75 1881.68,-76.12 1848,-55.25 1783.94,-15.56 1550.02,-10.91 1464.55,-10.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1464.8,-7.06 1454.79,-10.54 1464.79,-14.06 1464.8,-7.06"/>
</a>
</g>
</g>
<!-- Node21 -->
<g id="Node000021" class="node">
<title>Node21</title>
<g id="a_Node000021"><a xlink:href="exceptions__composition_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1868.25,-152.25 1751.75,-152.25 1751.75,-110.5 1868.25,-110.5 1868.25,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="1759.75" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="start" x="1759.75" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/exceptions/exceptions</text>
<text xml:space="preserve" text-anchor="middle" x="1810" y="-116.25" font-family="Helvetica,sans-Serif" font-size="10.00">_composition.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node21 -->
<g id="edge37_Node000001_Node000021" class="edge">
<title>Node1&#45;&gt;Node21</title>
<g id="a_edge37_Node000001_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1214.44,-426.94C1329.6,-420.29 1576.1,-403.12 1656,-374.25 1715.07,-352.91 1738.43,-348.26 1774,-296.5 1801.41,-256.61 1808.41,-199.47 1809.95,-164.21"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1813.45,-164.33 1810.24,-154.23 1806.45,-164.12 1813.45,-164.33"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="species_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1025.62,-285.25 902.38,-285.25 902.38,-266 1025.62,-266 1025.62,-285.25"/>
<text xml:space="preserve" text-anchor="middle" x="964" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/atomic/species.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node23 -->
<g id="edge41_Node000001_Node000023" class="edge">
<title>Node1&#45;&gt;Node23</title>
<g id="a_edge41_Node000001_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1129.16,-410.06C1091.1,-379.3 1019.08,-321.12 984.09,-292.85"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="986.41,-290.23 976.44,-286.67 982.02,-295.68 986.41,-290.23"/>
</a>
</g>
</g>
<!-- Node27 -->
<g id="Node000027" class="node">
<title>Node27</title>
<g id="a_Node000027"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1979.88,-363 1924.12,-363 1924.12,-343.75 1979.88,-343.75 1979.88,-363"/>
<text xml:space="preserve" text-anchor="middle" x="1952" y="-349.5" font-family="Helvetica,sans-Serif" font-size="10.00">algorithm</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node27 -->
<g id="edge52_Node000001_Node000027" class="edge">
<title>Node1&#45;&gt;Node27</title>
<g id="a_edge52_Node000001_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1214.53,-428.51C1369.77,-423.92 1779.01,-408.8 1910,-374.25 1915.46,-372.81 1921.08,-370.67 1926.36,-368.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1927.74,-371.54 1935.21,-364.02 1924.68,-365.24 1927.74,-371.54"/>
</a>
</g>
</g>
<!-- Node28 -->
<g id="Node000028" class="node">
<title>Node28</title>
<g id="a_Node000028"><a xlink:href="composition__hash_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1264.5,-368.62 1137.5,-368.62 1137.5,-338.12 1264.5,-338.12 1264.5,-368.62"/>
<text xml:space="preserve" text-anchor="start" x="1145.5" y="-355.12" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="middle" x="1201" y="-343.88" font-family="Helvetica,sans-Serif" font-size="10.00">/utils/composition_hash.h</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node28 -->
<g id="edge58_Node000001_Node000028" class="edge">
<title>Node1&#45;&gt;Node28</title>
<g id="a_edge58_Node000001_Node000028"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1166.6,-409.83C1172.63,-400.1 1179.9,-388.38 1186.2,-378.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1189,-380.36 1191.3,-370.01 1183.05,-376.67 1189,-380.36"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node3 -->
<g id="edge2_Node000002_Node000003" class="edge">
<title>Node2&#45;&gt;Node3</title>
<g id="a_edge2_Node000002_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M478.56,-349.05C364.04,-342.13 124.63,-324.46 100,-296.5 45.36,-234.47 74.12,-189.01 100,-110.5 103.3,-100.48 109.82,-90.87 116.19,-83.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="118.61,-85.69 122.66,-75.9 113.39,-81.03 118.61,-85.69"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node4 -->
<g id="edge3_Node000002_Node000004" class="edge">
<title>Node2&#45;&gt;Node4</title>
<g id="a_edge3_Node000002_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M478.41,-349.01C401.45,-343.43 274.81,-329.39 243,-296.5 205.44,-257.67 215.13,-186.84 222.8,-152.33"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="226.14,-153.4 225.08,-142.86 219.33,-151.76 226.14,-153.4"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node5 -->
<g id="edge4_Node000002_Node000005" class="edge">
<title>Node2&#45;&gt;Node5</title>
<g id="a_edge4_Node000002_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M566.52,-332.21C599.64,-307.32 656.13,-262.88 699,-218.75 720.22,-196.91 741.41,-168.74 754.36,-150.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="757.04,-152.88 759.94,-142.69 751.32,-148.85 757.04,-152.88"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node6 -->
<g id="edge5_Node000002_Node000006" class="edge">
<title>Node2&#45;&gt;Node6</title>
<g id="a_edge5_Node000002_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M599.61,-350.07C806.29,-342.07 1473.02,-314.94 1515,-296.5 1539.39,-285.79 1535.06,-268.29 1558,-254.75 1605.21,-226.87 1636.11,-256.37 1676,-218.75 1694.52,-201.29 1702.38,-172.16 1705.68,-152.61"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1709.12,-153.26 1707.04,-142.87 1702.19,-152.29 1709.12,-153.26"/>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node7 -->
<g id="edge6_Node000002_Node000007" class="edge">
<title>Node2&#45;&gt;Node7</title>
<g id="a_edge6_Node000002_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M599.2,-350.42C723.46,-345.78 1017.12,-331.75 1261,-296.5 1281.52,-293.53 1612.96,-234.87 1626,-218.75 1641.31,-199.84 1630.59,-140.78 1612,-110.5 1579.07,-56.86 1506.2,-29.66 1464.3,-17.98"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1465.38,-14.64 1454.82,-15.47 1463.59,-21.41 1465.38,-14.64"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="composition__abstract_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="656.12,-218.75 535.88,-218.75 535.88,-188.25 656.12,-188.25 656.12,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="543.88" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="middle" x="596" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/composition_abstract.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node8 -->
<g id="edge7_Node000002_Node000008" class="edge">
<title>Node2&#45;&gt;Node8</title>
<g id="a_edge7_Node000002_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M546.81,-332.12C557.09,-305.45 575.17,-258.55 586.31,-229.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="589.47,-231.16 589.8,-220.57 582.94,-228.65 589.47,-231.16"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="atomic_species_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="966,-74.5 812,-74.5 812,-55.25 966,-55.25 966,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="889" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/atomic/atomicSpecies.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node9 -->
<g id="edge36_Node000002_Node000009" class="edge">
<title>Node2&#45;&gt;Node9</title>
<g id="a_edge36_Node000002_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M531.16,-332.13C519.98,-299.79 503.28,-235.32 527,-188.25 553.13,-136.39 578.62,-133.36 632,-110.5 685.21,-87.71 749.37,-76.55 800.26,-71.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="800.47,-74.59 810.07,-70.1 799.77,-67.63 800.47,-74.59"/>
</a>
</g>
</g>
<!-- Node15 -->
<g id="Node000015" class="node">
<title>Node15</title>
<g id="a_Node000015"><a xlink:href="composition__abstract__iterator_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="447.88,-152.25 338.12,-152.25 338.12,-110.5 447.88,-110.5 447.88,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="346.12" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="start" x="346.12" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/iterators/composition</text>
<text xml:space="preserve" text-anchor="middle" x="393" y="-116.25" font-family="Helvetica,sans-Serif" font-size="10.00">_abstract_iterator.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node15 -->
<g id="edge35_Node000002_Node000015" class="edge">
<title>Node2&#45;&gt;Node15</title>
<g id="a_edge35_Node000002_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M521.69,-332.16C513.05,-321.75 502.62,-308.71 494,-296.5 461.99,-251.17 429.07,-195.7 409.85,-162.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="413.09,-160.86 405.09,-153.91 407.01,-164.33 413.09,-160.86"/>
</a>
</g>
</g>
<!-- Node19 -->
<g id="Node000019" class="node">
<title>Node19</title>
<g id="a_Node000019"><a xlink:href="composition__decorator__abstract_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="372.12,-296.5 251.88,-296.5 251.88,-254.75 372.12,-254.75 372.12,-296.5"/>
<text xml:space="preserve" text-anchor="start" x="259.88" y="-283" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="start" x="259.88" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">/decorators/composition</text>
<text xml:space="preserve" text-anchor="middle" x="312" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">_decorator_abstract.h</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node19 -->
<g id="edge26_Node000002_Node000019" class="edge">
<title>Node2&#45;&gt;Node19</title>
<g id="a_edge26_Node000002_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M478.47,-332.17C449.09,-322.37 413.62,-310.54 382.98,-300.31"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="384.39,-297.09 373.8,-297.25 382.18,-303.73 384.39,-297.09"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node3 -->
<g id="edge24_Node000008_Node000003" class="edge">
<title>Node8&#45;&gt;Node3</title>
<g id="a_edge24_Node000008_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M535.48,-196.54C480.43,-189.86 397.56,-176.61 329,-152.25 292.32,-139.22 287.42,-126.65 252,-110.5 223.4,-97.46 189.79,-85.12 165.59,-76.73"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="166.89,-73.47 156.29,-73.55 164.62,-80.1 166.89,-73.47"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node4 -->
<g id="edge23_Node000008_Node000004" class="edge">
<title>Node8&#45;&gt;Node4</title>
<g id="a_edge23_Node000008_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M535.42,-196.69C452.26,-188.16 307.43,-171.22 258,-152.25 254.83,-151.03 251.65,-149.44 248.61,-147.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="250.58,-144.78 240.3,-142.21 246.73,-150.63 250.58,-144.78"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node5 -->
<g id="edge22_Node000008_Node000005" class="edge">
<title>Node8&#45;&gt;Node5</title>
<g id="a_edge22_Node000008_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M631.85,-187.8C662.07,-175.41 704.95,-157.82 734.26,-145.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="735.45,-149.1 743.37,-142.06 732.79,-142.62 735.45,-149.1"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node6 -->
<g id="edge25_Node000008_Node000006" class="edge">
<title>Node8&#45;&gt;Node6</title>
<g id="a_edge25_Node000008_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M656.58,-198.68C859.08,-185.91 1508.89,-144.93 1671.06,-134.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1671.04,-138.21 1680.8,-134.09 1670.6,-131.23 1671.04,-138.21"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node7 -->
<g id="edge21_Node000008_Node000007" class="edge">
<title>Node8&#45;&gt;Node7</title>
<g id="a_edge21_Node000008_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M621.46,-187.86C637.14,-178.43 657.35,-165.48 674,-152.25 694.85,-135.68 693.07,-122.2 717,-110.5 717,-110.5 1263.86,-34.22 1401.74,-14.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1401.81,-18.51 1411.23,-13.66 1400.84,-11.58 1401.81,-18.51"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node9 -->
<g id="edge8_Node000008_Node000009" class="edge">
<title>Node8&#45;&gt;Node9</title>
<g id="a_edge8_Node000008_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M605.73,-187.79C620.22,-167.12 649.49,-129.85 684,-110.5 719.42,-90.64 762.88,-79.61 800.64,-73.5"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="800.79,-77.01 810.15,-72.05 799.74,-70.09 800.79,-77.01"/>
</a>
</g>
</g>
<!-- Node8&#45;&gt;Node15 -->
<g id="edge15_Node000008_Node000015" class="edge">
<title>Node8&#45;&gt;Node15</title>
<g id="a_edge15_Node000008_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M553.44,-187.8C526.09,-178.35 490,-165.88 458.98,-155.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="460.26,-151.91 449.67,-151.95 457.98,-158.52 460.26,-151.91"/>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node7 -->
<g id="edge11_Node000009_Node000007" class="edge">
<title>Node9&#45;&gt;Node7</title>
<g id="a_edge11_Node000009_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M966.36,-56.3C1087.71,-44.42 1317.57,-21.92 1401.4,-13.72"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1401.56,-17.22 1411.17,-12.76 1400.87,-10.25 1401.56,-17.22"/>
</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="866.88,-19.25 823.12,-19.25 823.12,0 866.88,0 866.88,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="845" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">format</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node10 -->
<g id="edge9_Node000009_Node000010" class="edge">
<title>Node9&#45;&gt;Node10</title>
<g id="a_edge9_Node000009_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M881.73,-55.08C875.72,-47.8 866.99,-37.23 859.54,-28.23"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="862.46,-26.26 853.39,-20.78 857.06,-30.71 862.46,-26.26"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1026.75,-19.25 961.25,-19.25 961.25,0 1026.75,0 1026.75,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="994" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">string_view</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node11 -->
<g id="edge10_Node000009_Node000011" class="edge">
<title>Node9&#45;&gt;Node11</title>
<g id="a_edge10_Node000009_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M906.81,-54.84C923.03,-46.62 947.24,-34.34 966.03,-24.81"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="967.42,-28.03 974.75,-20.39 964.25,-21.79 967.42,-28.03"/>
</a>
</g>
</g>
<!-- Node12 -->
<g id="Node000012" class="node">
<title>Node12</title>
<g id="a_Node000012"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1141.88,-19.25 1092.12,-19.25 1092.12,0 1141.88,0 1141.88,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="1117" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">optional</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node12 -->
<g id="edge12_Node000009_Node000012" class="edge">
<title>Node9&#45;&gt;Node12</title>
<g id="a_edge12_Node000009_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M927.94,-54.78C970.72,-44.79 1038.89,-28.87 1080.63,-19.12"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1081.24,-22.57 1090.18,-16.89 1079.65,-15.76 1081.24,-22.57"/>
</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="804.62,-19.25 765.38,-19.25 765.38,0 804.62,0 804.62,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="785" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">limits</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node13 -->
<g id="edge13_Node000009_Node000013" class="edge">
<title>Node9&#45;&gt;Node13</title>
<g id="a_edge13_Node000009_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M871.36,-54.84C855.37,-46.66 831.54,-34.46 812.96,-24.94"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="814.57,-21.83 804.08,-20.39 811.38,-28.07 814.57,-21.83"/>
</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="943.38,-19.25 884.62,-19.25 884.62,0 943.38,0 943.38,-19.25"/>
<text xml:space="preserve" text-anchor="middle" x="914" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">stdexcept</text>
</a>
</g>
</g>
<!-- Node9&#45;&gt;Node14 -->
<g id="edge14_Node000009_Node000014" class="edge">
<title>Node9&#45;&gt;Node14</title>
<g id="a_edge14_Node000009_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M893.13,-55.08C896.33,-48.26 900.89,-38.56 904.93,-29.95"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="908.06,-31.52 909.14,-20.98 901.72,-28.54 908.06,-31.52"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node3 -->
<g id="edge16_Node000015_Node000003" class="edge">
<title>Node15&#45;&gt;Node3</title>
<g id="a_edge16_Node000015_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M337.86,-116.7C285.7,-103.76 209.15,-84.77 165.91,-74.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="166.92,-70.68 156.37,-71.67 165.23,-77.48 166.92,-70.68"/>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node9 -->
<g id="edge20_Node000015_Node000009" class="edge">
<title>Node15&#45;&gt;Node9</title>
<g id="a_edge20_Node000015_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M448.15,-113.56C452.81,-112.42 457.47,-111.38 462,-110.5 577.71,-87.97 713.41,-76.25 800.25,-70.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="800.38,-74.08 810.13,-69.95 799.93,-67.09 800.38,-74.08"/>
</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="416,-74.5 370,-74.5 370,-55.25 416,-55.25 416,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="393" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">iterator</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node16 -->
<g id="edge17_Node000015_Node000016" class="edge">
<title>Node15&#45;&gt;Node16</title>
<g id="a_edge17_Node000015_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M393,-110.32C393,-102.65 393,-93.89 393,-86.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="396.5,-86.46 393,-76.46 389.5,-86.46 396.5,-86.46"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="351.62,-74.5 312.38,-74.5 312.38,-55.25 351.62,-55.25 351.62,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="332" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">utility</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node17 -->
<g id="edge18_Node000015_Node000017" class="edge">
<title>Node15&#45;&gt;Node17</title>
<g id="a_edge18_Node000015_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M374.03,-110.32C365.81,-101.63 356.29,-91.55 348.38,-83.19"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="351.03,-80.91 341.62,-76.05 345.95,-85.72 351.03,-80.91"/>
</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="487.75,-74.5 434.25,-74.5 434.25,-55.25 487.75,-55.25 487.75,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="461" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">compare</text>
</a>
</g>
</g>
<!-- Node15&#45;&gt;Node18 -->
<g id="edge19_Node000015_Node000018" class="edge">
<title>Node15&#45;&gt;Node18</title>
<g id="a_edge19_Node000015_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M414.14,-110.32C423.5,-101.44 434.38,-91.12 443.3,-82.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="445.49,-85.41 450.34,-75.99 440.68,-80.33 445.49,-85.41"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node3 -->
<g id="edge34_Node000019_Node000003" class="edge">
<title>Node19&#45;&gt;Node3</title>
<g id="a_edge34_Node000019_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M276.16,-254.28C261.16,-244.7 244.18,-232.38 231,-218.75 190.39,-176.74 157.22,-115.44 142,-84.79"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="145.25,-83.47 137.73,-76.01 138.95,-86.54 145.25,-83.47"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node4 -->
<g id="edge31_Node000019_Node000004" class="edge">
<title>Node19&#45;&gt;Node4</title>
<g id="a_edge31_Node000019_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M280.55,-254.29C268.34,-244.87 255.32,-232.67 247,-218.75 234.84,-198.39 230.43,-171.16 228.86,-152.76"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="232.36,-152.66 228.24,-142.89 225.37,-153.09 232.36,-152.66"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node5 -->
<g id="edge32_Node000019_Node000005" class="edge">
<title>Node19&#45;&gt;Node5</title>
<g id="a_edge32_Node000019_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M372.6,-274.82C445.28,-272.89 569.25,-262.64 665,-218.75 683.8,-210.13 725.86,-171.65 749.68,-149.06"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="751.92,-151.76 756.74,-142.32 747.09,-146.7 751.92,-151.76"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node8 -->
<g id="edge29_Node000019_Node000008" class="edge">
<title>Node19&#45;&gt;Node8</title>
<g id="a_edge29_Node000019_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M372.58,-259.67C417.37,-248.61 478.49,-233.52 525.48,-221.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="526.15,-225.35 535.02,-219.56 524.47,-218.56 526.15,-225.35"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node9 -->
<g id="edge27_Node000019_Node000009" class="edge">
<title>Node19&#45;&gt;Node9</title>
<g id="a_edge27_Node000019_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M337.08,-254.35C366.35,-230.49 415.98,-189.39 457,-152.25 476.75,-134.37 475.93,-121.9 500,-110.5 551.48,-86.11 702.31,-74.53 800.32,-69.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="800.38,-72.94 810.19,-68.94 800.03,-65.95 800.38,-72.94"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node15 -->
<g id="edge28_Node000019_Node000015" class="edge">
<title>Node19&#45;&gt;Node15</title>
<g id="a_edge28_Node000019_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M323.43,-254.55C337.12,-230.51 360.17,-190.02 375.96,-162.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="378.97,-164.09 380.88,-153.67 372.89,-160.63 378.97,-164.09"/>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node17 -->
<g id="edge30_Node000019_Node000017" class="edge">
<title>Node19&#45;&gt;Node17</title>
<g id="a_edge30_Node000019_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M313.92,-254.61C317.74,-214.73 326.26,-125.79 330.08,-85.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="333.55,-86.39 331.02,-76.1 326.58,-85.72 333.55,-86.39"/>
</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="290.38,-213.12 255.62,-213.12 255.62,-193.88 290.38,-193.88 290.38,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="273" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">map</text>
</a>
</g>
</g>
<!-- Node19&#45;&gt;Node20 -->
<g id="edge33_Node000019_Node000020" class="edge">
<title>Node19&#45;&gt;Node20</title>
<g id="a_edge33_Node000019_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M300.72,-254.34C295.29,-244.57 288.81,-232.93 283.49,-223.36"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="286.55,-221.66 278.63,-214.62 280.43,-225.06 286.55,-221.66"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node7 -->
<g id="edge39_Node000021_Node000007" class="edge">
<title>Node21&#45;&gt;Node7</title>
<g id="a_edge39_Node000021_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1778.27,-110.03C1750.29,-92.97 1707.88,-69.23 1668,-55.25 1597.67,-30.6 1510.46,-18.58 1464.6,-13.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1465.15,-10.13 1454.84,-12.58 1464.42,-17.1 1465.15,-10.13"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node17 -->
<g id="edge40_Node000021_Node000017" class="edge">
<title>Node21&#45;&gt;Node17</title>
<g id="a_edge40_Node000021_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1751.37,-112.04C1748.56,-111.46 1745.76,-110.94 1743,-110.5 1139.85,-14.89 969.89,-169.01 363.35,-74.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="364.04,-70.94 353.62,-72.83 362.95,-77.85 364.04,-70.94"/>
</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="1839,-74.5 1781,-74.5 1781,-55.25 1839,-55.25 1839,-74.5"/>
<text xml:space="preserve" text-anchor="middle" x="1810" y="-61" font-family="Helvetica,sans-Serif" font-size="10.00">exception</text>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node22 -->
<g id="edge38_Node000021_Node000022" class="edge">
<title>Node21&#45;&gt;Node22</title>
<g id="a_edge38_Node000021_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1810,-110.32C1810,-102.65 1810,-93.89 1810,-86.2"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1813.5,-86.46 1810,-76.46 1806.5,-86.46 1813.5,-86.46"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node5 -->
<g id="edge42_Node000023_Node000005" class="edge">
<title>Node23&#45;&gt;Node5</title>
<g id="a_edge42_Node000023_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M922.19,-265.57C891.83,-257.35 851.13,-242.76 822,-218.75 799.86,-200.5 783.77,-170.92 774.91,-151.56"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="778.23,-150.43 771.04,-142.65 771.81,-153.21 778.23,-150.43"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node7 -->
<g id="edge44_Node000023_Node000007" class="edge">
<title>Node23&#45;&gt;Node7</title>
<g id="a_edge44_Node000023_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M971.31,-265.51C985.3,-248.52 1017.47,-211.61 1051,-188.25 1170.13,-105.25 1334.21,-44.16 1401.89,-20.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1402.86,-24.28 1411.2,-17.75 1400.61,-17.65 1402.86,-24.28"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node9 -->
<g id="edge46_Node000023_Node000009" class="edge">
<title>Node23&#45;&gt;Node9</title>
<g id="a_edge46_Node000023_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M944.66,-265.54C927.63,-256.38 903.9,-240.48 893,-218.75 871.33,-175.56 878.45,-116.51 884.38,-85.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="887.79,-86.77 886.44,-76.26 880.94,-85.31 887.79,-86.77"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node11 -->
<g id="edge43_Node000023_Node000011" class="edge">
<title>Node23&#45;&gt;Node11</title>
<g id="a_edge43_Node000023_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M966.08,-265.58C968.54,-254.57 972.61,-235.39 975,-218.75 984.88,-150 990.61,-67.69 992.87,-30.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="996.34,-31.09 993.44,-20.9 989.36,-30.67 996.34,-31.09"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node13 -->
<g id="edge45_Node000023_Node000013" class="edge">
<title>Node23&#45;&gt;Node13</title>
<g id="a_edge45_Node000023_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M944.77,-265.59C926.09,-256.06 897.87,-239.54 879,-218.75 854.65,-191.92 816.43,-108.15 803,-74.5 797.3,-60.22 792.65,-43.46 789.5,-30.69"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="792.91,-29.91 787.22,-20.97 786.1,-31.5 792.91,-29.91"/>
</a>
</g>
</g>
<!-- Node24 -->
<g id="Node000024" class="node">
<title>Node24</title>
<g id="a_Node000024"><a xlink:href="elements_8h.html" target="_top" xlink:title="Provides mappings between atomic numbers and element symbols for the periodic table.">
<polygon fill="white" stroke="#666666" points="966,-213.12 902,-213.12 902,-193.88 966,-193.88 966,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="934" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">elements.h</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node24 -->
<g id="edge47_Node000023_Node000024" class="edge">
<title>Node23&#45;&gt;Node24</title>
<g id="a_edge47_Node000023_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M960.2,-265.74C955.72,-255.26 948.13,-237.53 942.27,-223.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="945.61,-222.74 938.46,-214.92 939.17,-225.49 945.61,-222.74"/>
</a>
</g>
</g>
<!-- Node26 -->
<g id="Node000026" class="node">
<title>Node26</title>
<g id="a_Node000026"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1115.88,-213.12 1060.12,-213.12 1060.12,-193.88 1115.88,-193.88 1115.88,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1088" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">expected</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node26 -->
<g id="edge51_Node000023_Node000026" class="edge">
<title>Node23&#45;&gt;Node26</title>
<g id="a_edge51_Node000023_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M979.96,-265.6C1000.79,-253.82 1037.51,-233.05 1062.3,-219.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1063.81,-222.2 1070.79,-214.23 1060.36,-216.11 1063.81,-222.2"/>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node5 -->
<g id="edge48_Node000024_Node000005" class="edge">
<title>Node24&#45;&gt;Node5</title>
<g id="a_edge48_Node000024_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M912.51,-193.48C883.78,-181.41 832.61,-159.93 799.25,-145.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="800.64,-142.71 790.07,-142.06 797.93,-149.16 800.64,-142.71"/>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node7 -->
<g id="edge50_Node000024_Node000007" class="edge">
<title>Node24&#45;&gt;Node7</title>
<g id="a_edge50_Node000024_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M949.95,-193.42C994.87,-168.2 1126.79,-96.4 1244,-55.25 1297.96,-36.3 1363.4,-22.87 1401.41,-15.97"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1402.01,-19.41 1411.25,-14.22 1400.79,-12.52 1402.01,-19.41"/>
</a>
</g>
</g>
<!-- Node25 -->
<g id="Node000025" class="node">
<title>Node25</title>
<g id="a_Node000025"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="956.62,-141 911.38,-141 911.38,-121.75 956.62,-121.75 956.62,-141"/>
<text xml:space="preserve" text-anchor="middle" x="934" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">cstdint</text>
</a>
</g>
</g>
<!-- Node24&#45;&gt;Node25 -->
<g id="edge49_Node000024_Node000025" class="edge">
<title>Node24&#45;&gt;Node25</title>
<g id="a_edge49_Node000024_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M934,-193.62C934,-183.35 934,-166.11 934,-152.54"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="937.5,-152.92 934,-142.92 930.5,-152.92 937.5,-152.92"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node3 -->
<g id="edge60_Node000028_Node000003" class="edge">
<title>Node28&#45;&gt;Node3</title>
<g id="a_edge60_Node000028_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1137.03,-350.26C928.78,-343.15 281.44,-319.31 243,-296.5 165.94,-250.76 142,-133.61 135.33,-86.22"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="138.81,-85.8 134.07,-76.32 131.86,-86.69 138.81,-85.8"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node8 -->
<g id="edge74_Node000028_Node000008" class="edge">
<title>Node28&#45;&gt;Node8</title>
<g id="a_edge74_Node000028_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1137.11,-343.1C1074.49,-333.46 976.54,-316.94 893,-296.5 806.12,-275.25 707.29,-242.97 648.37,-222.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="649.87,-219.65 639.28,-219.72 647.6,-226.27 649.87,-219.65"/>
</a>
</g>
</g>
<!-- Node29 -->
<g id="Node000029" class="node">
<title>Node29</title>
<g id="a_Node000029"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1743.62,-285.25 1698.38,-285.25 1698.38,-266 1743.62,-266 1743.62,-285.25"/>
<text xml:space="preserve" text-anchor="middle" x="1721" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">cstring</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node29 -->
<g id="edge59_Node000028_Node000029" class="edge">
<title>Node28&#45;&gt;Node29</title>
<g id="a_edge59_Node000028_Node000029"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1264.98,-348.55C1378.91,-341.15 1612.19,-323.23 1689,-296.5 1692.58,-295.25 1696.18,-293.55 1699.61,-291.66"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1701.25,-294.77 1707.9,-286.52 1697.56,-288.82 1701.25,-294.77"/>
</a>
</g>
</g>
<!-- Node30 -->
<g id="Node000030" class="node">
<title>Node30</title>
<g id="a_Node000030"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1595.4,-285.25 1566.6,-285.25 1566.6,-266 1595.4,-266 1595.4,-285.25"/>
<text xml:space="preserve" text-anchor="middle" x="1581" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">bit</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node30 -->
<g id="edge61_Node000028_Node000030" class="edge">
<title>Node28&#45;&gt;Node30</title>
<g id="a_edge61_Node000028_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1264.68,-350.95C1337.04,-347.38 1457.47,-335.47 1553,-296.5 1555.9,-295.32 1558.79,-293.78 1561.55,-292.09"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1563.37,-295.09 1569.54,-286.48 1559.35,-289.36 1563.37,-295.09"/>
</a>
</g>
</g>
<!-- Node31 -->
<g id="Node000031" class="node">
<title>Node31</title>
<g id="a_Node000031"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1680.12,-285.25 1613.88,-285.25 1613.88,-266 1680.12,-266 1680.12,-285.25"/>
<text xml:space="preserve" text-anchor="middle" x="1647" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">xxhash64.h</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node31 -->
<g id="edge62_Node000028_Node000031" class="edge">
<title>Node28&#45;&gt;Node31</title>
<g id="a_edge62_Node000028_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1264.69,-349.34C1345.16,-344.21 1487.25,-330.75 1604,-296.5 1609.44,-294.91 1615.06,-292.73 1620.37,-290.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1621.77,-293.61 1629.33,-286.19 1618.79,-287.28 1621.77,-293.61"/>
</a>
</g>
</g>
<!-- Node32 -->
<g id="Node000032" class="node">
<title>Node32</title>
<g id="a_Node000032"><a xlink:href="composition_8h.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1251.75,-290.88 1150.25,-290.88 1150.25,-260.38 1251.75,-260.38 1251.75,-290.88"/>
<text xml:space="preserve" text-anchor="start" x="1158.25" y="-277.38" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/composition</text>
<text xml:space="preserve" text-anchor="middle" x="1201" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">/composition.h</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node32 -->
<g id="edge63_Node000028_Node000032" class="edge">
<title>Node28&#45;&gt;Node32</title>
<g id="a_edge63_Node000028_Node000032"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1201,-337.77C1201,-327.81 1201,-314.36 1201,-302.6"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1204.5,-302.7 1201,-292.7 1197.5,-302.7 1204.5,-302.7"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node4 -->
<g id="edge66_Node000032_Node000004" class="edge">
<title>Node32&#45;&gt;Node4</title>
<g id="a_edge66_Node000032_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1149.84,-267.85C1117.06,-263.67 1073.57,-258.42 1035,-254.75 809.68,-233.29 750.72,-253.1 527,-218.75 401,-199.4 359.37,-214.27 248,-152.25 246.29,-151.3 244.64,-150.16 243.05,-148.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="245.71,-146.62 236.05,-142.27 240.89,-151.7 245.71,-146.62"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node5 -->
<g id="edge65_Node000032_Node000005" class="edge">
<title>Node32&#45;&gt;Node5</title>
<g id="a_edge65_Node000032_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1192.61,-259.89C1180.46,-240.04 1155.99,-205.26 1125,-188.25 1118.34,-184.6 918.03,-154.66 820.01,-140.17"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="820.76,-136.75 810.36,-138.75 819.74,-143.67 820.76,-136.75"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node7 -->
<g id="edge64_Node000032_Node000007" class="edge">
<title>Node32&#45;&gt;Node7</title>
<g id="a_edge64_Node000032_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1252.23,-271.25C1355.78,-263.91 1582.12,-245.01 1605,-218.75 1667.14,-147.42 1524.4,-59.2 1461.2,-25.06"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1462.89,-22 1452.42,-20.4 1459.61,-28.18 1462.89,-22"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node8 -->
<g id="edge72_Node000032_Node000008" class="edge">
<title>Node32&#45;&gt;Node8</title>
<g id="a_edge72_Node000032_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1149.78,-268.42C1116.98,-264.47 1073.49,-259.26 1035,-254.75 905.57,-239.59 754.61,-222.43 667.68,-212.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="668.2,-209.13 657.87,-211.48 667.42,-216.08 668.2,-209.13"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node9 -->
<g id="edge73_Node000032_Node000009" class="edge">
<title>Node32&#45;&gt;Node9</title>
<g id="a_edge73_Node000032_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1196.86,-259.95C1190.87,-241.13 1178.14,-208.51 1157,-188.25 1094.55,-128.41 997.66,-94.23 939.09,-77.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="940.29,-74.62 929.72,-75.38 938.46,-81.38 940.29,-74.62"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node12 -->
<g id="edge67_Node000032_Node000012" class="edge">
<title>Node32&#45;&gt;Node12</title>
<g id="a_edge67_Node000032_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1198.42,-260.11C1195.22,-242.82 1189.26,-213.16 1182,-188.25 1164.89,-129.57 1138.3,-62.31 1125.06,-29.98"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1128.45,-29.03 1121.4,-21.12 1121.98,-31.7 1128.45,-29.03"/>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node26 -->
<g id="edge69_Node000032_Node000026" class="edge">
<title>Node32&#45;&gt;Node26</title>
<g id="a_edge69_Node000032_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1177.31,-259.92C1158.22,-248.08 1131.48,-231.48 1112.24,-219.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1114.32,-216.71 1103.97,-214.41 1110.63,-222.66 1114.32,-216.71"/>
</a>
</g>
</g>
<!-- Node33 -->
<g id="Node000033" class="node">
<title>Node33</title>
<g id="a_Node000033"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1325.75,-213.12 1248.25,-213.12 1248.25,-193.88 1325.75,-193.88 1325.75,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1287" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">unordered_set</text>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node33 -->
<g id="edge68_Node000032_Node000033" class="edge">
<title>Node32&#45;&gt;Node33</title>
<g id="a_edge68_Node000032_Node000033"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1218.82,-260.1C1232.94,-248.58 1252.67,-232.49 1267.27,-220.59"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1269.3,-223.45 1274.84,-214.41 1264.88,-218.02 1269.3,-223.45"/>
</a>
</g>
</g>
<!-- Node34 -->
<g id="Node000034" class="node">
<title>Node34</title>
<g id="a_Node000034"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1456.38,-213.12 1343.62,-213.12 1343.62,-193.88 1456.38,-193.88 1456.38,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1400" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/config/config.h</text>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node34 -->
<g id="edge70_Node000032_Node000034" class="edge">
<title>Node32&#45;&gt;Node34</title>
<g id="a_edge70_Node000032_Node000034"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1242.72,-259.92C1278.51,-247.31 1329.56,-229.32 1363.69,-217.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1364.44,-220.74 1372.71,-214.12 1362.11,-214.14 1364.44,-220.74"/>
</a>
</g>
</g>
<!-- Node35 -->
<g id="Node000035" class="node">
<title>Node35</title>
<g id="a_Node000035"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1595.88,-213.12 1474.12,-213.12 1474.12,-193.88 1595.88,-193.88 1595.88,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1535" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">fourdst/logging/logging.h</text>
</a>
</g>
</g>
<!-- Node32&#45;&gt;Node35 -->
<g id="edge71_Node000032_Node000035" class="edge">
<title>Node32&#45;&gt;Node35</title>
<g id="a_edge71_Node000032_Node000035"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1252.09,-263.9C1313.89,-250.92 1417.49,-229.17 1480.7,-215.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1481.08,-219.4 1490.15,-213.92 1479.64,-212.55 1481.08,-219.4"/>
</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="composition__masked_8cpp__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>