Files
MeanField_SERiF/docs/html/factorization_8cpp__incl.svg
Emily Boudreaux 6b57738330 docs(docs): built docs
Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
2026-11-09 14:09:44 -05:00

864 lines
41 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/lib/serif/solver/preconditioner/backend/mfem/gravity/factorization.cpp Pages: 1 -->
<!--zoomable 438 -->
<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 = 1390;
var viewHeight = 438;
var sectionId = 'dynsection-0';
</script>
<script type="application/ecmascript" xlink:href="svg.min.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>src/lib/serif/solver/preconditioner/backend/mfem/gravity/factorization.cpp</title>
<!-- Node1 -->
<g id="Node000001" class="node">
<title>Node1</title>
<g id="a_Node000001"><a xlink:title=" ">
<polygon fill="#999999" stroke="#666666" points="582.81,-429.5 431.81,-429.5 431.81,-387.75 582.81,-387.75 582.81,-429.5"/>
<text xml:space="preserve" text-anchor="start" x="439.81" y="-416" font-family="Helvetica,sans-Serif" font-size="10.00">src/lib/serif/solver</text>
<text xml:space="preserve" text-anchor="start" x="439.81" y="-404.75" font-family="Helvetica,sans-Serif" font-size="10.00">/preconditioner/backend</text>
<text xml:space="preserve" text-anchor="middle" x="507.31" y="-393.5" font-family="Helvetica,sans-Serif" font-size="10.00">/mfem/gravity/factorization.cpp</text>
</a>
</g>
</g>
<!-- Node2 -->
<g id="Node000002" class="node">
<title>Node2</title>
<g id="a_Node000002"><a xlink:href="backend_2mfem_2gravity_2factorization_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="438.68,-351.75 247.93,-351.75 247.93,-321.25 438.68,-321.25 438.68,-351.75"/>
<text xml:space="preserve" text-anchor="start" x="255.93" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="343.31" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/backend/mfem/gravity/factorization.hpp</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="M459.87,-387.34C437.27,-377.68 410.38,-366.18 388.13,-356.67"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="389.58,-353.48 379.01,-352.76 386.82,-359.91 389.58,-353.48"/>
</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="499.81,-346.12 456.81,-346.12 456.81,-326.88 499.81,-326.88 499.81,-346.12"/>
<text xml:space="preserve" text-anchor="middle" x="478.31" y="-332.62" font-family="Helvetica,sans-Serif" font-size="10.00">cmath</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node19 -->
<g id="edge18_Node000001_Node000019" class="edge">
<title>Node1&#45;&gt;Node19</title>
<g id="a_edge18_Node000001_Node000019"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M498.92,-387.34C494.92,-377.68 490.17,-366.18 486.23,-356.67"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="489.58,-355.6 482.52,-347.7 483.11,-358.28 489.58,-355.6"/>
</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="556.93,-346.12 517.68,-346.12 517.68,-326.88 556.93,-326.88 556.93,-346.12"/>
<text xml:space="preserve" text-anchor="middle" x="537.31" y="-332.62" font-family="Helvetica,sans-Serif" font-size="10.00">limits</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node20 -->
<g id="edge19_Node000001_Node000020" class="edge">
<title>Node1&#45;&gt;Node20</title>
<g id="a_edge19_Node000001_Node000020"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M515.98,-387.34C520.12,-377.68 525.03,-366.18 529.11,-356.67"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="532.23,-358.26 532.95,-347.69 525.79,-355.51 532.23,-358.26"/>
</a>
</g>
</g>
<!-- Node21 -->
<g id="Node000021" class="node">
<title>Node21</title>
<g id="a_Node000021"><a xlink:href="solver_2preconditioner_2backend_2mfem_2inverse_2validation_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="755.81,-351.75 574.81,-351.75 574.81,-321.25 755.81,-321.25 755.81,-351.75"/>
<text xml:space="preserve" text-anchor="start" x="582.81" y="-338.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="665.31" y="-327" font-family="Helvetica,sans-Serif" font-size="10.00">/backend/mfem/inverse/validation.hpp</text>
</a>
</g>
</g>
<!-- Node1&#45;&gt;Node21 -->
<g id="edge20_Node000001_Node000021" class="edge">
<title>Node1&#45;&gt;Node21</title>
<g id="a_edge20_Node000001_Node000021"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M553.01,-387.34C574.68,-377.72 600.45,-366.29 621.83,-356.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="623.15,-360.04 630.87,-352.78 620.31,-353.64 623.15,-360.04"/>
</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="314.18,-279.62 258.43,-279.62 258.43,-260.38 314.18,-260.38 314.18,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="286.31" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">expected</text>
</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="M330.37,-320.86C321.82,-311.19 310.57,-298.46 301.58,-288.29"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="304.35,-286.13 295.1,-280.96 299.1,-290.77 304.35,-286.13"/>
</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="1190.93,-146.62 1151.68,-146.62 1151.68,-127.38 1190.93,-127.38 1190.93,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1171.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">utility</text>
</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="M439.13,-322.27C442.22,-321.92 445.29,-321.57 448.31,-321.25 648.23,-299.72 701.74,-322.68 899.31,-285.25 999.25,-266.32 1036.86,-279.69 1118.31,-218.75 1139.55,-202.85 1154.78,-175.75 1163.32,-157.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1166.45,-158.95 1167.25,-148.39 1160.04,-156.15 1166.45,-158.95"/>
</a>
</g>
</g>
<!-- Node5 -->
<g id="Node000005" class="node">
<title>Node5</title>
<g id="a_Node000005"><a xlink:href="backend_2mfem_2inverse_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="468.68,-285.25 331.93,-285.25 331.93,-254.75 468.68,-254.75 468.68,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="339.93" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="400.31" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/backend/mfem/inverse.hpp</text>
</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="M356.24,-320.86C363.24,-312.95 372.04,-302.99 379.93,-294.05"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="382.42,-296.52 386.42,-286.71 377.18,-291.89 382.42,-296.52"/>
</a>
</g>
</g>
<!-- Node17 -->
<g id="Node000017" class="node">
<title>Node17</title>
<g id="a_Node000017"><a xlink:href="strategies_2gravity_2factorization_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="192.81,-285.25 23.81,-285.25 23.81,-254.75 192.81,-254.75 192.81,-285.25"/>
<text xml:space="preserve" text-anchor="start" x="31.81" y="-271.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="108.31" y="-260.5" font-family="Helvetica,sans-Serif" font-size="10.00">/strategies/gravity/factorization.hpp</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node17 -->
<g id="edge16_Node000002_Node000017" class="edge">
<title>Node2&#45;&gt;Node17</title>
<g id="a_edge16_Node000002_Node000017"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M289.69,-320.78C254.94,-311.25 209.5,-298.77 172.79,-288.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="173.72,-285.33 163.15,-286.05 171.87,-292.08 173.72,-285.33"/>
</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="352.93,-213.12 301.68,-213.12 301.68,-193.88 352.93,-193.88 352.93,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="327.31" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">memory</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node6 -->
<g id="edge5_Node000005_Node000006" class="edge">
<title>Node5&#45;&gt;Node6</title>
<g id="a_edge5_Node000005_Node000006"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M383.74,-254.36C372.46,-244.39 357.5,-231.18 345.82,-220.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="348.24,-218.32 338.43,-214.32 343.6,-223.57 348.24,-218.32"/>
</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="137.56,-213.12 15.06,-213.12 15.06,-193.88 137.56,-193.88 137.56,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="76.31" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">mfem/linalg/operator.hpp</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node7 -->
<g id="edge6_Node000005_Node000007" class="edge">
<title>Node5&#45;&gt;Node7</title>
<g id="a_edge6_Node000005_Node000007"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M331.56,-255.51C280.45,-245.45 209,-231.33 146.31,-218.75 141.65,-217.82 136.83,-216.84 131.99,-215.86"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="132.71,-212.44 122.22,-213.88 131.32,-219.3 132.71,-212.44"/>
</a>
</g>
</g>
<!-- Node8 -->
<g id="Node000008" class="node">
<title>Node8</title>
<g id="a_Node000008"><a xlink:href="contract_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="283.18,-218.75 155.43,-218.75 155.43,-188.25 283.18,-188.25 283.18,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="163.43" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="219.31" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/contract.hpp</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node8 -->
<g id="edge7_Node000005_Node000008" class="edge">
<title>Node5&#45;&gt;Node8</title>
<g id="a_edge7_Node000005_Node000008"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M359.23,-254.36C333.18,-245.08 299.23,-232.98 271.3,-223.03"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="272.55,-219.76 261.95,-219.7 270.2,-226.35 272.55,-219.76"/>
</a>
</g>
</g>
<!-- Node9 -->
<g id="Node000009" class="node">
<title>Node9</title>
<g id="a_Node000009"><a xlink:href="solver_2preconditioner_2failure_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="537.18,-218.75 409.43,-218.75 409.43,-188.25 537.18,-188.25 537.18,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="417.43" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/solver/preconditioner</text>
<text xml:space="preserve" text-anchor="middle" x="473.31" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/failure.hpp</text>
</a>
</g>
</g>
<!-- Node5&#45;&gt;Node9 -->
<g id="edge8_Node000005_Node000009" class="edge">
<title>Node5&#45;&gt;Node9</title>
<g id="a_edge8_Node000005_Node000009"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M416.87,-254.36C426.2,-246.12 438.05,-235.65 448.47,-226.44"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="450.5,-229.32 455.67,-220.08 445.86,-224.08 450.5,-229.32"/>
</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="520.31,-146.62 480.31,-146.62 480.31,-127.38 520.31,-127.38 520.31,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="500.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">string</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="M479.43,-187.86C483.23,-178.78 488.16,-167.01 492.28,-157.18"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="495.4,-158.79 496.03,-148.22 488.94,-156.09 495.4,-158.79"/>
</a>
</g>
</g>
<!-- Node11 -->
<g id="Node000011" class="node">
<title>Node11</title>
<g id="a_Node000011"><a xlink:href="codes_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="462.43,-146.62 336.18,-146.62 336.18,-127.38 462.43,-127.38 462.43,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="399.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/error/codes.hpp</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="M456.51,-187.86C445.07,-177.89 429.92,-164.68 418.08,-154.36"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="420.41,-151.75 410.57,-147.82 415.81,-157.03 420.41,-151.75"/>
</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="837.93,-85.75 792.68,-85.75 792.68,-66.5 837.93,-66.5 837.93,-85.75"/>
<text xml:space="preserve" text-anchor="middle" x="815.31" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">cstdint</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node12 -->
<g id="edge11_Node000011_Node000012" class="edge">
<title>Node11&#45;&gt;Node12</title>
<g id="a_edge11_Node000011_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M442.63,-126.94C452.06,-125.11 462,-123.27 471.31,-121.75 584.13,-103.29 718.8,-87.67 780.86,-80.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="781.22,-84.31 790.78,-79.74 780.46,-77.35 781.22,-84.31"/>
</a>
</g>
</g>
<!-- Node13 -->
<g id="Node000013" class="node">
<title>Node13</title>
<g id="a_Node000013"><a xlink:href="enums_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="475.56,-85.75 365.06,-85.75 365.06,-66.5 475.56,-66.5 475.56,-85.75"/>
<text xml:space="preserve" text-anchor="middle" x="420.31" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/meta/enums.hpp</text>
</a>
</g>
</g>
<!-- Node11&#45;&gt;Node13 -->
<g id="edge12_Node000011_Node000013" class="edge">
<title>Node11&#45;&gt;Node13</title>
<g id="a_edge12_Node000011_Node000013"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M402.5,-127.06C405.33,-119.1 409.58,-107.19 413.22,-96.99"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="416.51,-98.17 416.58,-87.58 409.92,-95.82 416.51,-98.17"/>
</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="506.68,-24.88 423.93,-24.88 423.93,-5.63 506.68,-5.63 506.68,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="465.31" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">unordered_map</text>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node14 -->
<g id="edge13_Node000013_Node000014" class="edge">
<title>Node13&#45;&gt;Node14</title>
<g id="a_edge13_Node000013_Node000014"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M427.14,-66.18C433.62,-57.71 443.53,-44.74 451.63,-34.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="454.2,-36.55 457.49,-26.48 448.63,-32.3 454.2,-36.55"/>
</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="630.18,-24.88 568.43,-24.88 568.43,-5.63 630.18,-5.63 630.18,-24.88"/>
<text xml:space="preserve" text-anchor="middle" x="599.31" y="-11.38" font-family="Helvetica,sans-Serif" font-size="10.00">type_traits</text>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node15 -->
<g id="edge14_Node000013_Node000015" class="edge">
<title>Node13&#45;&gt;Node15</title>
<g id="a_edge14_Node000013_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M447.88,-66.05C478.1,-56.11 526.8,-40.1 560.78,-28.92"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="561.85,-32.25 570.26,-25.8 559.67,-25.6 561.85,-32.25"/>
</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="406.31,-30.5 276.31,-30.5 276.31,0 406.31,0 406.31,-30.5"/>
<text xml:space="preserve" text-anchor="start" x="284.31" y="-17" font-family="Helvetica,sans-Serif" font-size="10.00">magic_enum/magic_enum</text>
<text xml:space="preserve" text-anchor="middle" x="341.31" y="-5.75" font-family="Helvetica,sans-Serif" font-size="10.00">_all.hpp</text>
</a>
</g>
</g>
<!-- Node13&#45;&gt;Node16 -->
<g id="edge15_Node000013_Node000016" class="edge">
<title>Node13&#45;&gt;Node16</title>
<g id="a_edge15_Node000013_Node000016"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M408.31,-66.18C398.17,-58.62 383.22,-47.49 370.02,-37.65"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="372.13,-34.86 362.02,-31.69 367.95,-40.47 372.13,-34.86"/>
</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="560.18,-85.75 504.43,-85.75 504.43,-66.5 560.18,-66.5 560.18,-85.75"/>
<text xml:space="preserve" text-anchor="middle" x="532.31" y="-72.25" font-family="Helvetica,sans-Serif" font-size="10.00">concepts</text>
</a>
</g>
</g>
<!-- Node17&#45;&gt;Node18 -->
<g id="edge17_Node000017_Node000018" class="edge">
<title>Node17&#45;&gt;Node18</title>
<g id="a_edge17_Node000017_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M63.97,-254.33C27.12,-239.77 -15.96,-215.71 6.31,-188.25 14.12,-178.61 371.95,-108.3 492.87,-84.77"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="493.5,-88.21 502.65,-82.87 492.17,-81.34 493.5,-88.21"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node3 -->
<g id="edge21_Node000021_Node000003" class="edge">
<title>Node21&#45;&gt;Node3</title>
<g id="a_edge21_Node000021_Node000003"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M574.46,-322.4C475.22,-308.05 329.41,-286.85 323.31,-285.25 321.68,-284.82 320.03,-284.35 318.38,-283.84"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="319.59,-280.56 308.99,-280.6 317.31,-287.17 319.59,-280.56"/>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node5 -->
<g id="edge23_Node000021_Node000005" class="edge">
<title>Node21&#45;&gt;Node5</title>
<g id="a_edge23_Node000021_Node000005"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M604.84,-320.78C565.24,-311.14 513.31,-298.5 471.68,-288.37"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="472.52,-284.98 461.98,-286.01 470.87,-291.78 472.52,-284.98"/>
</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="1100.06,-146.62 1034.56,-146.62 1034.56,-127.38 1100.06,-127.38 1100.06,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1067.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">string_view</text>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node22 -->
<g id="edge22_Node000021_Node000022" class="edge">
<title>Node21&#45;&gt;Node22</title>
<g id="a_edge22_Node000021_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M756.12,-325.47C875.61,-310.15 1075.53,-276.45 1118.31,-218.75 1134.32,-197.15 1109.58,-170.51 1089.29,-153.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1091.69,-151.31 1081.64,-147.94 1087.39,-156.84 1091.69,-151.31"/>
</a>
</g>
</g>
<!-- Node23 -->
<g id="Node000023" class="node">
<title>Node23</title>
<g id="a_Node000023"><a xlink:href="errors_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="890.68,-279.62 765.93,-279.62 765.93,-260.38 890.68,-260.38 890.68,-279.62"/>
<text xml:space="preserve" text-anchor="middle" x="828.31" y="-266.12" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/error/errors.hpp</text>
</a>
</g>
</g>
<!-- Node21&#45;&gt;Node23 -->
<g id="edge24_Node000021_Node000023" class="edge">
<title>Node21&#45;&gt;Node23</title>
<g id="a_edge24_Node000021_Node000023"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M702.29,-320.86C730.2,-309.82 768.14,-294.81 795.08,-284.15"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="796.12,-287.5 804.13,-280.57 793.54,-280.99 796.12,-287.5"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node10 -->
<g id="edge28_Node000023_Node000010" class="edge">
<title>Node23&#45;&gt;Node10</title>
<g id="a_edge28_Node000023_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M765.43,-265.68C714.14,-260.78 641.14,-248.66 584.31,-218.75 568.8,-210.59 535.81,-176.49 516.1,-155.3"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="518.94,-153.21 509.58,-148.23 513.79,-157.96 518.94,-153.21"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node11 -->
<g id="edge45_Node000023_Node000011" class="edge">
<title>Node23&#45;&gt;Node11</title>
<g id="a_edge45_Node000023_Node000011"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M765.5,-266.13C652.48,-260.32 424.31,-245.4 400.31,-218.75 385.67,-202.5 388.5,-176.07 392.94,-157.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="396.3,-158.9 395.67,-148.32 389.57,-156.98 396.3,-158.9"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node12 -->
<g id="edge29_Node000023_Node000012" class="edge">
<title>Node23&#45;&gt;Node12</title>
<g id="a_edge29_Node000023_Node000012"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M827.7,-260C825.72,-230.85 819.47,-138.52 816.67,-97.32"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="820.17,-97.13 816,-87.39 813.19,-97.61 820.17,-97.13"/>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node22 -->
<g id="edge25_Node000023_Node000022" class="edge">
<title>Node23&#45;&gt;Node22</title>
<g id="a_edge25_Node000023_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M890.8,-264.42C930.59,-258.8 981.41,-246.33 1018.31,-218.75 1038.99,-203.29 1052.77,-176.28 1060.31,-157.8"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1063.57,-159.09 1063.84,-148.5 1057.02,-156.61 1063.57,-159.09"/>
</a>
</g>
</g>
<!-- Node24 -->
<g id="Node000024" class="node">
<title>Node24</title>
<g id="a_Node000024"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="1109.18,-213.12 1065.43,-213.12 1065.43,-193.88 1109.18,-193.88 1109.18,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="1087.31" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">format</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node24 -->
<g id="edge26_Node000023_Node000024" class="edge">
<title>Node23&#45;&gt;Node24</title>
<g id="a_edge26_Node000023_Node000024"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M878.93,-259.92C924.52,-251.2 993.1,-236.71 1051.31,-218.75 1052.68,-218.33 1054.07,-217.87 1055.48,-217.4"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1056.56,-220.73 1064.76,-214.01 1054.16,-214.15 1056.56,-220.73"/>
</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="1382.43,-146.62 1340.18,-146.62 1340.18,-127.38 1382.43,-127.38 1382.43,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1361.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">cstdio</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node25 -->
<g id="edge27_Node000023_Node000025" class="edge">
<title>Node23&#45;&gt;Node25</title>
<g id="a_edge27_Node000023_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M891.03,-266.37C1017.93,-260.53 1296.06,-244.89 1330.31,-218.75 1349.11,-204.39 1356.51,-177.12 1359.42,-158.27"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1362.87,-158.92 1360.6,-148.57 1355.92,-158.08 1362.87,-158.92"/>
</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="895.18,-146.62 839.43,-146.62 839.43,-127.38 895.18,-127.38 895.18,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="867.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">algorithm</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node26 -->
<g id="edge30_Node000023_Node000026" class="edge">
<title>Node23&#45;&gt;Node26</title>
<g id="a_edge30_Node000023_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M830.99,-260C837.22,-239.06 852.81,-186.68 861.4,-157.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="864.68,-159.1 864.17,-148.52 857.97,-157.1 864.68,-159.1"/>
</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="641.06,-213.12 593.56,-213.12 593.56,-193.88 641.06,-193.88 641.06,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="617.31" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">version</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node27 -->
<g id="edge31_Node000023_Node000027" class="edge">
<title>Node23&#45;&gt;Node27</title>
<g id="a_edge31_Node000023_Node000027"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M790.69,-259.93C754.35,-250.8 697.96,-235.68 650.31,-218.75 649.35,-218.41 648.39,-218.06 647.42,-217.7"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="649.02,-214.57 638.43,-214.09 646.41,-221.06 649.02,-214.57"/>
</a>
</g>
</g>
<!-- Node28 -->
<g id="Node000028" class="node">
<title>Node28</title>
<g id="a_Node000028"><a xlink:href="colors_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1320.93,-218.75 1203.68,-218.75 1203.68,-188.25 1320.93,-188.25 1320.93,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="1211.68" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/terminal</text>
<text xml:space="preserve" text-anchor="middle" x="1262.31" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/colors.hpp</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node28 -->
<g id="edge32_Node000023_Node000028" class="edge">
<title>Node23&#45;&gt;Node28</title>
<g id="a_edge32_Node000023_Node000028"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M889.57,-259.9C969.32,-248.04 1108.38,-227.38 1192.24,-214.91"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1192.57,-218.4 1201.94,-213.47 1191.54,-211.48 1192.57,-218.4"/>
</a>
</g>
</g>
<!-- Node31 -->
<g id="Node000031" class="node">
<title>Node31</title>
<g id="a_Node000031"><a xlink:href="utils_2misc_2concepts_2exceptions_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="781.56,-218.75 659.06,-218.75 659.06,-188.25 781.56,-188.25 781.56,-218.75"/>
<text xml:space="preserve" text-anchor="start" x="667.06" y="-205.25" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="720.31" y="-194" font-family="Helvetica,sans-Serif" font-size="10.00">/exceptions.hpp</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node31 -->
<g id="edge38_Node000023_Node000031" class="edge">
<title>Node23&#45;&gt;Node31</title>
<g id="a_edge38_Node000023_Node000031"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M813.29,-260.03C798.12,-250.97 774.15,-236.66 754.35,-224.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="756.42,-221.99 746.04,-219.87 752.83,-228 756.42,-221.99"/>
</a>
</g>
</g>
<!-- Node34 -->
<g id="Node000034" class="node">
<title>Node34</title>
<g id="a_Node000034"><a xlink:href="types_2strings_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="1009.18,-213.12 875.43,-213.12 875.43,-193.88 1009.18,-193.88 1009.18,-213.12"/>
<text xml:space="preserve" text-anchor="middle" x="942.31" y="-199.62" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/types/strings.hpp</text>
</a>
</g>
</g>
<!-- Node23&#45;&gt;Node34 -->
<g id="edge46_Node000023_Node000034" class="edge">
<title>Node23&#45;&gt;Node34</title>
<g id="a_edge46_Node000023_Node000034"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M844.16,-260.03C862.85,-249.45 894.2,-231.72 916.43,-219.14"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="917.92,-222.32 924.9,-214.35 914.48,-216.22 917.92,-222.32"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node4 -->
<g id="edge36_Node000028_Node000004" class="edge">
<title>Node28&#45;&gt;Node4</title>
<g id="a_edge36_Node000028_Node000004"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1241.66,-187.86C1227.26,-177.66 1208.06,-164.05 1193.36,-153.63"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1195.43,-150.81 1185.25,-147.89 1191.39,-156.52 1195.43,-150.81"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node22 -->
<g id="edge33_Node000028_Node000022" class="edge">
<title>Node28&#45;&gt;Node22</title>
<g id="a_edge33_Node000028_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1218.06,-187.86C1184.18,-176.66 1137.94,-161.36 1105.63,-150.68"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1106.86,-147.4 1096.27,-147.58 1104.66,-154.04 1106.86,-147.4"/>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node25 -->
<g id="edge34_Node000028_Node000025" class="edge">
<title>Node28&#45;&gt;Node25</title>
<g id="a_edge34_Node000028_Node000025"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1284.77,-187.86C1300.74,-177.46 1322.12,-163.53 1338.23,-153.04"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1339.74,-156.23 1346.21,-147.84 1335.92,-150.36 1339.74,-156.23"/>
</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="1322.56,-146.62 1278.06,-146.62 1278.06,-127.38 1322.56,-127.38 1322.56,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1300.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">cstdlib</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node29 -->
<g id="edge35_Node000028_Node000029" class="edge">
<title>Node28&#45;&gt;Node29</title>
<g id="a_edge35_Node000028_Node000029"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1270.93,-187.86C1276.4,-178.58 1283.52,-166.5 1289.38,-156.55"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1292.28,-158.52 1294.34,-148.13 1286.25,-154.97 1292.28,-158.52"/>
</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="1259.56,-146.62 1209.06,-146.62 1209.06,-127.38 1259.56,-127.38 1259.56,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="1234.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">unistd.h</text>
</a>
</g>
</g>
<!-- Node28&#45;&gt;Node30 -->
<g id="edge37_Node000028_Node000030" class="edge">
<title>Node28&#45;&gt;Node30</title>
<g id="a_edge37_Node000028_Node000030"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M1255.95,-187.86C1252.01,-178.78 1246.9,-167.01 1242.63,-157.18"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1245.93,-155.99 1238.74,-148.21 1239.51,-158.78 1245.93,-155.99"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node10 -->
<g id="edge41_Node000031_Node000010" class="edge">
<title>Node31&#45;&gt;Node10</title>
<g id="a_edge41_Node000031_Node000010"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M658.7,-189.59C620.79,-180.83 571.55,-168.01 529.31,-152.25 528.68,-152.02 528.05,-151.78 527.42,-151.53"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="529.18,-148.47 518.62,-147.63 526.34,-154.88 529.18,-148.47"/>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node15 -->
<g id="edge40_Node000031_Node000015" class="edge">
<title>Node31&#45;&gt;Node15</title>
<g id="a_edge40_Node000031_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M731.31,-187.92C742.42,-171.29 756.46,-143.57 745.31,-121.75 722.09,-76.33 669.18,-45.96 633.84,-29.9"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="635.45,-26.78 624.88,-25.98 632.64,-33.19 635.45,-26.78"/>
</a>
</g>
</g>
<!-- Node32 -->
<g id="Node000032" class="node">
<title>Node32</title>
<g id="a_Node000032"><a xlink:title=" ">
<polygon fill="#e0e0e0" stroke="#999999" points="736.31,-146.62 678.31,-146.62 678.31,-127.38 736.31,-127.38 736.31,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="707.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">exception</text>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node32 -->
<g id="edge39_Node000031_Node000032" class="edge">
<title>Node31&#45;&gt;Node32</title>
<g id="a_edge39_Node000031_Node000032"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M717.36,-187.86C715.56,-178.98 713.26,-167.52 711.3,-157.83"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="714.79,-157.42 709.38,-148.31 707.93,-158.8 714.79,-157.42"/>
</a>
</g>
</g>
<!-- Node33 -->
<g id="Node000033" class="node">
<title>Node33</title>
<g id="a_Node000033"><a xlink:href="numeric_8hpp.html" target="_top" xlink:title=" ">
<polygon fill="white" stroke="#666666" points="660.56,-152.25 538.06,-152.25 538.06,-121.75 660.56,-121.75 660.56,-152.25"/>
<text xml:space="preserve" text-anchor="start" x="546.06" y="-138.75" font-family="Helvetica,sans-Serif" font-size="10.00">serif/utils/misc/concepts</text>
<text xml:space="preserve" text-anchor="middle" x="599.31" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">/numeric.hpp</text>
</a>
</g>
</g>
<!-- Node31&#45;&gt;Node33 -->
<g id="edge42_Node000031_Node000033" class="edge">
<title>Node31&#45;&gt;Node33</title>
<g id="a_edge42_Node000031_Node000033"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M692.85,-187.86C676.22,-179 654.78,-167.57 636.63,-157.89"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="638.46,-154.91 627.99,-153.29 635.17,-161.08 638.46,-154.91"/>
</a>
</g>
</g>
<!-- Node33&#45;&gt;Node15 -->
<g id="edge44_Node000033_Node000015" class="edge">
<title>Node33&#45;&gt;Node15</title>
<g id="a_edge44_Node000033_Node000015"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M599.31,-121.32C599.31,-100.03 599.31,-60.54 599.31,-36.51"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="602.81,-36.75 599.31,-26.75 595.81,-36.75 602.81,-36.75"/>
</a>
</g>
</g>
<!-- Node33&#45;&gt;Node18 -->
<g id="edge43_Node000033_Node000018" class="edge">
<title>Node33&#45;&gt;Node18</title>
<g id="a_edge43_Node000033_Node000018"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M582.74,-121.45C573.13,-113 560.99,-102.33 551.03,-93.58"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="553.59,-91.17 543.77,-87.2 548.97,-96.43 553.59,-91.17"/>
</a>
</g>
</g>
<!-- Node34&#45;&gt;Node22 -->
<g id="edge49_Node000034_Node000022" class="edge">
<title>Node34&#45;&gt;Node22</title>
<g id="a_edge49_Node000034_Node000022"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M959.95,-193.4C980.7,-182.69 1015.4,-164.78 1039.72,-152.24"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="1041.12,-155.45 1048.41,-147.75 1037.91,-149.23 1041.12,-155.45"/>
</a>
</g>
</g>
<!-- Node34&#45;&gt;Node26 -->
<g id="edge47_Node000034_Node000026" class="edge">
<title>Node34&#45;&gt;Node26</title>
<g id="a_edge47_Node000034_Node000026"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M931.88,-193.53C920.12,-183.42 900.77,-166.78 886.31,-154.35"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="888.66,-151.75 878.79,-147.88 884.09,-157.05 888.66,-151.75"/>
</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="969.06,-146.62 915.56,-146.62 915.56,-127.38 969.06,-127.38 969.06,-146.62"/>
<text xml:space="preserve" text-anchor="middle" x="942.31" y="-133.12" font-family="Helvetica,sans-Serif" font-size="10.00">iostream</text>
</a>
</g>
</g>
<!-- Node34&#45;&gt;Node35 -->
<g id="edge48_Node000034_Node000035" class="edge">
<title>Node34&#45;&gt;Node35</title>
<g id="a_edge48_Node000034_Node000035"><a xlink:title=" ">
<path fill="none" stroke="#63b8ff" d="M942.31,-193.53C942.31,-184.48 942.31,-170.2 942.31,-158.38"/>
<polygon fill="#63b8ff" stroke="#63b8ff" points="945.81,-158.41 942.31,-148.41 938.81,-158.41 945.81,-158.41"/>
</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="factorization_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>