mapcomplete/dependencies.svg

8177 lines
803 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 2.43.0 (0)
-->
<!-- Title: dependency&#45;cruiser output Pages: 1 -->
<svg width="1431pt" height="10931pt"
viewBox="0.00 0.00 1430.50 10931.26" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 10927.26)">
<title>dependency&#45;cruiser output</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-10927.26 1426.5,-10927.26 1426.5,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_Customizations</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M758,-4280C758,-4280 1204.5,-4280 1204.5,-4280 1210.5,-4280 1216.5,-4286 1216.5,-4292 1216.5,-4292 1216.5,-4320 1216.5,-4320 1216.5,-4326 1210.5,-4332 1204.5,-4332 1204.5,-4332 758,-4332 758,-4332 752,-4332 746,-4326 746,-4320 746,-4320 746,-4292 746,-4292 746,-4286 752,-4280 758,-4280"/>
<text text-anchor="middle" x="981.25" y="-4320.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Customizations</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_Logic</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M20,-8772C20,-8772 1357.5,-8772 1357.5,-8772 1363.5,-8772 1369.5,-8778 1369.5,-8784 1369.5,-8784 1369.5,-10850 1369.5,-10850 1369.5,-10856 1363.5,-10862 1357.5,-10862 1357.5,-10862 20,-10862 20,-10862 14,-10862 8,-10856 8,-10850 8,-10850 8,-8784 8,-8784 8,-8778 14,-8772 20,-8772"/>
<text text-anchor="middle" x="688.75" y="-10850.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Logic</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_Logic/Actors</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M730.5,-8942C730.5,-8942 881.5,-8942 881.5,-8942 887.5,-8942 893.5,-8948 893.5,-8954 893.5,-8954 893.5,-9192 893.5,-9192 893.5,-9198 887.5,-9204 881.5,-9204 881.5,-9204 730.5,-9204 730.5,-9204 724.5,-9204 718.5,-9198 718.5,-9192 718.5,-9192 718.5,-8954 718.5,-8954 718.5,-8948 724.5,-8942 730.5,-8942"/>
<text text-anchor="middle" x="806" y="-9192.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Actors</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_Logic/FeatureSource</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M337.5,-9636C337.5,-9636 919,-9636 919,-9636 925,-9636 931,-9642 931,-9648 931,-9648 931,-10160 931,-10160 931,-10166 925,-10172 919,-10172 919,-10172 337.5,-10172 337.5,-10172 331.5,-10172 325.5,-10166 325.5,-10160 325.5,-10160 325.5,-9648 325.5,-9648 325.5,-9642 331.5,-9636 337.5,-9636"/>
<text text-anchor="middle" x="628.25" y="-10160.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">FeatureSource</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_Logic/FeatureSource/Actors</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M479,-9830C479,-9830 669,-9830 669,-9830 675,-9830 681,-9836 681,-9842 681,-9842 681,-9900 681,-9900 681,-9906 675,-9912 669,-9912 669,-9912 479,-9912 479,-9912 473,-9912 467,-9906 467,-9900 467,-9900 467,-9842 467,-9842 467,-9836 473,-9830 479,-9830"/>
<text text-anchor="middle" x="574" y="-9900.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Actors</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_Logic/FeatureSource/Sources</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M701,-9644C701,-9644 911,-9644 911,-9644 917,-9644 923,-9650 923,-9656 923,-9656 923,-9924 923,-9924 923,-9930 917,-9936 911,-9936 911,-9936 701,-9936 701,-9936 695,-9936 689,-9930 689,-9924 689,-9924 689,-9656 689,-9656 689,-9650 695,-9644 701,-9644"/>
<text text-anchor="middle" x="806" y="-9924.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Sources</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_Logic/FeatureSource/TiledFeatureSource</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M503.5,-9944C503.5,-9944 858.5,-9944 858.5,-9944 864.5,-9944 870.5,-9950 870.5,-9956 870.5,-9956 870.5,-10134 870.5,-10134 870.5,-10140 864.5,-10146 858.5,-10146 858.5,-10146 503.5,-10146 503.5,-10146 497.5,-10146 491.5,-10140 491.5,-10134 491.5,-10134 491.5,-9956 491.5,-9956 491.5,-9950 497.5,-9944 503.5,-9944"/>
<text text-anchor="middle" x="681" y="-10134.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">TiledFeatureSource</text>
</g>
<g id="clust8" class="cluster">
<title>cluster_Logic/ImageProviders</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M332,-8780C332,-8780 1047.5,-8780 1047.5,-8780 1053.5,-8780 1059.5,-8786 1059.5,-8792 1059.5,-8792 1059.5,-8922 1059.5,-8922 1059.5,-8928 1053.5,-8934 1047.5,-8934 1047.5,-8934 332,-8934 332,-8934 326,-8934 320,-8928 320,-8922 320,-8922 320,-8792 320,-8792 320,-8786 326,-8780 332,-8780"/>
<text text-anchor="middle" x="689.75" y="-8922.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">ImageProviders</text>
</g>
<g id="clust9" class="cluster">
<title>cluster_Logic/Osm</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M483,-10234C483,-10234 1204.5,-10234 1204.5,-10234 1210.5,-10234 1216.5,-10240 1216.5,-10246 1216.5,-10246 1216.5,-10560 1216.5,-10560 1216.5,-10566 1210.5,-10572 1204.5,-10572 1204.5,-10572 483,-10572 483,-10572 477,-10572 471,-10566 471,-10560 471,-10560 471,-10246 471,-10246 471,-10240 477,-10234 483,-10234"/>
<text text-anchor="middle" x="843.75" y="-10560.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Osm</text>
</g>
<g id="clust10" class="cluster">
<title>cluster_Logic/Osm/Actions</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M491,-10334C491,-10334 1196.5,-10334 1196.5,-10334 1202.5,-10334 1208.5,-10340 1208.5,-10346 1208.5,-10346 1208.5,-10534 1208.5,-10534 1208.5,-10540 1202.5,-10546 1196.5,-10546 1196.5,-10546 491,-10546 491,-10546 485,-10546 479,-10540 479,-10534 479,-10534 479,-10346 479,-10346 479,-10340 485,-10334 491,-10334"/>
<text text-anchor="middle" x="843.75" y="-10534.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Actions</text>
</g>
<g id="clust11" class="cluster">
<title>cluster_Logic/State</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M28,-9536C28,-9536 860.5,-9536 860.5,-9536 866.5,-9536 872.5,-9542 872.5,-9548 872.5,-9548 872.5,-9576 872.5,-9576 872.5,-9582 866.5,-9588 860.5,-9588 860.5,-9588 28,-9588 28,-9588 22,-9588 16,-9582 16,-9576 16,-9576 16,-9548 16,-9548 16,-9542 22,-9536 28,-9536"/>
<text text-anchor="middle" x="444.25" y="-9576.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">State</text>
</g>
<g id="clust12" class="cluster">
<title>cluster_Logic/Tags</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M779,-9334C779,-9334 1349.5,-9334 1349.5,-9334 1355.5,-9334 1361.5,-9340 1361.5,-9346 1361.5,-9346 1361.5,-9476 1361.5,-9476 1361.5,-9482 1355.5,-9488 1349.5,-9488 1349.5,-9488 779,-9488 779,-9488 773,-9488 767,-9482 767,-9476 767,-9476 767,-9346 767,-9346 767,-9340 773,-9334 779,-9334"/>
<text text-anchor="middle" x="1064.25" y="-9476.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Tags</text>
</g>
<g id="clust13" class="cluster">
<title>cluster_Logic/Web</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M951,-9064C951,-9064 1168.5,-9064 1168.5,-9064 1174.5,-9064 1180.5,-9070 1180.5,-9076 1180.5,-9076 1180.5,-9314 1180.5,-9314 1180.5,-9320 1174.5,-9326 1168.5,-9326 1168.5,-9326 951,-9326 951,-9326 945,-9326 939,-9320 939,-9314 939,-9314 939,-9076 939,-9076 939,-9070 945,-9064 951,-9064"/>
<text text-anchor="middle" x="1059.75" y="-9314.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Web</text>
</g>
<g id="clust14" class="cluster">
<title>cluster_Models</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M513,-8402C513,-8402 1382.5,-8402 1382.5,-8402 1388.5,-8402 1394.5,-8408 1394.5,-8414 1394.5,-8414 1394.5,-8706 1394.5,-8706 1394.5,-8712 1388.5,-8718 1382.5,-8718 1382.5,-8718 513,-8718 513,-8718 507,-8718 501,-8712 501,-8706 501,-8706 501,-8414 501,-8414 501,-8408 507,-8402 513,-8402"/>
<text text-anchor="middle" x="947.75" y="-8706.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Models</text>
</g>
<g id="clust15" class="cluster">
<title>cluster_Models/ThemeConfig</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M521,-8436C521,-8436 1374.5,-8436 1374.5,-8436 1380.5,-8436 1386.5,-8442 1386.5,-8448 1386.5,-8448 1386.5,-8654 1386.5,-8654 1386.5,-8660 1380.5,-8666 1374.5,-8666 1374.5,-8666 521,-8666 521,-8666 515,-8666 509,-8660 509,-8654 509,-8654 509,-8448 509,-8448 509,-8442 515,-8436 521,-8436"/>
<text text-anchor="middle" x="947.75" y="-8654.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">ThemeConfig</text>
</g>
<g id="clust16" class="cluster">
<title>cluster_UI</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M165,-4496C165,-4496 1363.5,-4496 1363.5,-4496 1369.5,-4496 1375.5,-4502 1375.5,-4508 1375.5,-4508 1375.5,-7940 1375.5,-7940 1375.5,-7946 1369.5,-7952 1363.5,-7952 1363.5,-7952 165,-7952 165,-7952 159,-7952 153,-7946 153,-7940 153,-7940 153,-4508 153,-4508 153,-4502 159,-4496 165,-4496"/>
<text text-anchor="middle" x="764.25" y="-7940.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">UI</text>
</g>
<g id="clust17" class="cluster">
<title>cluster_UI/Base</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M751,-5378C751,-5378 1190.5,-5378 1190.5,-5378 1196.5,-5378 1202.5,-5384 1202.5,-5390 1202.5,-5390 1202.5,-5658 1202.5,-5658 1202.5,-5664 1196.5,-5670 1190.5,-5670 1190.5,-5670 751,-5670 751,-5670 745,-5670 739,-5664 739,-5658 739,-5658 739,-5390 739,-5390 739,-5384 745,-5378 751,-5378"/>
<text text-anchor="middle" x="970.75" y="-5658.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Base</text>
</g>
<g id="clust18" class="cluster">
<title>cluster_UI/BigComponents</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M533.5,-5862C533.5,-5862 614.5,-5862 614.5,-5862 620.5,-5862 626.5,-5868 626.5,-5874 626.5,-5874 626.5,-6052 626.5,-6052 626.5,-6058 620.5,-6064 614.5,-6064 614.5,-6064 533.5,-6064 533.5,-6064 527.5,-6064 521.5,-6058 521.5,-6052 521.5,-6052 521.5,-5874 521.5,-5874 521.5,-5868 527.5,-5862 533.5,-5862"/>
<text text-anchor="middle" x="574" y="-6052.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">BigComponents</text>
</g>
<g id="clust19" class="cluster">
<title>cluster_UI/Image</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M332.5,-4912C332.5,-4912 840.5,-4912 840.5,-4912 846.5,-4912 852.5,-4918 852.5,-4924 852.5,-4924 852.5,-5012 852.5,-5012 852.5,-5018 846.5,-5024 840.5,-5024 840.5,-5024 332.5,-5024 332.5,-5024 326.5,-5024 320.5,-5018 320.5,-5012 320.5,-5012 320.5,-4924 320.5,-4924 320.5,-4918 326.5,-4912 332.5,-4912"/>
<text text-anchor="middle" x="586.5" y="-5012.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Image</text>
</g>
<g id="clust20" class="cluster">
<title>cluster_UI/Input</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M524,-6334C524,-6334 1046.5,-6334 1046.5,-6334 1052.5,-6334 1058.5,-6340 1058.5,-6346 1058.5,-6346 1058.5,-6794 1058.5,-6794 1058.5,-6800 1052.5,-6806 1046.5,-6806 1046.5,-6806 524,-6806 524,-6806 518,-6806 512,-6800 512,-6794 512,-6794 512,-6346 512,-6346 512,-6340 518,-6334 524,-6334"/>
<text text-anchor="middle" x="785.25" y="-6794.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Input</text>
</g>
<g id="clust21" class="cluster">
<title>cluster_UI/NewPoint</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M511,-5712C511,-5712 637,-5712 637,-5712 643,-5712 649,-5718 649,-5724 649,-5724 649,-5752 649,-5752 649,-5758 643,-5764 637,-5764 637,-5764 511,-5764 511,-5764 505,-5764 499,-5758 499,-5752 499,-5752 499,-5724 499,-5724 499,-5718 505,-5712 511,-5712"/>
<text text-anchor="middle" x="574" y="-5752.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">NewPoint</text>
</g>
<g id="clust22" class="cluster">
<title>cluster_UI/OpeningHours</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M173,-7526C173,-7526 1047.5,-7526 1047.5,-7526 1053.5,-7526 1059.5,-7532 1059.5,-7538 1059.5,-7538 1059.5,-7638 1059.5,-7638 1059.5,-7644 1053.5,-7650 1047.5,-7650 1047.5,-7650 173,-7650 173,-7650 167,-7650 161,-7644 161,-7638 161,-7638 161,-7538 161,-7538 161,-7532 167,-7526 173,-7526"/>
<text text-anchor="middle" x="610.25" y="-7638.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">OpeningHours</text>
</g>
<g id="clust23" class="cluster">
<title>cluster_UI/Popup</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M183.5,-4628C183.5,-4628 842,-4628 842,-4628 848,-4628 854,-4634 854,-4640 854,-4640 854,-4802 854,-4802 854,-4808 848,-4814 842,-4814 842,-4814 183.5,-4814 183.5,-4814 177.5,-4814 171.5,-4808 171.5,-4802 171.5,-4802 171.5,-4640 171.5,-4640 171.5,-4634 177.5,-4628 183.5,-4628"/>
<text text-anchor="middle" x="512.75" y="-4802.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Popup</text>
</g>
<g id="clust24" class="cluster">
<title>cluster_UI/Reviews</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M529.5,-5772C529.5,-5772 845,-5772 845,-5772 851,-5772 857,-5778 857,-5784 857,-5784 857,-5842 857,-5842 857,-5848 851,-5854 845,-5854 845,-5854 529.5,-5854 529.5,-5854 523.5,-5854 517.5,-5848 517.5,-5842 517.5,-5842 517.5,-5784 517.5,-5784 517.5,-5778 523.5,-5772 529.5,-5772"/>
<text text-anchor="middle" x="687.25" y="-5842.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Reviews</text>
</g>
<g id="clust25" class="cluster">
<title>cluster_UI/ShowDataLayer</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M742.5,-6814C742.5,-6814 1050,-6814 1050,-6814 1056,-6814 1062,-6820 1062,-6826 1062,-6826 1062,-6944 1062,-6944 1062,-6950 1056,-6956 1050,-6956 1050,-6956 742.5,-6956 742.5,-6956 736.5,-6956 730.5,-6950 730.5,-6944 730.5,-6944 730.5,-6826 730.5,-6826 730.5,-6820 736.5,-6814 742.5,-6814"/>
<text text-anchor="middle" x="896.25" y="-6944.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">ShowDataLayer</text>
</g>
<g id="clust26" class="cluster">
<title>cluster_UI/Wikipedia</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M329,-7212C329,-7212 861,-7212 861,-7212 867,-7212 873,-7218 873,-7224 873,-7224 873,-7266 873,-7266 873,-7272 867,-7278 861,-7278 861,-7278 329,-7278 329,-7278 323,-7278 317,-7272 317,-7266 317,-7266 317,-7224 317,-7224 317,-7218 323,-7212 329,-7212"/>
<text text-anchor="middle" x="595" y="-7266.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">Wikipedia</text>
</g>
<g id="clust27" class="cluster">
<title>cluster_UI/i18n</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M969.5,-5208C969.5,-5208 1343.5,-5208 1343.5,-5208 1349.5,-5208 1355.5,-5214 1355.5,-5220 1355.5,-5220 1355.5,-5248 1355.5,-5248 1355.5,-5254 1349.5,-5260 1343.5,-5260 1343.5,-5260 969.5,-5260 969.5,-5260 963.5,-5260 957.5,-5254 957.5,-5248 957.5,-5248 957.5,-5220 957.5,-5220 957.5,-5214 963.5,-5208 969.5,-5208"/>
<text text-anchor="middle" x="1156.5" y="-5248.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">i18n</text>
</g>
<g id="clust28" class="cluster">
<title>cluster_assets</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1236.5,-3750C1236.5,-3750 1402.5,-3750 1402.5,-3750 1408.5,-3750 1414.5,-3756 1414.5,-3762 1414.5,-3762 1414.5,-4304 1414.5,-4304 1414.5,-4310 1408.5,-4316 1402.5,-4316 1402.5,-4316 1236.5,-4316 1236.5,-4316 1230.5,-4316 1224.5,-4310 1224.5,-4304 1224.5,-4304 1224.5,-3762 1224.5,-3762 1224.5,-3756 1230.5,-3750 1236.5,-3750"/>
<text text-anchor="middle" x="1319.5" y="-4304.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">assets</text>
</g>
<g id="clust29" class="cluster">
<title>cluster_assets/generated</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1244.5,-4182C1244.5,-4182 1394.5,-4182 1394.5,-4182 1400.5,-4182 1406.5,-4188 1406.5,-4194 1406.5,-4194 1406.5,-4252 1406.5,-4252 1406.5,-4258 1400.5,-4264 1394.5,-4264 1394.5,-4264 1244.5,-4264 1244.5,-4264 1238.5,-4264 1232.5,-4258 1232.5,-4252 1232.5,-4252 1232.5,-4194 1232.5,-4194 1232.5,-4188 1238.5,-4182 1244.5,-4182"/>
<text text-anchor="middle" x="1319.5" y="-4252.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">generated</text>
</g>
<g id="clust30" class="cluster">
<title>cluster_assets/layers</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1254.5,-3758C1254.5,-3758 1384.5,-3758 1384.5,-3758 1390.5,-3758 1396.5,-3764 1396.5,-3770 1396.5,-3770 1396.5,-3952 1396.5,-3952 1396.5,-3958 1390.5,-3964 1384.5,-3964 1384.5,-3964 1254.5,-3964 1254.5,-3964 1248.5,-3964 1242.5,-3958 1242.5,-3952 1242.5,-3952 1242.5,-3770 1242.5,-3770 1242.5,-3764 1248.5,-3758 1254.5,-3758"/>
<text text-anchor="middle" x="1319.5" y="-3952.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">layers</text>
</g>
<g id="clust31" class="cluster">
<title>cluster_assets/layers/bike_repair_station</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1262.5,-3766C1262.5,-3766 1376.5,-3766 1376.5,-3766 1382.5,-3766 1388.5,-3772 1388.5,-3778 1388.5,-3778 1388.5,-3806 1388.5,-3806 1388.5,-3812 1382.5,-3818 1376.5,-3818 1376.5,-3818 1262.5,-3818 1262.5,-3818 1256.5,-3818 1250.5,-3812 1250.5,-3806 1250.5,-3806 1250.5,-3778 1250.5,-3778 1250.5,-3772 1256.5,-3766 1262.5,-3766"/>
<text text-anchor="middle" x="1319.5" y="-3806.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">bike_repair_station</text>
</g>
<g id="clust32" class="cluster">
<title>cluster_assets/layers/cluster_style</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1276.5,-3886C1276.5,-3886 1362.5,-3886 1362.5,-3886 1368.5,-3886 1374.5,-3892 1374.5,-3898 1374.5,-3898 1374.5,-3926 1374.5,-3926 1374.5,-3932 1368.5,-3938 1362.5,-3938 1362.5,-3938 1276.5,-3938 1276.5,-3938 1270.5,-3938 1264.5,-3932 1264.5,-3926 1264.5,-3926 1264.5,-3898 1264.5,-3898 1264.5,-3892 1270.5,-3886 1276.5,-3886"/>
<text text-anchor="middle" x="1319.5" y="-3926.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">cluster_style</text>
</g>
<g id="clust33" class="cluster">
<title>cluster_assets/layers/split_point</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1281.5,-3826C1281.5,-3826 1357.5,-3826 1357.5,-3826 1363.5,-3826 1369.5,-3832 1369.5,-3838 1369.5,-3838 1369.5,-3866 1369.5,-3866 1369.5,-3872 1363.5,-3878 1357.5,-3878 1357.5,-3878 1281.5,-3878 1281.5,-3878 1275.5,-3878 1269.5,-3872 1269.5,-3866 1269.5,-3866 1269.5,-3838 1269.5,-3838 1269.5,-3832 1275.5,-3826 1281.5,-3826"/>
<text text-anchor="middle" x="1319.5" y="-3866.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">split_point</text>
</g>
<g id="clust34" class="cluster">
<title>cluster_assets/tagRenderings</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1283,-4092C1283,-4092 1356,-4092 1356,-4092 1362,-4092 1368,-4098 1368,-4104 1368,-4104 1368,-4162 1368,-4162 1368,-4168 1362,-4174 1356,-4174 1356,-4174 1283,-4174 1283,-4174 1277,-4174 1271,-4168 1271,-4162 1271,-4162 1271,-4104 1271,-4104 1271,-4098 1277,-4092 1283,-4092"/>
<text text-anchor="middle" x="1319.5" y="-4162.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">tagRenderings</text>
</g>
<g id="clust35" class="cluster">
<title>cluster_assets/themes</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1277.5,-3972C1277.5,-3972 1361.5,-3972 1361.5,-3972 1367.5,-3972 1373.5,-3978 1373.5,-3984 1373.5,-3984 1373.5,-4046 1373.5,-4046 1373.5,-4052 1367.5,-4058 1361.5,-4058 1361.5,-4058 1277.5,-4058 1277.5,-4058 1271.5,-4058 1265.5,-4052 1265.5,-4046 1265.5,-4046 1265.5,-3984 1265.5,-3984 1265.5,-3978 1271.5,-3972 1277.5,-3972"/>
<text text-anchor="middle" x="1319.5" y="-4046.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">themes</text>
</g>
<g id="clust36" class="cluster">
<title>cluster_assets/themes/personal</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M1285.5,-3980C1285.5,-3980 1353.5,-3980 1353.5,-3980 1359.5,-3980 1365.5,-3986 1365.5,-3992 1365.5,-3992 1365.5,-4020 1365.5,-4020 1365.5,-4026 1359.5,-4032 1353.5,-4032 1353.5,-4032 1285.5,-4032 1285.5,-4032 1279.5,-4032 1273.5,-4026 1273.5,-4020 1273.5,-4020 1273.5,-3992 1273.5,-3992 1273.5,-3986 1279.5,-3980 1285.5,-3980"/>
<text text-anchor="middle" x="1319.5" y="-4020.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">personal</text>
</g>
<g id="clust37" class="cluster">
<title>cluster_scripts</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M349,-24C349,-24 415,-24 415,-24 421,-24 427,-30 427,-36 427,-36 427,-64 427,-64 427,-70 421,-76 415,-76 415,-76 349,-76 349,-76 343,-76 337,-70 337,-64 337,-64 337,-36 337,-36 337,-30 343,-24 349,-24"/>
<text text-anchor="middle" x="382" y="-64.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">scripts</text>
</g>
<g id="clust38" class="cluster">
<title>cluster_test</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M203.5,-970C203.5,-970 606.5,-970 606.5,-970 612.5,-970 618.5,-976 618.5,-982 618.5,-982 618.5,-1430 618.5,-1430 618.5,-1436 612.5,-1442 606.5,-1442 606.5,-1442 203.5,-1442 203.5,-1442 197.5,-1442 191.5,-1436 191.5,-1430 191.5,-1430 191.5,-982 191.5,-982 191.5,-976 197.5,-970 203.5,-970"/>
<text text-anchor="middle" x="405" y="-1430.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">test</text>
</g>
<!-- AllTranslationAssets.ts -->
<g id="node1" class="node">
<title>AllTranslationAssets.ts</title>
<g id="a_node1"><a xlink:href="AllTranslationAssets.ts" xlink:title="AllTranslationAssets.ts">
<path fill="#ddfeff" stroke="black" d="M1197,-4384C1197,-4384 1094,-4384 1094,-4384 1091,-4384 1088,-4381 1088,-4378 1088,-4378 1088,-4372 1088,-4372 1088,-4369 1091,-4366 1094,-4366 1094,-4366 1197,-4366 1197,-4366 1200,-4366 1203,-4369 1203,-4372 1203,-4372 1203,-4378 1203,-4378 1203,-4381 1200,-4384 1197,-4384"/>
<text text-anchor="middle" x="1145.5" y="-4372.8" font-family="Helvetica,sans-Serif" font-size="9.00">AllTranslationAssets.ts</text>
</a>
</g>
</g>
<!-- assets/generated/CompiledTranslations.ts -->
<g id="node2" class="node">
<title>assets/generated/CompiledTranslations.ts</title>
<g id="a_node2"><a xlink:href="assets/generated/CompiledTranslations.ts" xlink:title="CompiledTranslations.ts">
<path fill="#ddfeff" stroke="black" d="M1374.5,-4238C1374.5,-4238 1264.5,-4238 1264.5,-4238 1261.5,-4238 1258.5,-4235 1258.5,-4232 1258.5,-4232 1258.5,-4226 1258.5,-4226 1258.5,-4223 1261.5,-4220 1264.5,-4220 1264.5,-4220 1374.5,-4220 1374.5,-4220 1377.5,-4220 1380.5,-4223 1380.5,-4226 1380.5,-4226 1380.5,-4232 1380.5,-4232 1380.5,-4235 1377.5,-4238 1374.5,-4238"/>
<text text-anchor="middle" x="1319.5" y="-4226.8" font-family="Helvetica,sans-Serif" font-size="9.00">CompiledTranslations.ts</text>
</a>
</g>
</g>
<!-- AllTranslationAssets.ts&#45;&gt;assets/generated/CompiledTranslations.ts -->
<g id="edge1" class="edge">
<title>AllTranslationAssets.ts&#45;&gt;assets/generated/CompiledTranslations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1203.08,-4367.49C1208.18,-4364.86 1212.81,-4361.44 1216.5,-4357 1232.89,-4337.31 1207.01,-4260.72 1224.5,-4242 1231.9,-4234.08 1241.71,-4229.37 1252.2,-4226.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1252.65,-4228.8 1258.09,-4225.5 1251.78,-4224.69 1252.65,-4228.8"/>
</g>
<!-- UI/i18n/Translation.ts -->
<g id="node130" class="node">
<title>UI/i18n/Translation.ts</title>
<g id="a_node130"><a xlink:href="UI/i18n/Translation.ts" xlink:title="Translation.ts">
<path fill="#ddfeff" stroke="black" d="M1177.5,-5234C1177.5,-5234 1113.5,-5234 1113.5,-5234 1110.5,-5234 1107.5,-5231 1107.5,-5228 1107.5,-5228 1107.5,-5222 1107.5,-5222 1107.5,-5219 1110.5,-5216 1113.5,-5216 1113.5,-5216 1177.5,-5216 1177.5,-5216 1180.5,-5216 1183.5,-5219 1183.5,-5222 1183.5,-5222 1183.5,-5228 1183.5,-5228 1183.5,-5231 1180.5,-5234 1177.5,-5234"/>
<text text-anchor="middle" x="1145.5" y="-5222.8" font-family="Helvetica,sans-Serif" font-size="9.00">Translation.ts</text>
</a>
</g>
</g>
<!-- assets/generated/CompiledTranslations.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge861" class="edge">
<title>assets/generated/CompiledTranslations.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1258.32,-4225.18C1245.49,-4227.38 1233.21,-4232.33 1224.5,-4242 1215.24,-4252.29 1217.38,-4477.19 1216.5,-4491 1198.06,-4780.56 1157.4,-5132.76 1148.32,-5209.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.21,-5209.69 1147.59,-5215.9 1150.38,-5210.19 1146.21,-5209.69"/>
</g>
<!-- Customizations/AllKnownLayers.ts -->
<g id="node3" class="node">
<title>Customizations/AllKnownLayers.ts</title>
<g id="a_node3"><a xlink:href="Customizations/AllKnownLayers.ts" xlink:title="AllKnownLayers.ts">
<path fill="#ddfeff" stroke="black" d="M1048.5,-4306C1048.5,-4306 962.5,-4306 962.5,-4306 959.5,-4306 956.5,-4303 956.5,-4300 956.5,-4300 956.5,-4294 956.5,-4294 956.5,-4291 959.5,-4288 962.5,-4288 962.5,-4288 1048.5,-4288 1048.5,-4288 1051.5,-4288 1054.5,-4291 1054.5,-4294 1054.5,-4294 1054.5,-4300 1054.5,-4300 1054.5,-4303 1051.5,-4306 1048.5,-4306"/>
<text text-anchor="middle" x="1005.5" y="-4294.8" font-family="Helvetica,sans-Serif" font-size="9.00">AllKnownLayers.ts</text>
</a>
</g>
</g>
<!-- assets/generated/known_layers_and_themes.json -->
<g id="node4" class="node">
<title>assets/generated/known_layers_and_themes.json</title>
<g id="a_node4"><a xlink:href="assets/generated/known_layers_and_themes.json" xlink:title="known_layers_and_themes.json">
<path fill="#ffee44" stroke="black" d="M1392.5,-4208C1392.5,-4208 1246.5,-4208 1246.5,-4208 1243.5,-4208 1240.5,-4205 1240.5,-4202 1240.5,-4202 1240.5,-4196 1240.5,-4196 1240.5,-4193 1243.5,-4190 1246.5,-4190 1246.5,-4190 1392.5,-4190 1392.5,-4190 1395.5,-4190 1398.5,-4193 1398.5,-4196 1398.5,-4196 1398.5,-4202 1398.5,-4202 1398.5,-4205 1395.5,-4208 1392.5,-4208"/>
<text text-anchor="middle" x="1319.5" y="-4196.8" font-family="Helvetica,sans-Serif" font-size="9.00">known_layers_and_themes.json</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayers.ts&#45;&gt;assets/generated/known_layers_and_themes.json -->
<g id="edge2" class="edge">
<title>Customizations/AllKnownLayers.ts&#45;&gt;assets/generated/known_layers_and_themes.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1008.97,-4287.86C1015.9,-4264.27 1037.99,-4201.49 1082.5,-4177 1134.68,-4148.28 1157.28,-4170.69 1216.5,-4177 1237.38,-4179.23 1260.26,-4183.95 1279.05,-4188.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1278.93,-4190.58 1285.25,-4189.96 1279.92,-4186.5 1278.93,-4190.58"/>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts -->
<g id="node5" class="node">
<title>Models/ThemeConfig/LayerConfig.ts</title>
<g id="a_node5"><a xlink:href="Models/ThemeConfig/LayerConfig.ts" xlink:title="LayerConfig.ts">
<path fill="#ddfeff" stroke="black" d="M840.5,-8492C840.5,-8492 771.5,-8492 771.5,-8492 768.5,-8492 765.5,-8489 765.5,-8486 765.5,-8486 765.5,-8480 765.5,-8480 765.5,-8477 768.5,-8474 771.5,-8474 771.5,-8474 840.5,-8474 840.5,-8474 843.5,-8474 846.5,-8477 846.5,-8480 846.5,-8480 846.5,-8486 846.5,-8486 846.5,-8489 843.5,-8492 840.5,-8492"/>
<text text-anchor="middle" x="806" y="-8480.8" font-family="Helvetica,sans-Serif" font-size="9.00">LayerConfig.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayers.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge3" class="edge">
<title>Customizations/AllKnownLayers.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1003.57,-4306.38C996.65,-4377.03 952.85,-4833.05 939,-5205 938.58,-5216.32 938.53,-8459.53 931,-8468 913.82,-8487.33 885.74,-8491.91 860.64,-8491.28"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="852.82,-8488.69 846.7,-8490.42 852.56,-8492.89 852.82,-8488.69"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="852.69,-8490.79 855.68,-8490.97 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="858.08" cy="-8491.12" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/WithContextLoader.ts -->
<g id="node6" class="node">
<title>Models/ThemeConfig/WithContextLoader.ts</title>
<g id="a_node6"><a xlink:href="Models/ThemeConfig/WithContextLoader.ts" xlink:title="WithContextLoader.ts">
<path fill="#ddfeff" stroke="black" d="M1196,-8462C1196,-8462 1095,-8462 1095,-8462 1092,-8462 1089,-8459 1089,-8456 1089,-8456 1089,-8450 1089,-8450 1089,-8447 1092,-8444 1095,-8444 1095,-8444 1196,-8444 1196,-8444 1199,-8444 1202,-8447 1202,-8450 1202,-8450 1202,-8456 1202,-8456 1202,-8459 1199,-8462 1196,-8462"/>
<text text-anchor="middle" x="1145.5" y="-8450.8" font-family="Helvetica,sans-Serif" font-size="9.00">WithContextLoader.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayers.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts -->
<g id="edge4" class="edge">
<title>Customizations/AllKnownLayers.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1007.38,-4306.38C1014,-4377.04 1055.87,-4833.12 1069.5,-5205 1070.29,-5226.66 1068.44,-8201.85 1086.84,-8431.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1085.96,-8440.31 1088.93,-8445.93 1090.11,-8439.68 1085.96,-8440.31"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1088.04,-8439.99 1087.59,-8437.03 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1087.24" cy="-8434.65" rx="2.4" ry="2.4"/>
</g>
<!-- Utils.ts -->
<g id="node7" class="node">
<title>Utils.ts</title>
<g id="a_node7"><a xlink:href="Utils.ts" xlink:title="Utils.ts">
<path fill="#ddfeff" stroke="black" d="M1340.5,-3650C1340.5,-3650 1298.5,-3650 1298.5,-3650 1295.5,-3650 1292.5,-3647 1292.5,-3644 1292.5,-3644 1292.5,-3638 1292.5,-3638 1292.5,-3635 1295.5,-3632 1298.5,-3632 1298.5,-3632 1340.5,-3632 1340.5,-3632 1343.5,-3632 1346.5,-3635 1346.5,-3638 1346.5,-3638 1346.5,-3644 1346.5,-3644 1346.5,-3647 1343.5,-3650 1340.5,-3650"/>
<text text-anchor="middle" x="1319.5" y="-3638.8" font-family="Helvetica,sans-Serif" font-size="9.00">Utils.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayers.ts&#45;&gt;Utils.ts -->
<g id="edge5" class="edge">
<title>Customizations/AllKnownLayers.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1008.67,-4287.77C1017.77,-4248.7 1053.12,-4092.97 1069.5,-3963 1072.31,-3940.69 1068.01,-3778.2 1082.5,-3761 1121.96,-3714.18 1162,-3756.9 1216.5,-3729 1253.92,-3709.84 1289.09,-3674.2 1306.71,-3654.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1308.38,-3655.95 1310.8,-3650.07 1305.24,-3653.15 1308.38,-3655.95"/>
</g>
<!-- Customizations/SharedTagRenderings.ts -->
<g id="node8" class="node">
<title>Customizations/SharedTagRenderings.ts</title>
<g id="a_node8"><a xlink:href="Customizations/SharedTagRenderings.ts" xlink:title="SharedTagRenderings.ts">
<path fill="#ddfeff" stroke="black" d="M1202.5,-4306C1202.5,-4306 1088.5,-4306 1088.5,-4306 1085.5,-4306 1082.5,-4303 1082.5,-4300 1082.5,-4300 1082.5,-4294 1082.5,-4294 1082.5,-4291 1085.5,-4288 1088.5,-4288 1088.5,-4288 1202.5,-4288 1202.5,-4288 1205.5,-4288 1208.5,-4291 1208.5,-4294 1208.5,-4294 1208.5,-4300 1208.5,-4300 1208.5,-4303 1205.5,-4306 1202.5,-4306"/>
<text text-anchor="middle" x="1145.5" y="-4294.8" font-family="Helvetica,sans-Serif" font-size="9.00">SharedTagRenderings.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayers.ts&#45;&gt;Customizations/SharedTagRenderings.ts -->
<g id="edge6" class="edge">
<title>Customizations/AllKnownLayers.ts&#45;&gt;Customizations/SharedTagRenderings.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1054.77,-4297C1059.2,-4297 1063.75,-4297 1068.35,-4297"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1076.19,-4299.1 1082.19,-4297 1076.19,-4294.9 1076.19,-4299.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1076.19,-4297 1073.19,-4297 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1070.79" cy="-4297" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts -->
<g id="edge316" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.73,-8487.38C872.91,-8488.2 906.71,-8485.11 931,-8468 937.5,-8463.42 932.24,-8456.18 939,-8452 963.67,-8436.75 1040.5,-8451.81 1069.5,-8452 1071.26,-8452.01 1073.04,-8452.02 1074.84,-8452.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1082.78,-8454.22 1088.8,-8452.17 1082.82,-8450.02 1082.78,-8454.22"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1082.8,-8452.12 1079.8,-8452.09 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1077.4" cy="-8452.06" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Utils.ts -->
<g id="edge307" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.71,-8490.42C874.64,-8493.12 910.55,-8491.02 931,-8468 940.93,-8456.81 935.07,-4174.43 939,-4160 969.15,-4049.19 1035.99,-4046.84 1069.5,-3937 1082.95,-3892.92 1054.31,-3766.46 1082.5,-3730 1120.84,-3680.41 1157.98,-3708.46 1216.5,-3686 1243.42,-3675.67 1273.56,-3662.12 1294.05,-3652.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1295.01,-3654.47 1299.56,-3650.03 1293.23,-3650.66 1295.01,-3654.47"/>
</g>
<!-- UI/Base/Combine.ts -->
<g id="node11" class="node">
<title>UI/Base/Combine.ts</title>
<g id="a_node11"><a xlink:href="UI/Base/Combine.ts" xlink:title="Combine.ts">
<path fill="#ddfeff" stroke="black" d="M1033.5,-5584C1033.5,-5584 977.5,-5584 977.5,-5584 974.5,-5584 971.5,-5581 971.5,-5578 971.5,-5578 971.5,-5572 971.5,-5572 971.5,-5569 974.5,-5566 977.5,-5566 977.5,-5566 1033.5,-5566 1033.5,-5566 1036.5,-5566 1039.5,-5569 1039.5,-5572 1039.5,-5572 1039.5,-5578 1039.5,-5578 1039.5,-5581 1036.5,-5584 1033.5,-5584"/>
<text text-anchor="middle" x="1005.5" y="-5572.8" font-family="Helvetica,sans-Serif" font-size="9.00">Combine.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge302" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.7,-8490.42C874.63,-8493.11 910.54,-8491.02 931,-8468 944.28,-8453.06 926.52,-5605.61 939,-5590 945.45,-5581.92 955.29,-5577.64 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.34,-5574.46 965.07,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/Base/List.ts -->
<g id="node12" class="node">
<title>UI/Base/List.ts</title>
<g id="a_node12"><a xlink:href="UI/Base/List.ts" xlink:title="List.ts">
<path fill="#ddfeff" stroke="black" d="M827,-5404C827,-5404 785,-5404 785,-5404 782,-5404 779,-5401 779,-5398 779,-5398 779,-5392 779,-5392 779,-5389 782,-5386 785,-5386 785,-5386 827,-5386 827,-5386 830,-5386 833,-5389 833,-5392 833,-5392 833,-5398 833,-5398 833,-5401 830,-5404 827,-5404"/>
<text text-anchor="middle" x="806" y="-5392.8" font-family="Helvetica,sans-Serif" font-size="9.00">List.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/List.ts -->
<g id="edge304" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/List.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M765.28,-8490.39C733.45,-8493.59 693.06,-8491.02 683.67,-8460 680.61,-8449.89 680.61,-5428.11 683.67,-5418 693.79,-5384.55 739.94,-5384.18 772.56,-5388.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.66,-5390.59 778.89,-5389.36 773.25,-5386.43 772.66,-5390.59"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M765.21,-8491.58C734.2,-8495.5 695.39,-8493.9 686.33,-8464 683.26,-8453.86 683.26,-5424.14 686.33,-5414 696.13,-5381.63 740.83,-5382.43 772.72,-5387.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.64,-5389.61 778.91,-5388.56 773.35,-5385.47 772.64,-5389.61"/>
</g>
<!-- UI/Base/Title.ts -->
<g id="node13" class="node">
<title>UI/Base/Title.ts</title>
<g id="a_node13"><a xlink:href="UI/Base/Title.ts" xlink:title="Title.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-5644C1026.5,-5644 984.5,-5644 984.5,-5644 981.5,-5644 978.5,-5641 978.5,-5638 978.5,-5638 978.5,-5632 978.5,-5632 978.5,-5629 981.5,-5626 984.5,-5626 984.5,-5626 1026.5,-5626 1026.5,-5626 1029.5,-5626 1032.5,-5629 1032.5,-5632 1032.5,-5632 1032.5,-5638 1032.5,-5638 1032.5,-5641 1029.5,-5644 1026.5,-5644"/>
<text text-anchor="middle" x="1005.5" y="-5632.8" font-family="Helvetica,sans-Serif" font-size="9.00">Title.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge305" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.69,-8490.41C874.62,-8493.1 910.53,-8491.01 931,-8468 940.86,-8456.91 938.28,-6345.82 939,-6331 952.39,-6056.83 993.25,-5723.84 1002.59,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.67,-5650.22 1003.34,-5644 1000.5,-5649.69 1004.67,-5650.22"/>
</g>
<!-- assets/tagRenderings/icons.json -->
<g id="node14" class="node">
<title>assets/tagRenderings/icons.json</title>
<g id="a_node14"><a xlink:href="assets/tagRenderings/icons.json" xlink:title="icons.json">
<path fill="#ffee44" stroke="black" d="M1344,-4118C1344,-4118 1295,-4118 1295,-4118 1292,-4118 1289,-4115 1289,-4112 1289,-4112 1289,-4106 1289,-4106 1289,-4103 1292,-4100 1295,-4100 1295,-4100 1344,-4100 1344,-4100 1347,-4100 1350,-4103 1350,-4106 1350,-4106 1350,-4112 1350,-4112 1350,-4115 1347,-4118 1344,-4118"/>
<text text-anchor="middle" x="1319.5" y="-4106.8" font-family="Helvetica,sans-Serif" font-size="9.00">icons.json</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;assets/tagRenderings/icons.json -->
<g id="edge298" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;assets/tagRenderings/icons.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.71,-8490.42C874.64,-8493.12 910.55,-8491.02 931,-8468 950.33,-8446.24 926.54,-4303.3 939,-4277 1001.14,-4145.78 1200.57,-4117.05 1282.67,-4110.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1283.01,-4112.84 1288.85,-4110.31 1282.71,-4108.65 1283.01,-4112.84"/>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="node16" class="node">
<title>Models/ThemeConfig/TagRenderingConfig.ts</title>
<g id="a_node16"><a xlink:href="Models/ThemeConfig/TagRenderingConfig.ts" xlink:title="TagRenderingConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1372.5,-8462C1372.5,-8462 1266.5,-8462 1266.5,-8462 1263.5,-8462 1260.5,-8459 1260.5,-8456 1260.5,-8456 1260.5,-8450 1260.5,-8450 1260.5,-8447 1263.5,-8444 1266.5,-8444 1266.5,-8444 1372.5,-8444 1372.5,-8444 1375.5,-8444 1378.5,-8447 1378.5,-8450 1378.5,-8450 1378.5,-8456 1378.5,-8456 1378.5,-8459 1375.5,-8462 1372.5,-8462"/>
<text text-anchor="middle" x="1319.5" y="-8450.8" font-family="Helvetica,sans-Serif" font-size="9.00">TagRenderingConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge315" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M816.2,-8492.17C836.32,-8511.51 886.66,-8556 939,-8572 994.47,-8588.95 1012.94,-8584.82 1069.5,-8572 1157.16,-8552.13 1250.05,-8497.48 1293.44,-8469.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1301.37,-8467.03 1305.26,-8462 1299.08,-8463.51 1301.37,-8467.03"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1300.23,-8465.27 1297.71,-8466.91 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1295.7" cy="-8468.22" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/UIEventSource.ts -->
<g id="node18" class="node">
<title>Logic/UIEventSource.ts</title>
<g id="a_node18"><a xlink:href="Logic/UIEventSource.ts" xlink:title="UIEventSource.ts">
<path fill="#ddfeff" stroke="black" d="M1187,-9056C1187,-9056 1104,-9056 1104,-9056 1101,-9056 1098,-9053 1098,-9050 1098,-9050 1098,-9044 1098,-9044 1098,-9041 1101,-9038 1104,-9038 1104,-9038 1187,-9038 1187,-9038 1190,-9038 1193,-9041 1193,-9044 1193,-9044 1193,-9050 1193,-9050 1193,-9053 1190,-9056 1187,-9056"/>
<text text-anchor="middle" x="1145.5" y="-9044.8" font-family="Helvetica,sans-Serif" font-size="9.00">UIEventSource.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge301" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.74,-8490.22C874.51,-8492.76 910.2,-8490.56 931,-8468 946.23,-8451.49 922.81,-8281.57 939,-8266 980.82,-8225.81 1027.83,-8225.65 1069.5,-8266 1085.59,-8281.58 1080.32,-8646.71 1082.5,-8669 1096.4,-8811.2 1130.64,-8980.97 1141.29,-9031.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.28,-9032.55 1142.57,-9037.99 1143.39,-9031.68 1139.28,-9032.55"/>
</g>
<!-- UI/i18n/Translations.ts -->
<g id="node33" class="node">
<title>UI/i18n/Translations.ts</title>
<g id="a_node33"><a xlink:href="UI/i18n/Translations.ts" xlink:title="Translations.ts">
<path fill="#ddfeff" stroke="black" d="M1039.5,-5234C1039.5,-5234 971.5,-5234 971.5,-5234 968.5,-5234 965.5,-5231 965.5,-5228 965.5,-5228 965.5,-5222 965.5,-5222 965.5,-5219 968.5,-5216 971.5,-5216 971.5,-5216 1039.5,-5216 1039.5,-5216 1042.5,-5216 1045.5,-5219 1045.5,-5222 1045.5,-5222 1045.5,-5228 1045.5,-5228 1045.5,-5231 1042.5,-5234 1039.5,-5234"/>
<text text-anchor="middle" x="1005.5" y="-5222.8" font-family="Helvetica,sans-Serif" font-size="9.00">Translations.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge306" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.7,-8490.42C874.63,-8493.12 910.55,-8491.02 931,-8468 945.9,-8451.23 924.75,-5255.32 939,-5238 944.17,-5231.72 951.42,-5227.91 959.22,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.27,-5224.27 958.95,-5223.59 959.91,-5227.68"/>
</g>
<!-- Logic/ExtraFunctions.ts -->
<g id="node38" class="node">
<title>Logic/ExtraFunctions.ts</title>
<g id="a_node38"><a xlink:href="Logic/ExtraFunctions.ts" xlink:title="ExtraFunctions.ts">
<path fill="#ddfeff" stroke="black" d="M847.5,-9614C847.5,-9614 764.5,-9614 764.5,-9614 761.5,-9614 758.5,-9611 758.5,-9608 758.5,-9608 758.5,-9602 758.5,-9602 758.5,-9599 761.5,-9596 764.5,-9596 764.5,-9596 847.5,-9596 847.5,-9596 850.5,-9596 853.5,-9599 853.5,-9602 853.5,-9602 853.5,-9608 853.5,-9608 853.5,-9611 850.5,-9614 847.5,-9614"/>
<text text-anchor="middle" x="806" y="-9602.8" font-family="Helvetica,sans-Serif" font-size="9.00">ExtraFunctions.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/ExtraFunctions.ts -->
<g id="edge299" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/ExtraFunctions.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M800.75,-8492.18C780.65,-8527.94 708.49,-8661.99 685,-8783 682.88,-8793.93 681.77,-9574.34 685,-9585 693.04,-9611.54 724.21,-9616.25 752.9,-9614.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="753.16,-9616.56 758.98,-9614.01 752.83,-9612.38 753.16,-9616.56"/>
</g>
<!-- UI/Base/Link.ts -->
<g id="node77" class="node">
<title>UI/Base/Link.ts</title>
<g id="a_node77"><a xlink:href="UI/Base/Link.ts" xlink:title="Link.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-5614C1026.5,-5614 984.5,-5614 984.5,-5614 981.5,-5614 978.5,-5611 978.5,-5608 978.5,-5608 978.5,-5602 978.5,-5602 978.5,-5599 981.5,-5596 984.5,-5596 984.5,-5596 1026.5,-5596 1026.5,-5596 1029.5,-5596 1032.5,-5599 1032.5,-5602 1032.5,-5602 1032.5,-5608 1032.5,-5608 1032.5,-5611 1029.5,-5614 1026.5,-5614"/>
<text text-anchor="middle" x="1005.5" y="-5602.8" font-family="Helvetica,sans-Serif" font-size="9.00">Link.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge303" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.7,-8490.42C874.63,-8493.11 910.54,-8491.02 931,-8468 944.14,-8453.22 926.65,-5635.45 939,-5620 946.95,-5610.05 960.03,-5605.86 972.41,-5604.33"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.63,-5606.41 978.41,-5603.77 972.24,-5602.23 972.63,-5606.41"/>
</g>
<!-- Logic/Tags/TagUtils.ts -->
<g id="node117" class="node">
<title>Logic/Tags/TagUtils.ts</title>
<g id="a_node117"><a xlink:href="Logic/Tags/TagUtils.ts" xlink:title="TagUtils.ts">
<path fill="#ddfeff" stroke="black" d="M831,-9360C831,-9360 781,-9360 781,-9360 778,-9360 775,-9357 775,-9354 775,-9354 775,-9348 775,-9348 775,-9345 778,-9342 781,-9342 781,-9342 831,-9342 831,-9342 834,-9342 837,-9345 837,-9348 837,-9348 837,-9354 837,-9354 837,-9357 834,-9360 831,-9360"/>
<text text-anchor="middle" x="806" y="-9348.8" font-family="Helvetica,sans-Serif" font-size="9.00">TagUtils.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge300" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M800.75,-8492.18C780.65,-8527.94 708.49,-8661.99 685,-8783 682.14,-8797.73 680.65,-9308.64 685,-9323 694.67,-9354.92 736.83,-9358.49 768.69,-9356.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="769.1,-9358.39 774.91,-9355.81 768.76,-9354.2 769.1,-9358.39"/>
</g>
<!-- Models/ThemeConfig/DeleteConfig.ts -->
<g id="node123" class="node">
<title>Models/ThemeConfig/DeleteConfig.ts</title>
<g id="a_node123"><a xlink:href="Models/ThemeConfig/DeleteConfig.ts" xlink:title="DeleteConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1042,-8610C1042,-8610 969,-8610 969,-8610 966,-8610 963,-8607 963,-8604 963,-8604 963,-8598 963,-8598 963,-8595 966,-8592 969,-8592 969,-8592 1042,-8592 1042,-8592 1045,-8592 1048,-8595 1048,-8598 1048,-8598 1048,-8604 1048,-8604 1048,-8607 1045,-8610 1042,-8610"/>
<text text-anchor="middle" x="1005.5" y="-8598.8" font-family="Helvetica,sans-Serif" font-size="9.00">DeleteConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/DeleteConfig.ts -->
<g id="edge309" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/DeleteConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M816.4,-8492.2C836.9,-8511.77 887.95,-8557.82 939,-8583 944.55,-8585.74 950.58,-8588.11 956.66,-8590.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="956.38,-8592.27 962.74,-8592.09 957.66,-8588.27 956.38,-8592.27"/>
</g>
<!-- Models/ThemeConfig/FilterConfig.ts -->
<g id="node124" class="node">
<title>Models/ThemeConfig/FilterConfig.ts</title>
<g id="a_node124"><a xlink:href="Models/ThemeConfig/FilterConfig.ts" xlink:title="FilterConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1038.5,-8640C1038.5,-8640 972.5,-8640 972.5,-8640 969.5,-8640 966.5,-8637 966.5,-8634 966.5,-8634 966.5,-8628 966.5,-8628 966.5,-8625 969.5,-8622 972.5,-8622 972.5,-8622 1038.5,-8622 1038.5,-8622 1041.5,-8622 1044.5,-8625 1044.5,-8628 1044.5,-8628 1044.5,-8634 1044.5,-8634 1044.5,-8637 1041.5,-8640 1038.5,-8640"/>
<text text-anchor="middle" x="1005.5" y="-8628.8" font-family="Helvetica,sans-Serif" font-size="9.00">FilterConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/FilterConfig.ts -->
<g id="edge310" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/FilterConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.19,-8492.16C830.16,-8516.52 880.13,-8583.29 939,-8616 945.53,-8619.63 952.9,-8622.38 960.27,-8624.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.11,-8626.6 966.44,-8626.07 961.16,-8622.53 960.11,-8626.6"/>
</g>
<!-- Models/Unit.ts -->
<g id="node125" class="node">
<title>Models/Unit.ts</title>
<g id="a_node125"><a xlink:href="Models/Unit.ts" xlink:title="Unit.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-8428C1026.5,-8428 984.5,-8428 984.5,-8428 981.5,-8428 978.5,-8425 978.5,-8422 978.5,-8422 978.5,-8416 978.5,-8416 978.5,-8413 981.5,-8410 984.5,-8410 984.5,-8410 1026.5,-8410 1026.5,-8410 1029.5,-8410 1032.5,-8413 1032.5,-8416 1032.5,-8416 1032.5,-8422 1032.5,-8422 1032.5,-8425 1029.5,-8428 1026.5,-8428"/>
<text text-anchor="middle" x="1005.5" y="-8416.8" font-family="Helvetica,sans-Serif" font-size="9.00">Unit.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/Unit.ts -->
<g id="edge308" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/Unit.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.7,-8489.09C873.72,-8490.88 908.52,-8488.25 931,-8468 942.86,-8457.32 927.64,-8444.2 939,-8433 947.74,-8424.38 960.42,-8420.49 972.29,-8418.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.66,-8420.97 978.4,-8418.25 972.22,-8416.79 972.66,-8420.97"/>
</g>
<!-- Models/ThemeConfig/LineRenderingConfig.ts -->
<g id="node126" class="node">
<title>Models/ThemeConfig/LineRenderingConfig.ts</title>
<g id="a_node126"><a xlink:href="Models/ThemeConfig/LineRenderingConfig.ts" xlink:title="LineRenderingConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1060.5,-8566C1060.5,-8566 950.5,-8566 950.5,-8566 947.5,-8566 944.5,-8563 944.5,-8560 944.5,-8560 944.5,-8554 944.5,-8554 944.5,-8551 947.5,-8548 950.5,-8548 950.5,-8548 1060.5,-8548 1060.5,-8548 1063.5,-8548 1066.5,-8551 1066.5,-8554 1066.5,-8554 1066.5,-8560 1066.5,-8560 1066.5,-8563 1063.5,-8566 1060.5,-8566"/>
<text text-anchor="middle" x="1005.5" y="-8554.8" font-family="Helvetica,sans-Serif" font-size="9.00">LineRenderingConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/LineRenderingConfig.ts -->
<g id="edge311" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/LineRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.49,-8492.15C849.36,-8504.84 896.63,-8527.83 939,-8542 941.39,-8542.8 943.83,-8543.57 946.32,-8544.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="953.44,-8548.43 959.78,-8547.99 954.55,-8544.38 953.44,-8548.43"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="953.99,-8546.41 951.1,-8545.62 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="948.78" cy="-8544.98" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/MoveConfig.ts -->
<g id="node127" class="node">
<title>Models/ThemeConfig/MoveConfig.ts</title>
<g id="a_node127"><a xlink:href="Models/ThemeConfig/MoveConfig.ts" xlink:title="MoveConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1039.5,-8506C1039.5,-8506 971.5,-8506 971.5,-8506 968.5,-8506 965.5,-8503 965.5,-8500 965.5,-8500 965.5,-8494 965.5,-8494 965.5,-8491 968.5,-8488 971.5,-8488 971.5,-8488 1039.5,-8488 1039.5,-8488 1042.5,-8488 1045.5,-8491 1045.5,-8494 1045.5,-8494 1045.5,-8500 1045.5,-8500 1045.5,-8503 1042.5,-8506 1039.5,-8506"/>
<text text-anchor="middle" x="1005.5" y="-8494.8" font-family="Helvetica,sans-Serif" font-size="9.00">MoveConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/MoveConfig.ts -->
<g id="edge312" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/MoveConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.97,-8485.83C879.44,-8488.13 925.24,-8491.38 959.09,-8493.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.13,-8495.89 965.27,-8494.22 959.43,-8491.7 959.13,-8495.89"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts -->
<g id="node128" class="node">
<title>Models/ThemeConfig/PointRenderingConfig.ts</title>
<g id="a_node128"><a xlink:href="Models/ThemeConfig/PointRenderingConfig.ts" xlink:title="PointRenderingConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1062,-8536C1062,-8536 949,-8536 949,-8536 946,-8536 943,-8533 943,-8530 943,-8530 943,-8524 943,-8524 943,-8521 946,-8518 949,-8518 949,-8518 1062,-8518 1062,-8518 1065,-8518 1068,-8521 1068,-8524 1068,-8524 1068,-8530 1068,-8530 1068,-8533 1065,-8536 1062,-8536"/>
<text text-anchor="middle" x="1005.5" y="-8524.8" font-family="Helvetica,sans-Serif" font-size="9.00">PointRenderingConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/PointRenderingConfig.ts -->
<g id="edge313" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/PointRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.97,-8491.9C876.62,-8498.51 917.39,-8507.59 950.02,-8514.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="957.6,-8518.7 963.91,-8517.96 958.51,-8514.6 957.6,-8518.7"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.06,-8516.65 955.13,-8516 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="952.79" cy="-8515.48" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/SourceConfig.ts -->
<g id="node129" class="node">
<title>Models/ThemeConfig/SourceConfig.ts</title>
<g id="a_node129"><a xlink:href="Models/ThemeConfig/SourceConfig.ts" xlink:title="SourceConfig.ts">
<path fill="#ddfeff" stroke="black" d="M1043,-8476C1043,-8476 968,-8476 968,-8476 965,-8476 962,-8473 962,-8470 962,-8470 962,-8464 962,-8464 962,-8461 965,-8458 968,-8458 968,-8458 1043,-8458 1043,-8458 1046,-8458 1049,-8461 1049,-8464 1049,-8464 1049,-8470 1049,-8470 1049,-8473 1046,-8476 1043,-8476"/>
<text text-anchor="middle" x="1005.5" y="-8464.8" font-family="Helvetica,sans-Serif" font-size="9.00">SourceConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/SourceConfig.ts -->
<g id="edge314" class="edge">
<title>Models/ThemeConfig/LayerConfig.ts&#45;&gt;Models/ThemeConfig/SourceConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.97,-8479.76C878.38,-8477.22 922.26,-8473.66 955.73,-8470.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="956.05,-8473.03 961.86,-8470.45 955.71,-8468.85 956.05,-8473.03"/>
</g>
<!-- Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Utils.ts -->
<g id="edge345" class="edge">
<title>Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1202.19,-8450.38C1207.67,-8448 1212.62,-8444.65 1216.5,-8440 1226.89,-8427.52 1219.25,-3778.37 1224.5,-3763 1240.23,-3716.93 1281.13,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.08 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Customizations/SharedTagRenderings.ts -->
<g id="edge344" class="edge">
<title>Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Customizations/SharedTagRenderings.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1088.72,-8447.56C1083.2,-8444.45 1078.66,-8440.07 1076,-8434 1070.33,-8421.06 1070.57,-4379.04 1076,-4366 1084.85,-4344.74 1103.8,-4326.65 1119.68,-4314.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1127.39,-4311.32 1131,-4306.09 1124.91,-4307.93 1127.39,-4311.32"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1126.15,-4309.63 1123.73,-4311.39 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1121.79" cy="-4312.81" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge346" class="edge">
<title>Models/ThemeConfig/WithContextLoader.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1202.34,-8453C1216.39,-8453 1231.67,-8453 1246.39,-8453"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1254.28,-8455.1 1260.28,-8453 1254.28,-8450.9 1254.28,-8455.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1254.28,-8453 1251.28,-8453 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1248.88" cy="-8453" rx="2.4" ry="2.4"/>
</g>
<!-- assets/colors.json -->
<g id="node200" class="node">
<title>assets/colors.json</title>
<g id="a_node200"><a xlink:href="assets/colors.json" xlink:title="colors.json">
<path fill="#ffee44" stroke="black" d="M1345.5,-4084C1345.5,-4084 1293.5,-4084 1293.5,-4084 1290.5,-4084 1287.5,-4081 1287.5,-4078 1287.5,-4078 1287.5,-4072 1287.5,-4072 1287.5,-4069 1290.5,-4066 1293.5,-4066 1293.5,-4066 1345.5,-4066 1345.5,-4066 1348.5,-4066 1351.5,-4069 1351.5,-4072 1351.5,-4072 1351.5,-4078 1351.5,-4078 1351.5,-4081 1348.5,-4084 1345.5,-4084"/>
<text text-anchor="middle" x="1319.5" y="-4072.8" font-family="Helvetica,sans-Serif" font-size="9.00">colors.json</text>
</a>
</g>
</g>
<!-- Utils.ts&#45;&gt;assets/colors.json -->
<g id="edge860" class="edge">
<title>Utils.ts&#45;&gt;assets/colors.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1308.36,-3650.11C1286.01,-3669.27 1236.46,-3716.3 1220.5,-3769 1216.31,-3782.82 1216.31,-4015.18 1220.5,-4029 1228.15,-4054.25 1256.75,-4065.64 1281.26,-4070.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1281.1,-4072.89 1287.38,-4071.96 1281.89,-4068.76 1281.1,-4072.89"/>
</g>
<!-- Customizations/SharedTagRenderings.ts&#45;&gt;Utils.ts -->
<g id="edge16" class="edge">
<title>Customizations/SharedTagRenderings.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1169.89,-4287.89C1186.14,-4280.18 1206.6,-4267.43 1216.5,-4249 1229.28,-4225.21 1215.58,-3788.49 1224.5,-3763 1240.57,-3717.05 1281.32,-3674.76 1303.52,-3654.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.95,-3655.7 1307.96,-3650.1 1302.12,-3652.6 1304.95,-3655.7"/>
</g>
<!-- Customizations/SharedTagRenderings.ts&#45;&gt;assets/tagRenderings/icons.json -->
<g id="edge13" class="edge">
<title>Customizations/SharedTagRenderings.ts&#45;&gt;assets/tagRenderings/icons.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1169.29,-4287.91C1185.47,-4280.15 1206.09,-4267.32 1216.5,-4249 1230.25,-4224.8 1205.77,-4144.59 1224.5,-4124 1238.81,-4108.27 1262.49,-4104.56 1282.5,-4104.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1282.52,-4106.87 1288.58,-4104.95 1282.64,-4102.67 1282.52,-4106.87"/>
</g>
<!-- assets/tagRenderings/questions.json -->
<g id="node15" class="node">
<title>assets/tagRenderings/questions.json</title>
<g id="a_node15"><a xlink:href="assets/tagRenderings/questions.json" xlink:title="questions.json">
<path fill="#ffee44" stroke="black" d="M1354,-4148C1354,-4148 1285,-4148 1285,-4148 1282,-4148 1279,-4145 1279,-4142 1279,-4142 1279,-4136 1279,-4136 1279,-4133 1282,-4130 1285,-4130 1285,-4130 1354,-4130 1354,-4130 1357,-4130 1360,-4133 1360,-4136 1360,-4136 1360,-4142 1360,-4142 1360,-4145 1357,-4148 1354,-4148"/>
<text text-anchor="middle" x="1319.5" y="-4136.8" font-family="Helvetica,sans-Serif" font-size="9.00">questions.json</text>
</a>
</g>
</g>
<!-- Customizations/SharedTagRenderings.ts&#45;&gt;assets/tagRenderings/questions.json -->
<g id="edge14" class="edge">
<title>Customizations/SharedTagRenderings.ts&#45;&gt;assets/tagRenderings/questions.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1168.69,-4287.92C1184.78,-4280.1 1205.56,-4267.18 1216.5,-4249 1232.65,-4222.17 1205.77,-4204.1 1224.5,-4179 1236.13,-4163.42 1255.03,-4153.85 1272.85,-4148"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1273.72,-4149.93 1278.84,-4146.15 1272.48,-4145.91 1273.72,-4149.93"/>
</g>
<!-- Customizations/SharedTagRenderings.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge15" class="edge">
<title>Customizations/SharedTagRenderings.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1162.89,-4306.08C1179.91,-4316.55 1205.56,-4335.52 1216.5,-4360 1226.68,-4382.79 1222.15,-7930.15 1224.5,-7955 1242.08,-8140.69 1295,-8360.33 1312.68,-8430.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.62,-8438.63 1316.13,-8443.92 1316.69,-8437.59 1312.62,-8438.63"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.65,-8438.11 1313.91,-8435.2 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1313.32" cy="-8432.88" rx="2.4" ry="2.4"/>
</g>
<!-- Customizations/AllKnownLayouts.ts -->
<g id="node9" class="node">
<title>Customizations/AllKnownLayouts.ts</title>
<g id="a_node9"><a xlink:href="Customizations/AllKnownLayouts.ts" xlink:title="AllKnownLayouts.ts">
<path fill="#ddfeff" stroke="black" d="M852,-4306C852,-4306 760,-4306 760,-4306 757,-4306 754,-4303 754,-4300 754,-4300 754,-4294 754,-4294 754,-4291 757,-4288 760,-4288 760,-4288 852,-4288 852,-4288 855,-4288 858,-4291 858,-4294 858,-4294 858,-4300 858,-4300 858,-4303 855,-4306 852,-4306"/>
<text text-anchor="middle" x="806" y="-4294.8" font-family="Helvetica,sans-Serif" font-size="9.00">AllKnownLayouts.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;Customizations/AllKnownLayers.ts -->
<g id="edge12" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;Customizations/AllKnownLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M858.12,-4297C886.39,-4297 921.52,-4297 950.28,-4297"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="950.31,-4299.1 956.31,-4297 950.31,-4294.9 950.31,-4299.1"/>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;assets/generated/known_layers_and_themes.json -->
<g id="edge7" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;assets/generated/known_layers_and_themes.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M811.26,-4287.81C829.73,-4247.49 903.17,-4081.76 931,-3937 934.49,-3918.87 925.63,-3783.74 939,-3771 980.99,-3730.99 1021.73,-3738.1 1069.5,-3771 1074.47,-3774.42 1219.95,-4173.03 1224.5,-4177 1229.23,-4181.13 1234.6,-4184.53 1240.31,-4187.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1239.78,-4189.38 1246.12,-4189.9 1241.49,-4185.54 1239.78,-4189.38"/>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts -->
<g id="node10" class="node">
<title>Models/ThemeConfig/LayoutConfig.ts</title>
<g id="a_node10"><a xlink:href="Models/ThemeConfig/LayoutConfig.ts" xlink:title="LayoutConfig.ts">
<path fill="#ddfeff" stroke="black" d="M611.5,-8462C611.5,-8462 536.5,-8462 536.5,-8462 533.5,-8462 530.5,-8459 530.5,-8456 530.5,-8456 530.5,-8450 530.5,-8450 530.5,-8447 533.5,-8444 536.5,-8444 536.5,-8444 611.5,-8444 611.5,-8444 614.5,-8444 617.5,-8447 617.5,-8450 617.5,-8450 617.5,-8456 617.5,-8456 617.5,-8459 614.5,-8462 611.5,-8462"/>
<text text-anchor="middle" x="574" y="-8450.8" font-family="Helvetica,sans-Serif" font-size="9.00">LayoutConfig.ts</text>
</a>
</g>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts -->
<g id="edge8" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M800.49,-4306.08C781.98,-4343.92 711.79,-4493.17 689,-4625 673.02,-4717.46 691.94,-7909.81 681,-8003 660.55,-8177.24 597.75,-8381.99 579.82,-8438.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="577.79,-8437.6 577.95,-8443.95 581.79,-8438.88 577.79,-8437.6"/>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge9" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M811.8,-4306.04C831.48,-4343.72 906.2,-4492.46 931,-4625 933.39,-4637.76 930.86,-5549.88 939,-5560 945.48,-5568.06 955.32,-5572.33 965.42,-5574.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.1,-5576.56 971.37,-5575.51 965.82,-5572.42 965.1,-5576.56"/>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/List.ts -->
<g id="edge10" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/List.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M801.34,-4306.18C782.21,-4344.42 709.69,-4495.31 686.33,-4629 684.56,-4639.12 683.35,-5359.16 686.33,-5369 696.24,-5401.72 740.9,-5403.59 772.76,-5400.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="773.21,-5402.53 778.95,-5399.78 772.75,-5398.35 773.21,-5402.53"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M801.37,-4306.02C782.02,-4344.27 707.61,-4497.28 683.67,-4633 681.9,-4643.01 680.72,-5355.27 683.67,-5365 693.91,-5398.85 740.03,-5401.9 772.61,-5399.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="773.13,-5401.63 778.93,-5399.03 772.78,-5397.44 773.13,-5401.63"/>
</g>
<!-- Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge11" class="edge">
<title>Customizations/AllKnownLayouts.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M811.8,-4306.04C831.49,-4343.72 906.23,-4492.45 931,-4625 933.54,-4638.58 930.34,-5609.23 939,-5620 946.97,-5629.93 960.05,-5634.11 972.44,-5635.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.27,-5637.75 978.44,-5636.21 972.65,-5633.56 972.27,-5637.75"/>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Customizations/AllKnownLayers.ts -->
<g id="edge317" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Customizations/AllKnownLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.96,-8443.95C592.85,-8397.82 659.78,-8183.96 681,-8003 682.5,-7990.17 679.85,-4291.13 689,-4282 764.94,-4206.22 909.08,-4255.03 972.82,-4282.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="979.16,-4287.34 985.5,-4287.84 980.85,-4283.5 979.16,-4287.34"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="980.01,-4285.42 977.26,-4284.21 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="975.06" cy="-4283.24" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge321" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.76,-8458.65C639.16,-8461.47 665.44,-8464.93 689,-8468 709.42,-8470.66 731.86,-8473.57 751.51,-8476.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.05,-8479.2 765.27,-8477.88 759.59,-8475.03 759.05,-8479.2"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.32,-8477.12 756.34,-8476.73 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="753.96" cy="-8476.43" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Utils.ts -->
<g id="edge319" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.86,-8443.73C592.56,-8395.54 659.75,-8168.43 681,-7977 682.55,-7963.06 680.2,-3948.92 689,-3938 758.11,-3852.29 861.49,-3970.39 931,-3885 943.43,-3869.73 924.99,-3189.85 939,-3176 946.09,-3168.99 1208.88,-3170.83 1216.5,-3177 1288.85,-3235.58 1312.91,-3551.58 1317.59,-3625.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1315.52,-3626.04 1317.99,-3631.9 1319.71,-3625.78 1315.52,-3626.04"/>
</g>
<!-- Models/Constants.ts -->
<g id="node26" class="node">
<title>Models/Constants.ts</title>
<g id="a_node26"><a xlink:href="Models/Constants.ts" xlink:title="Constants.ts">
<path fill="#ddfeff" stroke="black" d="M836.5,-8428C836.5,-8428 775.5,-8428 775.5,-8428 772.5,-8428 769.5,-8425 769.5,-8422 769.5,-8422 769.5,-8416 769.5,-8416 769.5,-8413 772.5,-8410 775.5,-8410 775.5,-8410 836.5,-8410 836.5,-8410 839.5,-8410 842.5,-8413 842.5,-8416 842.5,-8416 842.5,-8422 842.5,-8422 842.5,-8425 839.5,-8428 836.5,-8428"/>
<text text-anchor="middle" x="806" y="-8416.8" font-family="Helvetica,sans-Serif" font-size="9.00">Constants.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/Constants.ts -->
<g id="edge320" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.68,-8444.95C639.05,-8441.07 665.35,-8436.5 689,-8433 713.58,-8429.36 741.19,-8426 763.31,-8423.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.67,-8425.56 769.4,-8422.8 763.2,-8421.38 763.67,-8425.56"/>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge318" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.96,-8443.95C592.85,-8397.82 659.78,-8183.96 681,-8003 684.05,-7977.03 680.29,-4262.65 689,-4238 746.19,-4076.15 870.1,-4097.49 931,-3937 937.55,-3919.74 925.63,-3783.74 939,-3771 980.99,-3730.99 1028.06,-3730.42 1069.5,-3771 1081.79,-3783.03 1081.68,-4372.82 1082.5,-4390 1098.3,-4721.89 1135.31,-5126.79 1143.06,-5209.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.99,-5210.18 1143.64,-5215.95 1145.18,-5209.78 1140.99,-5210.18"/>
</g>
<!-- Models/ThemeConfig/TilesourceConfig.ts -->
<g id="node131" class="node">
<title>Models/ThemeConfig/TilesourceConfig.ts</title>
<g id="a_node131"><a xlink:href="Models/ThemeConfig/TilesourceConfig.ts" xlink:title="TilesourceConfig.ts">
<path fill="#ddfeff" stroke="black" d="M850.5,-8462C850.5,-8462 761.5,-8462 761.5,-8462 758.5,-8462 755.5,-8459 755.5,-8456 755.5,-8456 755.5,-8450 755.5,-8450 755.5,-8447 758.5,-8444 761.5,-8444 761.5,-8444 850.5,-8444 850.5,-8444 853.5,-8444 856.5,-8447 856.5,-8450 856.5,-8450 856.5,-8456 856.5,-8456 856.5,-8459 853.5,-8462 850.5,-8462"/>
<text text-anchor="middle" x="806" y="-8450.8" font-family="Helvetica,sans-Serif" font-size="9.00">TilesourceConfig.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/ThemeConfig/TilesourceConfig.ts -->
<g id="edge322" class="edge">
<title>Models/ThemeConfig/LayoutConfig.ts&#45;&gt;Models/ThemeConfig/TilesourceConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.72,-8453C654.79,-8453 708.71,-8453 749.19,-8453"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="749.31,-8455.1 755.31,-8453 749.31,-8450.9 749.31,-8455.1"/>
</g>
<!-- UI/Base/Combine.ts&#45;&gt;Utils.ts -->
<g id="edge355" class="edge">
<title>UI/Base/Combine.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1039.69,-5574.97C1050.88,-5573.16 1062.34,-5568.96 1069.5,-5560 1089.29,-5535.24 1062.46,-4443.56 1082.5,-4419 1121.03,-4371.79 1177.94,-4437.18 1216.5,-4390 1227.52,-4376.51 1218.78,-3779.45 1224.5,-3763 1240.49,-3717.02 1281.27,-3674.74 1303.5,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.93,-3655.69 1307.95,-3650.09 1302.1,-3652.58 1304.93,-3655.69"/>
</g>
<!-- UI/Base/FixedUiElement.ts -->
<g id="node98" class="node">
<title>UI/Base/FixedUiElement.ts</title>
<g id="a_node98"><a xlink:href="UI/Base/FixedUiElement.ts" xlink:title="FixedUiElement.ts">
<path fill="#ddfeff" stroke="black" d="M1188.5,-5644C1188.5,-5644 1102.5,-5644 1102.5,-5644 1099.5,-5644 1096.5,-5641 1096.5,-5638 1096.5,-5638 1096.5,-5632 1096.5,-5632 1096.5,-5629 1099.5,-5626 1102.5,-5626 1102.5,-5626 1188.5,-5626 1188.5,-5626 1191.5,-5626 1194.5,-5629 1194.5,-5632 1194.5,-5632 1194.5,-5638 1194.5,-5638 1194.5,-5641 1191.5,-5644 1188.5,-5644"/>
<text text-anchor="middle" x="1145.5" y="-5632.8" font-family="Helvetica,sans-Serif" font-size="9.00">FixedUiElement.ts</text>
</a>
</g>
</g>
<!-- UI/Base/Combine.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge357" class="edge">
<title>UI/Base/Combine.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1039.64,-5576.95C1050.18,-5579.02 1061.22,-5582.9 1069.5,-5590 1081.15,-5600 1070.72,-5612.16 1082.5,-5622 1084.91,-5624.01 1087.54,-5625.73 1090.33,-5627.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1089.92,-5629.32 1096.25,-5629.9 1091.66,-5625.5 1089.92,-5629.32"/>
</g>
<!-- UI/BaseUIElement.ts -->
<g id="node137" class="node">
<title>UI/BaseUIElement.ts</title>
<g id="a_node137"><a xlink:href="UI/BaseUIElement.ts" xlink:title="BaseUIElement.ts">
<path fill="#ddfeff" stroke="black" d="M1361.5,-5510C1361.5,-5510 1277.5,-5510 1277.5,-5510 1274.5,-5510 1271.5,-5507 1271.5,-5504 1271.5,-5504 1271.5,-5498 1271.5,-5498 1271.5,-5495 1274.5,-5492 1277.5,-5492 1277.5,-5492 1361.5,-5492 1361.5,-5492 1364.5,-5492 1367.5,-5495 1367.5,-5498 1367.5,-5498 1367.5,-5504 1367.5,-5504 1367.5,-5507 1364.5,-5510 1361.5,-5510"/>
<text text-anchor="middle" x="1319.5" y="-5498.8" font-family="Helvetica,sans-Serif" font-size="9.00">BaseUIElement.ts</text>
</a>
</g>
</g>
<!-- UI/Base/Combine.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge356" class="edge">
<title>UI/Base/Combine.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1039.69,-5567.99C1081.16,-5559.13 1154.26,-5543.2 1216.5,-5528 1237.28,-5522.93 1260.34,-5516.86 1279.26,-5511.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1280.26,-5513.67 1285.51,-5510.08 1279.17,-5509.62 1280.26,-5513.67"/>
</g>
<!-- UI/Base/List.ts&#45;&gt;Utils.ts -->
<g id="edge364" class="edge">
<title>UI/Base/List.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M811.29,-5385.9C830.21,-5345.23 906.29,-5175.64 931,-5027 933.03,-5014.77 930.21,-3249.75 939,-3241 1026.4,-3153.99 1119.11,-3165.33 1216.5,-3241 1279.69,-3290.1 1310.26,-3557.95 1317.03,-3625.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.96,-3625.99 1317.64,-3631.75 1319.14,-3625.58 1314.96,-3625.99"/>
</g>
<!-- UI/Base/List.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge366" class="edge">
<title>UI/Base/List.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M811.81,-5385.7C826.59,-5358.1 874.32,-5276.23 939,-5238 945.16,-5234.36 952.16,-5231.72 959.23,-5229.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.83,-5231.82 965.17,-5228.37 958.84,-5227.74 959.83,-5231.82"/>
</g>
<!-- UI/Base/List.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge365" class="edge">
<title>UI/Base/List.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M814.37,-5385.71C832.63,-5363.56 882.55,-5308 939,-5288 968.06,-5277.7 1190.41,-5271.57 1216.5,-5288 1288.47,-5333.33 1310.78,-5445.07 1316.65,-5485.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.59,-5486.28 1317.49,-5491.94 1318.76,-5485.71 1314.59,-5486.28"/>
</g>
<!-- UI/Base/Title.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge390" class="edge">
<title>UI/Base/Title.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.78,-5635C1049.01,-5635 1070.44,-5635 1090.18,-5635"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1090.25,-5637.1 1096.25,-5635 1090.25,-5632.9 1090.25,-5637.1"/>
</g>
<!-- UI/Base/Title.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge389" class="edge">
<title>UI/Base/Title.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.7,-5629.34C1044.07,-5626.74 1057.51,-5623.46 1069.5,-5620 1135.81,-5600.88 1154.7,-5600.72 1216.5,-5570 1248.7,-5553.99 1282.62,-5529.24 1302.09,-5514.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1303.76,-5515.5 1307.19,-5510.15 1301.17,-5512.19 1303.76,-5515.5"/>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Utils.ts -->
<g id="edge342" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1317,-8443.82C1303.61,-8394.11 1240.23,-8151.8 1220.5,-7949 1219.09,-7934.55 1216.29,-3782.89 1220.5,-3769 1235.4,-3719.8 1279.58,-3675.54 1303.57,-3654.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.22,-3655.64 1308.36,-3650.11 1302.46,-3652.47 1305.22,-3655.64"/>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge339" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1316.34,-8443.9C1304.75,-8394.61 1249.44,-8154.49 1224.5,-7955 1098.46,-6946.66 1129.24,-6688.11 1082.5,-5673 1081.39,-5648.85 1085.05,-5256.51 1069.5,-5238 1064.84,-5232.45 1058.5,-5228.88 1051.63,-5226.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1052.1,-5224.6 1045.76,-5225.06 1051.01,-5228.65 1052.1,-5224.6"/>
</g>
<!-- Logic/Tags/And.ts -->
<g id="node83" class="node">
<title>Logic/Tags/And.ts</title>
<g id="a_node83"><a xlink:href="Logic/Tags/And.ts" xlink:title="And.ts">
<path fill="#ddfeff" stroke="black" d="M1166.5,-9390C1166.5,-9390 1124.5,-9390 1124.5,-9390 1121.5,-9390 1118.5,-9387 1118.5,-9384 1118.5,-9384 1118.5,-9378 1118.5,-9378 1118.5,-9375 1121.5,-9372 1124.5,-9372 1124.5,-9372 1166.5,-9372 1166.5,-9372 1169.5,-9372 1172.5,-9375 1172.5,-9378 1172.5,-9378 1172.5,-9384 1172.5,-9384 1172.5,-9387 1169.5,-9390 1166.5,-9390"/>
<text text-anchor="middle" x="1145.5" y="-9378.8" font-family="Helvetica,sans-Serif" font-size="9.00">And.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge336" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1317.63,-8462.14C1308.63,-8556.42 1232.6,-9348.2 1216.5,-9366 1207.1,-9376.39 1192.4,-9380.54 1178.9,-9381.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1178.63,-9379.84 1172.8,-9382.38 1178.94,-9384.03 1178.63,-9379.84"/>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge337" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1308.79,-8462.13C1290.8,-8478.96 1251.01,-8515.93 1216.5,-8546 1156.01,-8598.71 973.73,-8704.67 939,-8777 918.32,-8820.08 948.05,-9162.36 931,-9207 908.95,-9264.74 852.77,-9315.09 824.22,-9337.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="822.63,-9336.52 819.22,-9341.88 825.23,-9339.82 822.63,-9336.52"/>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge338" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1316.14,-8443.92C1303.48,-8394.75 1243.54,-8155.14 1224.5,-7955 1217.71,-7883.65 1232.13,-5444.94 1216.5,-5375 1204.67,-5322.07 1172.24,-5265.66 1156.01,-5239.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1157.6,-5238.25 1152.62,-5234.3 1154.05,-5240.5 1157.6,-5238.25"/>
</g>
<!-- UI/Input/ValidatedTextField.ts -->
<g id="node134" class="node">
<title>UI/Input/ValidatedTextField.ts</title>
<g id="a_node134"><a xlink:href="UI/Input/ValidatedTextField.ts" xlink:title="ValidatedTextField.ts">
<path fill="#ddfeff" stroke="black" d="M622,-6570C622,-6570 526,-6570 526,-6570 523,-6570 520,-6567 520,-6564 520,-6564 520,-6558 520,-6558 520,-6555 523,-6552 526,-6552 526,-6552 622,-6552 622,-6552 625,-6552 628,-6555 628,-6558 628,-6558 628,-6564 628,-6564 628,-6567 625,-6570 622,-6570"/>
<text text-anchor="middle" x="574" y="-6558.8" font-family="Helvetica,sans-Serif" font-size="9.00">ValidatedTextField.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/Input/ValidatedTextField.ts -->
<g id="edge340" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/Input/ValidatedTextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1316.13,-8443.92C1303.46,-8394.76 1243.44,-8155.15 1224.5,-7955 1222.09,-7929.57 1227.65,-4299.98 1216.5,-4277 1183.34,-4208.68 1116.42,-4238.94 1082.5,-4171 1069.37,-4144.7 1090.17,-3662.91 1069.5,-3642 1039.78,-3611.93 718.95,-3607.15 689,-3637 677.05,-3648.91 682.81,-6050.22 681,-6067 660.33,-6258.85 596.91,-6485.76 579.48,-6545.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="577.42,-6545.35 577.76,-6551.7 581.45,-6546.53 577.42,-6545.35"/>
</g>
<!-- UI/SubstitutedTranslation.ts -->
<g id="node135" class="node">
<title>UI/SubstitutedTranslation.ts</title>
<g id="a_node135"><a xlink:href="UI/SubstitutedTranslation.ts" xlink:title="SubstitutedTranslation.ts">
<path fill="#ddfeff" stroke="black" d="M286,-4572C286,-4572 169,-4572 169,-4572 166,-4572 163,-4569 163,-4566 163,-4566 163,-4560 163,-4560 163,-4557 166,-4554 169,-4554 169,-4554 286,-4554 286,-4554 289,-4554 292,-4557 292,-4560 292,-4560 292,-4566 292,-4566 292,-4569 289,-4572 286,-4572"/>
<text text-anchor="middle" x="227.5" y="-4560.8" font-family="Helvetica,sans-Serif" font-size="9.00">SubstitutedTranslation.ts</text>
</a>
</g>
</g>
<!-- Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/SubstitutedTranslation.ts -->
<g id="edge341" class="edge">
<title>Models/ThemeConfig/TagRenderingConfig.ts&#45;&gt;UI/SubstitutedTranslation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1316.13,-8443.92C1303.46,-8394.76 1243.43,-8155.15 1224.5,-7955 1214.27,-7846.79 1220.81,-4150.61 1216.5,-4042 1185.91,-3271.41 1117.81,-3082.38 1082.5,-2312 1081.34,-2286.77 1086.7,-1421.49 1069.5,-1403 1027.41,-1357.76 992.73,-1393.67 931,-1391 823.54,-1386.35 768.84,-1318.93 689,-1391 676.07,-1402.68 692.95,-1456.32 681,-1469 614.92,-1539.16 557.18,-1470.02 467,-1504 463.08,-1505.48 462.87,-1507.38 459,-1509 394.09,-1536.23 349.27,-1491.27 305,-1546 255.02,-1607.78 231.05,-4263.4 228.69,-4539.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="226.53,-4547.98 228.57,-4554 230.72,-4548.02 226.53,-4547.98"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="228.62,-4548 228.65,-4545 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="228.67" cy="-4542.6" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Actors/AvailableBaseLayers.ts -->
<g id="node17" class="node">
<title>Logic/Actors/AvailableBaseLayers.ts</title>
<g id="a_node17"><a xlink:href="Logic/Actors/AvailableBaseLayers.ts" xlink:title="AvailableBaseLayers.ts">
<path fill="#ddfeff" stroke="black" d="M859,-8998C859,-8998 753,-8998 753,-8998 750,-8998 747,-8995 747,-8992 747,-8992 747,-8986 747,-8986 747,-8983 750,-8980 753,-8980 753,-8980 859,-8980 859,-8980 862,-8980 865,-8983 865,-8986 865,-8986 865,-8992 865,-8992 865,-8995 862,-8998 859,-8998"/>
<text text-anchor="middle" x="806" y="-8986.8" font-family="Helvetica,sans-Serif" font-size="9.00">AvailableBaseLayers.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/AvailableBaseLayers.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge17" class="edge">
<title>Logic/Actors/AvailableBaseLayers.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.15,-8981.35C919.41,-8976.34 1001.92,-8974.21 1069.5,-8996 1092.99,-9003.57 1115.83,-9020.99 1130.01,-9033.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1128.96,-9035.23 1134.83,-9037.66 1131.75,-9032.1 1128.96,-9035.23"/>
</g>
<!-- Logic/UIEventSource.ts&#45;&gt;Utils.ts -->
<g id="edge275" class="edge">
<title>Logic/UIEventSource.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1160.8,-9037.95C1177.78,-9026.26 1205.23,-9004.14 1216.5,-8977 1230.38,-8943.56 1212.8,-3797.27 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Actors/ChangeToElementsActor.ts -->
<g id="node19" class="node">
<title>Logic/Actors/ChangeToElementsActor.ts</title>
<g id="a_node19"><a xlink:href="Logic/Actors/ChangeToElementsActor.ts" xlink:title="ChangeToElementsActor.ts">
<path fill="#ddfeff" stroke="black" d="M867.5,-9118C867.5,-9118 744.5,-9118 744.5,-9118 741.5,-9118 738.5,-9115 738.5,-9112 738.5,-9112 738.5,-9106 738.5,-9106 738.5,-9103 741.5,-9100 744.5,-9100 744.5,-9100 867.5,-9100 867.5,-9100 870.5,-9100 873.5,-9103 873.5,-9106 873.5,-9106 873.5,-9112 873.5,-9112 873.5,-9115 870.5,-9118 867.5,-9118"/>
<text text-anchor="middle" x="806" y="-9106.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangeToElementsActor.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/InstalledThemes.ts -->
<g id="node20" class="node">
<title>Logic/Actors/InstalledThemes.ts</title>
<g id="a_node20"><a xlink:href="Logic/Actors/InstalledThemes.ts" xlink:title="InstalledThemes.ts">
<path fill="#ddfeff" stroke="black" d="M850.5,-9028C850.5,-9028 761.5,-9028 761.5,-9028 758.5,-9028 755.5,-9025 755.5,-9022 755.5,-9022 755.5,-9016 755.5,-9016 755.5,-9013 758.5,-9010 761.5,-9010 761.5,-9010 850.5,-9010 850.5,-9010 853.5,-9010 856.5,-9013 856.5,-9016 856.5,-9016 856.5,-9022 856.5,-9022 856.5,-9025 853.5,-9028 850.5,-9028"/>
<text text-anchor="middle" x="806" y="-9016.8" font-family="Helvetica,sans-Serif" font-size="9.00">InstalledThemes.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/InstalledThemes.ts&#45;&gt;Utils.ts -->
<g id="edge19" class="edge">
<title>Logic/Actors/InstalledThemes.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M856.66,-9027.09C882.69,-9028.28 912.85,-9024.27 931,-9004 945.58,-8987.71 929.68,-8236.78 939,-8217 971.33,-8148.38 1037.4,-8175.73 1069.5,-8107 1090.87,-8061.25 1051.14,-4510.58 1082.5,-4471 1120.52,-4423.01 1178.28,-4486.84 1216.5,-4439 1228.22,-4424.33 1218.34,-3780.74 1224.5,-3763 1240.47,-3717.02 1281.26,-3674.74 1303.5,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.93,-3655.68 1307.94,-3650.09 1302.1,-3652.58 1304.93,-3655.68"/>
</g>
<!-- Logic/Actors/InstalledThemes.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts -->
<g id="edge18" class="edge">
<title>Logic/Actors/InstalledThemes.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M755.31,-9026.19C731.73,-9026.61 705.22,-9022.18 689,-9004 669.17,-8981.78 700.69,-8490.34 681,-8468 668.71,-8454.06 649.84,-8448.72 631.42,-8447.39"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="623.57,-8445.11 617.53,-8447.08 623.48,-8449.31 623.57,-8445.11"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="623.53,-8447.21 626.52,-8447.28 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="628.92" cy="-8447.33" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts -->
<g id="node21" class="node">
<title>Logic/Actors/OverpassFeatureSource.ts</title>
<g id="a_node21"><a xlink:href="Logic/Actors/OverpassFeatureSource.ts" xlink:title="OverpassFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M867,-9178C867,-9178 745,-9178 745,-9178 742,-9178 739,-9175 739,-9172 739,-9172 739,-9166 739,-9166 739,-9163 742,-9160 745,-9160 745,-9160 867,-9160 867,-9160 870,-9160 873,-9163 873,-9166 873,-9166 873,-9172 873,-9172 873,-9175 870,-9178 867,-9178"/>
<text text-anchor="middle" x="806" y="-9166.8" font-family="Helvetica,sans-Serif" font-size="9.00">OverpassFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Customizations/AllKnownLayers.ts -->
<g id="edge20" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Customizations/AllKnownLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.3,-9177.12C894.75,-9175.99 916.67,-9170.13 931,-9154 940.11,-9143.75 938.49,-5218.7 939,-5205 952.06,-4852.3 992.18,-4424.01 1002.21,-4320.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1005.08,-4312.56 1003.57,-4306.38 1000.9,-4312.15 1005.08,-4312.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.99,-4312.35 1002.7,-4315.34 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1002.47" cy="-4317.73" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Utils.ts -->
<g id="edge21" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.24,-9177.07C894.68,-9175.93 916.62,-9170.08 931,-9154 947.44,-9135.61 927.66,-8287.91 939,-8266 971.87,-8202.52 1036.78,-8235.55 1069.5,-8172 1088.36,-8135.36 1078.72,-5246.04 1082.5,-5205 1113.13,-4872.17 1184.71,-4797.72 1216.5,-4465 1220.21,-4426.17 1211.72,-3799.85 1224.5,-3763 1240.45,-3717.01 1281.25,-3674.73 1303.49,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.93,-3655.68 1307.94,-3650.09 1302.09,-3652.58 1304.93,-3655.68"/>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge25" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.2,-9176.4C894.38,-9175.12 916.16,-9169.36 931,-9154 945.41,-9139.08 924.2,-9075.54 939,-9061 982.82,-9017.95 1060.37,-9026.37 1106.64,-9036.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1106.36,-9038.66 1112.68,-9037.95 1107.3,-9034.57 1106.36,-9038.66"/>
</g>
<!-- Logic/Osm/Overpass.ts -->
<g id="node22" class="node">
<title>Logic/Osm/Overpass.ts</title>
<g id="a_node22"><a xlink:href="Logic/Osm/Overpass.ts" xlink:title="Overpass.ts">
<path fill="#ddfeff" stroke="black" d="M602.5,-10260C602.5,-10260 545.5,-10260 545.5,-10260 542.5,-10260 539.5,-10257 539.5,-10254 539.5,-10254 539.5,-10248 539.5,-10248 539.5,-10245 542.5,-10242 545.5,-10242 545.5,-10242 602.5,-10242 602.5,-10242 605.5,-10242 608.5,-10245 608.5,-10248 608.5,-10248 608.5,-10254 608.5,-10254 608.5,-10257 605.5,-10260 602.5,-10260"/>
<text text-anchor="middle" x="574" y="-10248.8" font-family="Helvetica,sans-Serif" font-size="9.00">Overpass.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/Osm/Overpass.ts -->
<g id="edge22" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/Osm/Overpass.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M795.3,-9178.03C771.56,-9200.88 710.9,-9263.92 689,-9331 674.89,-9374.2 699,-10107.27 681,-10149 663.53,-10189.5 621.38,-10221.78 595.81,-10238.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="594.54,-10236.82 590.62,-10241.83 596.8,-10240.36 594.54,-10236.82"/>
</g>
<!-- Logic/SimpleMetaTagger.ts -->
<g id="node23" class="node">
<title>Logic/SimpleMetaTagger.ts</title>
<g id="a_node23"><a xlink:href="Logic/SimpleMetaTagger.ts" xlink:title="SimpleMetaTagger.ts">
<path fill="#ddfeff" stroke="black" d="M1054,-9020C1054,-9020 957,-9020 957,-9020 954,-9020 951,-9017 951,-9014 951,-9014 951,-9008 951,-9008 951,-9005 954,-9002 957,-9002 957,-9002 1054,-9002 1054,-9002 1057,-9002 1060,-9005 1060,-9008 1060,-9008 1060,-9014 1060,-9014 1060,-9017 1057,-9020 1054,-9020"/>
<text text-anchor="middle" x="1005.5" y="-9008.8" font-family="Helvetica,sans-Serif" font-size="9.00">SimpleMetaTagger.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/SimpleMetaTagger.ts -->
<g id="edge23" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/SimpleMetaTagger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.3,-9176.49C894.49,-9175.23 916.25,-9169.44 931,-9154 947.47,-9136.76 926.1,-9067.06 939,-9047 944.65,-9038.22 953.21,-9031.4 962.3,-9026.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="970.35,-9024.56 974.8,-9020.02 968.49,-9020.79 970.35,-9024.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="969.42,-9022.67 966.73,-9024 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="964.58" cy="-9025.06" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Tags/Or.ts -->
<g id="node24" class="node">
<title>Logic/Tags/Or.ts</title>
<g id="a_node24"><a xlink:href="Logic/Tags/Or.ts" xlink:title="Or.ts">
<path fill="#ddfeff" stroke="black" d="M1166.5,-9462C1166.5,-9462 1124.5,-9462 1124.5,-9462 1121.5,-9462 1118.5,-9459 1118.5,-9456 1118.5,-9456 1118.5,-9450 1118.5,-9450 1118.5,-9447 1121.5,-9444 1124.5,-9444 1124.5,-9444 1166.5,-9444 1166.5,-9444 1169.5,-9444 1172.5,-9447 1172.5,-9450 1172.5,-9450 1172.5,-9456 1172.5,-9456 1172.5,-9459 1169.5,-9462 1166.5,-9462"/>
<text text-anchor="middle" x="1145.5" y="-9450.8" font-family="Helvetica,sans-Serif" font-size="9.00">Or.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/Tags/Or.ts -->
<g id="edge24" class="edge">
<title>Logic/Actors/OverpassFeatureSource.ts&#45;&gt;Logic/Tags/Or.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M817.49,-9178.3C842.57,-9201.26 905.73,-9263.69 931,-9331 935.81,-9343.82 929.01,-9444.64 939,-9454 986.71,-9498.71 1071.43,-9478.89 1115.72,-9464.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1116.44,-9465.99 1121.43,-9462.06 1115.08,-9462.02 1116.44,-9465.99"/>
</g>
<!-- Logic/Osm/Overpass.ts&#45;&gt;Utils.ts -->
<g id="edge209" class="edge">
<title>Logic/Osm/Overpass.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M590.65,-10241.84C615.33,-10226.36 662.4,-10192.43 681,-10149 700.14,-10104.31 672.52,-8444.73 689,-8399 746.48,-8239.46 873.73,-8263.62 931,-8104 940.83,-8076.6 920.85,-3934.76 939,-3912 976.11,-3865.48 1031.19,-3927.54 1069.5,-3882 1086.76,-3861.48 1063.03,-3659.44 1082.5,-3641 1138.52,-3587.92 1239.85,-3612.95 1289.5,-3629.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1288.93,-3631.91 1295.29,-3631.9 1290.32,-3627.94 1288.93,-3631.91"/>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;Utils.ts -->
<g id="edge215" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1017.72,-9001.85C1032.49,-8989.07 1057.93,-8964.35 1069.5,-8937 1081.33,-8909.04 1065.7,-8826.29 1082.5,-8801 1119.92,-8744.69 1181.76,-8787 1216.5,-8729 1234.22,-8699.42 1213.36,-3795.64 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge212" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M950.75,-9003.67C942.76,-8999.68 936.32,-8993.76 933.67,-8985 930.26,-8973.74 930.26,-5609.26 933.67,-5598 937.75,-5584.51 951.1,-5578.3 965.2,-5575.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5577.68 971.26,-5574.69 965.01,-5573.53 965.65,-5577.68"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M950.76,-9005.3C943.99,-9001.79 938.63,-8996.6 936.33,-8989 932.92,-8977.72 932.92,-5605.28 936.33,-5594 940.09,-5581.6 952.22,-5576.14 965.3,-5574.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5576.1 971.35,-5573.28 965.13,-5571.93 965.65,-5576.1"/>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge214" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M950.75,-9003.67C942.76,-8999.68 936.32,-8993.76 933.67,-8985 928.34,-8967.41 932.73,-6357.35 933.67,-6339 947.79,-6061.49 993.03,-5724.82 1003.38,-5650.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1005.47,-5650.34 1004.22,-5644.1 1001.31,-5649.76 1005.47,-5650.34"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M950.76,-9005.3C943.99,-9001.79 938.63,-8996.6 936.33,-8989 930.99,-8971.36 935.43,-6353.41 936.33,-6335 949.93,-6059.13 993.49,-5724.33 1003.46,-5650.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1005.54,-5650.28 1004.26,-5644.05 1001.38,-5649.72 1005.54,-5650.28"/>
</g>
<!-- Logic/GeoOperations.ts -->
<g id="node30" class="node">
<title>Logic/GeoOperations.ts</title>
<g id="a_node30"><a xlink:href="Logic/GeoOperations.ts" xlink:title="GeoOperations.ts">
<path fill="#ddfeff" stroke="black" d="M1186.5,-10598C1186.5,-10598 1104.5,-10598 1104.5,-10598 1101.5,-10598 1098.5,-10595 1098.5,-10592 1098.5,-10592 1098.5,-10586 1098.5,-10586 1098.5,-10583 1101.5,-10580 1104.5,-10580 1104.5,-10580 1186.5,-10580 1186.5,-10580 1189.5,-10580 1192.5,-10583 1192.5,-10586 1192.5,-10586 1192.5,-10592 1192.5,-10592 1192.5,-10595 1189.5,-10598 1186.5,-10598"/>
<text text-anchor="middle" x="1145.5" y="-10586.8" font-family="Helvetica,sans-Serif" font-size="9.00">GeoOperations.ts</text>
</a>
</g>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge216" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1025.53,-9020.1C1040.53,-9028.43 1060.37,-9042.3 1069.5,-9061 1087.64,-9098.14 1062.56,-10512.79 1082.5,-10549 1089.41,-10561.55 1102.12,-10570.77 1114.24,-10577.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.44,-10579.12 1119.75,-10579.92 1115.32,-10575.36 1113.44,-10579.12"/>
</g>
<!-- State.ts -->
<g id="node40" class="node">
<title>State.ts</title>
<g id="a_node40"><a xlink:href="State.ts" xlink:title="State.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-2760C1026.5,-2760 984.5,-2760 984.5,-2760 981.5,-2760 978.5,-2757 978.5,-2754 978.5,-2754 978.5,-2748 978.5,-2748 978.5,-2745 981.5,-2742 984.5,-2742 984.5,-2742 1026.5,-2742 1026.5,-2742 1029.5,-2742 1032.5,-2745 1032.5,-2748 1032.5,-2748 1032.5,-2754 1032.5,-2754 1032.5,-2757 1029.5,-2760 1026.5,-2760"/>
<text text-anchor="middle" x="1005.5" y="-2748.8" font-family="Helvetica,sans-Serif" font-size="9.00">State.ts</text>
</a>
</g>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;State.ts -->
<g id="edge211" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M950.73,-9004.46C943.36,-9000.72 937.47,-8995.17 935,-8987 928.96,-8967.04 931.9,-3000.63 935,-2980 946.74,-2901.94 979.81,-2813.78 996.14,-2773.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.16,-2766.71 1001.5,-2760.36 997.27,-2765.11 1001.16,-2766.71"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.22,-2765.91 998.07,-2768.68 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="997.16" cy="-2770.9" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge213" class="edge">
<title>Logic/SimpleMetaTagger.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1018.01,-9001.97C1033.12,-8989.32 1058.93,-8964.75 1069.5,-8937 1070.48,-8934.43 1138.73,-5892.11 1144.16,-5650.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.26,-5650.22 1144.29,-5644.17 1142.06,-5650.13 1146.26,-5650.22"/>
</g>
<!-- Logic/Tags/TagsFilter.ts -->
<g id="node113" class="node">
<title>Logic/Tags/TagsFilter.ts</title>
<g id="a_node113"><a xlink:href="Logic/Tags/TagsFilter.ts" xlink:title="TagsFilter.ts">
<path fill="#ddfeff" stroke="black" d="M1347.5,-9401C1347.5,-9401 1291.5,-9401 1291.5,-9401 1288.5,-9401 1285.5,-9398 1285.5,-9395 1285.5,-9395 1285.5,-9389 1285.5,-9389 1285.5,-9386 1288.5,-9383 1291.5,-9383 1291.5,-9383 1347.5,-9383 1347.5,-9383 1350.5,-9383 1353.5,-9386 1353.5,-9389 1353.5,-9389 1353.5,-9395 1353.5,-9395 1353.5,-9398 1350.5,-9401 1347.5,-9401"/>
<text text-anchor="middle" x="1319.5" y="-9389.8" font-family="Helvetica,sans-Serif" font-size="9.00">TagsFilter.ts</text>
</a>
</g>
</g>
<!-- Logic/Tags/Or.ts&#45;&gt;Logic/Tags/TagsFilter.ts -->
<g id="edge261" class="edge">
<title>Logic/Tags/Or.ts&#45;&gt;Logic/Tags/TagsFilter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1171.88,-9444C1202.49,-9433.14 1253.96,-9414.89 1287.06,-9403.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1288.06,-9405.02 1293.02,-9401.04 1286.66,-9401.06 1288.06,-9405.02"/>
</g>
<!-- Logic/Actors/PendingChangesUploader.ts -->
<g id="node25" class="node">
<title>Logic/Actors/PendingChangesUploader.ts</title>
<g id="a_node25"><a xlink:href="Logic/Actors/PendingChangesUploader.ts" xlink:title="PendingChangesUploader.ts">
<path fill="#ddfeff" stroke="black" d="M871.5,-9148C871.5,-9148 740.5,-9148 740.5,-9148 737.5,-9148 734.5,-9145 734.5,-9142 734.5,-9142 734.5,-9136 734.5,-9136 734.5,-9133 737.5,-9130 740.5,-9130 740.5,-9130 871.5,-9130 871.5,-9130 874.5,-9130 877.5,-9133 877.5,-9136 877.5,-9136 877.5,-9142 877.5,-9142 877.5,-9145 874.5,-9148 871.5,-9148"/>
<text text-anchor="middle" x="806" y="-9136.8" font-family="Helvetica,sans-Serif" font-size="9.00">PendingChangesUploader.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/PendingChangesUploader.ts&#45;&gt;Utils.ts -->
<g id="edge27" class="edge">
<title>Logic/Actors/PendingChangesUploader.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M877.77,-9146.76C897.73,-9145.06 917.63,-9138.95 931,-9124 947.79,-9105.22 928.28,-8239.8 939,-8217 971.28,-8148.36 1037.41,-8175.73 1069.5,-8107 1081.81,-8080.63 1064.76,-3940.06 1082.5,-3917 1120.1,-3868.12 1177.34,-3928.64 1216.5,-3881 1233.19,-3860.7 1215.19,-3787.58 1224.5,-3763 1241.67,-3717.67 1281.66,-3675.36 1303.54,-3654.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.24,-3655.81 1308.18,-3650.17 1302.37,-3652.75 1305.24,-3655.81"/>
</g>
<!-- Logic/Actors/PendingChangesUploader.ts&#45;&gt;Models/Constants.ts -->
<g id="edge26" class="edge">
<title>Logic/Actors/PendingChangesUploader.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M734.39,-9147.03C711.38,-9145.26 690.15,-9137.41 683.67,-9116 680.95,-9107.03 680.95,-8449.97 683.67,-8441 692.84,-8410.7 731.68,-8407.9 763.17,-8411.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.16,-8413.15 769.36,-8411.74 763.63,-8408.98 763.16,-8413.15"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M761.41,-9148.03C731.11,-9151.33 695.02,-9148.69 686.33,-9120 683.58,-9110.92 683.58,-8446.08 686.33,-8437 695.18,-8407.78 732.54,-8405.93 763.19,-8409.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.99,-8411.89 769.22,-8410.64 763.57,-8407.73 762.99,-8411.89"/>
</g>
<!-- Models/Constants.ts&#45;&gt;Utils.ts -->
<g id="edge291" class="edge">
<title>Models/Constants.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.38,-8409.66C835.24,-8377.01 907.06,-8264.34 931,-8159 934.24,-8144.73 929.95,-3954.51 939,-3943 975.9,-3896.05 1031.15,-3956.78 1069.5,-3911 1098.39,-3876.52 1054.31,-3744.05 1082.5,-3709 1132.18,-3647.21 1234.2,-3639.31 1286.31,-3639.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1286.39,-3641.71 1292.41,-3639.68 1286.44,-3637.51 1286.39,-3641.71"/>
</g>
<!-- Logic/Actors/SelectedElementTagsUpdater.ts -->
<g id="node27" class="node">
<title>Logic/Actors/SelectedElementTagsUpdater.ts</title>
<g id="a_node27"><a xlink:href="Logic/Actors/SelectedElementTagsUpdater.ts" xlink:title="SelectedElementTagsUpdater.ts">
<path fill="#ddfeff" stroke="black" d="M879.5,-9058C879.5,-9058 732.5,-9058 732.5,-9058 729.5,-9058 726.5,-9055 726.5,-9052 726.5,-9052 726.5,-9046 726.5,-9046 726.5,-9043 729.5,-9040 732.5,-9040 732.5,-9040 879.5,-9040 879.5,-9040 882.5,-9040 885.5,-9043 885.5,-9046 885.5,-9046 885.5,-9052 885.5,-9052 885.5,-9055 882.5,-9058 879.5,-9058"/>
<text text-anchor="middle" x="806" y="-9046.8" font-family="Helvetica,sans-Serif" font-size="9.00">SelectedElementTagsUpdater.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/SelectedElementTagsUpdater.ts&#45;&gt;Logic/SimpleMetaTagger.ts -->
<g id="edge29" class="edge">
<title>Logic/Actors/SelectedElementTagsUpdater.ts&#45;&gt;Logic/SimpleMetaTagger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M885.75,-9041.67C900.85,-9039.65 916.48,-9037.12 931,-9034 942.58,-9031.51 954.95,-9027.99 966.17,-9024.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="974.58,-9023.9 979.63,-9020.03 973.27,-9019.91 974.58,-9023.9"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.93,-9021.9 971.08,-9022.84 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="968.8" cy="-9023.59" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/OsmObject.ts -->
<g id="node28" class="node">
<title>Logic/Osm/OsmObject.ts</title>
<g id="a_node28"><a xlink:href="Logic/Osm/OsmObject.ts" xlink:title="OsmObject.ts">
<path fill="#ddfeff" stroke="black" d="M1178,-10320C1178,-10320 1113,-10320 1113,-10320 1110,-10320 1107,-10317 1107,-10314 1107,-10314 1107,-10308 1107,-10308 1107,-10305 1110,-10302 1113,-10302 1113,-10302 1178,-10302 1178,-10302 1181,-10302 1184,-10305 1184,-10308 1184,-10308 1184,-10314 1184,-10314 1184,-10317 1181,-10320 1178,-10320"/>
<text text-anchor="middle" x="1145.5" y="-10308.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmObject.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/SelectedElementTagsUpdater.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge28" class="edge">
<title>Logic/Actors/SelectedElementTagsUpdater.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M885.75,-9042.27C902.9,-9044.83 919.37,-9051.13 931,-9064 938.95,-9072.8 937.63,-9479.22 939,-9491 970.72,-9763.36 1031.59,-9822.43 1069.5,-10094 1072.61,-10116.27 1068.03,-10278.78 1082.5,-10296 1087.29,-10301.7 1093.83,-10305.44 1100.88,-10307.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.55,-10309.94 1106.9,-10309.59 1101.71,-10305.91 1100.55,-10309.94"/>
</g>
<!-- Logic/Osm/OsmObject.ts&#45;&gt;Utils.ts -->
<g id="edge205" class="edge">
<title>Logic/Osm/OsmObject.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1184.09,-10311.84C1196.29,-10310.06 1208.68,-10305.66 1216.5,-10296 1230.77,-10278.37 1217.17,-3784.47 1224.5,-3763 1240.22,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Osm/OsmObject.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge206" class="edge">
<title>Logic/Osm/OsmObject.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1106.65,-10310.28C1093.71,-10307.73 1081.26,-10302.01 1076,-10290 1069.19,-10274.44 1069.19,-9082.56 1076,-9067 1079.21,-9059.67 1085.13,-9054.75 1092.21,-9051.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093,-9053.44 1097.83,-9049.31 1091.48,-9049.52 1093,-9053.44"/>
</g>
<!-- assets/polygon&#45;features.json -->
<g id="node97" class="node">
<title>assets/polygon&#45;features.json</title>
<g id="a_node97"><a xlink:href="assets/polygon-features.json" xlink:title="polygon&#45;features.json">
<path fill="#ffee44" stroke="black" d="M1370,-4290C1370,-4290 1269,-4290 1269,-4290 1266,-4290 1263,-4287 1263,-4284 1263,-4284 1263,-4278 1263,-4278 1263,-4275 1266,-4272 1269,-4272 1269,-4272 1370,-4272 1370,-4272 1373,-4272 1376,-4275 1376,-4278 1376,-4278 1376,-4284 1376,-4284 1376,-4287 1373,-4290 1370,-4290"/>
<text text-anchor="middle" x="1319.5" y="-4278.8" font-family="Helvetica,sans-Serif" font-size="9.00">polygon&#45;features.json</text>
</a>
</g>
</g>
<!-- Logic/Osm/OsmObject.ts&#45;&gt;assets/polygon&#45;features.json -->
<g id="edge204" class="edge">
<title>Logic/Osm/OsmObject.ts&#45;&gt;assets/polygon&#45;features.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1184.09,-10311.84C1196.29,-10310.06 1208.68,-10305.66 1216.5,-10296 1222.06,-10289.13 1224.05,-5213.83 1224.5,-5205 1243.58,-4834.62 1304.26,-4383.89 1316.38,-4296.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1318.48,-4296.31 1317.23,-4290.08 1314.32,-4295.73 1318.48,-4296.31"/>
</g>
<!-- Logic/Actors/SelectedFeatureHandler.ts -->
<g id="node29" class="node">
<title>Logic/Actors/SelectedFeatureHandler.ts</title>
<g id="a_node29"><a xlink:href="Logic/Actors/SelectedFeatureHandler.ts" xlink:title="SelectedFeatureHandler.ts">
<path fill="#ddfeff" stroke="black" d="M867.5,-9088C867.5,-9088 744.5,-9088 744.5,-9088 741.5,-9088 738.5,-9085 738.5,-9082 738.5,-9082 738.5,-9076 738.5,-9076 738.5,-9073 741.5,-9070 744.5,-9070 744.5,-9070 867.5,-9070 867.5,-9070 870.5,-9070 873.5,-9073 873.5,-9076 873.5,-9076 873.5,-9082 873.5,-9082 873.5,-9085 870.5,-9088 867.5,-9088"/>
<text text-anchor="middle" x="806" y="-9076.8" font-family="Helvetica,sans-Serif" font-size="9.00">SelectedFeatureHandler.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/SelectedFeatureHandler.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge31" class="edge">
<title>Logic/Actors/SelectedFeatureHandler.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.57,-9070.94C894.91,-9072.12 916.7,-9077.99 931,-9094 949.49,-9114.69 921.55,-10071.42 939,-10093 976.36,-10139.2 1030.62,-10077.07 1069.5,-10122 1094.87,-10151.32 1057.4,-10266.44 1082.5,-10296 1087.32,-10301.67 1093.87,-10305.4 1100.93,-10307.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.6,-10309.9 1106.95,-10309.55 1101.76,-10305.87 1100.6,-10309.9"/>
</g>
<!-- Logic/Actors/SelectedFeatureHandler.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge30" class="edge">
<title>Logic/Actors/SelectedFeatureHandler.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.59,-9070.92C894.94,-9072.1 916.72,-9077.97 931,-9094 944.45,-9109.09 926.1,-10533.44 939,-10549 958.09,-10572.04 1037.64,-10581.99 1091.97,-10586.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1092,-10588.26 1098.14,-10586.61 1092.31,-10584.08 1092,-10588.26"/>
</g>
<!-- Logic/GeoOperations.ts&#45;&gt;Models/Constants.ts -->
<g id="edge114" class="edge">
<title>Logic/GeoOperations.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1119.73,-10579.93C1106.13,-10573.53 1090.45,-10563.49 1082.5,-10549 1067.25,-10521.2 1091.99,-8288.36 1069.5,-8266 1028.37,-8225.1 991.73,-8241.85 939,-8266 875.34,-8295.15 830.71,-8371.84 814.13,-8404.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="812.18,-8403.43 811.37,-8409.74 815.93,-8405.32 812.18,-8403.43"/>
</g>
<!-- Logic/BBox.ts -->
<g id="node35" class="node">
<title>Logic/BBox.ts</title>
<g id="a_node35"><a xlink:href="Logic/BBox.ts" xlink:title="BBox.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-10640C1026.5,-10640 984.5,-10640 984.5,-10640 981.5,-10640 978.5,-10637 978.5,-10634 978.5,-10634 978.5,-10628 978.5,-10628 978.5,-10625 981.5,-10622 984.5,-10622 984.5,-10622 1026.5,-10622 1026.5,-10622 1029.5,-10622 1032.5,-10625 1032.5,-10628 1032.5,-10628 1032.5,-10634 1032.5,-10634 1032.5,-10637 1029.5,-10640 1026.5,-10640"/>
<text text-anchor="middle" x="1005.5" y="-10628.8" font-family="Helvetica,sans-Serif" font-size="9.00">BBox.ts</text>
</a>
</g>
</g>
<!-- Logic/GeoOperations.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge115" class="edge">
<title>Logic/GeoOperations.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1130.44,-10598.1C1115.4,-10604.58 1090.83,-10612.54 1069.5,-10619 1061.95,-10621.29 1053.86,-10623.66 1046.09,-10625.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1037.89,-10625.72 1032.61,-10629.25 1038.94,-10629.79 1037.89,-10625.72"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1038.42,-10627.75 1041.32,-10627 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1043.65" cy="-10626.4" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Actors/TitleHandler.ts -->
<g id="node31" class="node">
<title>Logic/Actors/TitleHandler.ts</title>
<g id="a_node31"><a xlink:href="Logic/Actors/TitleHandler.ts" xlink:title="TitleHandler.ts">
<path fill="#ddfeff" stroke="black" d="M840,-8968C840,-8968 772,-8968 772,-8968 769,-8968 766,-8965 766,-8962 766,-8962 766,-8956 766,-8956 766,-8953 769,-8950 772,-8950 772,-8950 840,-8950 840,-8950 843,-8950 846,-8953 846,-8956 846,-8956 846,-8962 846,-8962 846,-8965 843,-8968 840,-8968"/>
<text text-anchor="middle" x="806" y="-8956.8" font-family="Helvetica,sans-Serif" font-size="9.00">TitleHandler.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;Utils.ts -->
<g id="edge36" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.05,-8963.86C874.22,-8964.96 910.73,-8960.94 931,-8937 945.41,-8919.98 927.68,-8153.22 939,-8134 972.85,-8076.55 1035.85,-8117.56 1069.5,-8060 1098.72,-8010.01 1047.67,-3937.26 1082.5,-3891 1119.81,-3841.45 1177.08,-3899.89 1216.5,-3852 1229.12,-3836.67 1217.26,-3781.49 1224.5,-3763 1242.17,-3717.86 1281.95,-3675.47 1303.67,-3654.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.36,-3655.86 1308.27,-3650.21 1302.47,-3652.82 1305.36,-3655.86"/>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge32" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.1,-8963.91C874.3,-8965.02 910.82,-8961.02 931,-8937 945.95,-8919.2 924.49,-5608.16 939,-5590 945.45,-5581.92 955.28,-5577.64 965.38,-5575.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.78,-5577.56 971.34,-5574.46 965.07,-5573.42 965.78,-5577.56"/>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge37" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.32,-8953.26C899.43,-8947.28 995.9,-8942.75 1069.5,-8975 1097.97,-8987.47 1122.07,-9015.74 1134.8,-9032.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1133.16,-9034.23 1138.38,-9037.85 1136.56,-9031.76 1133.16,-9034.23"/>
</g>
<!-- UI/i18n/Locale.ts -->
<g id="node32" class="node">
<title>UI/i18n/Locale.ts</title>
<g id="a_node32"><a xlink:href="UI/i18n/Locale.ts" xlink:title="Locale.ts">
<path fill="#ddfeff" stroke="black" d="M1341.5,-5234C1341.5,-5234 1297.5,-5234 1297.5,-5234 1294.5,-5234 1291.5,-5231 1291.5,-5228 1291.5,-5228 1291.5,-5222 1291.5,-5222 1291.5,-5219 1294.5,-5216 1297.5,-5216 1297.5,-5216 1341.5,-5216 1341.5,-5216 1344.5,-5216 1347.5,-5219 1347.5,-5222 1347.5,-5222 1347.5,-5228 1347.5,-5228 1347.5,-5231 1344.5,-5234 1341.5,-5234"/>
<text text-anchor="middle" x="1319.5" y="-5222.8" font-family="Helvetica,sans-Serif" font-size="9.00">Locale.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge33" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.03,-8963.85C874.2,-8964.94 910.7,-8960.92 931,-8937 943.06,-8922.79 931.85,-8283.21 939,-8266 970.78,-8189.53 1038.04,-8209.61 1069.5,-8133 1079.67,-8108.23 1063.53,-4295.9 1082.5,-4277 1124.68,-4234.96 1172.19,-4237.2 1216.5,-4277 1225.6,-4285.18 1304.96,-5087.52 1316.98,-5209.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.91,-5209.94 1317.59,-5215.7 1319.09,-5209.53 1314.91,-5209.94"/>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge34" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.1,-8963.91C874.3,-8965.03 910.82,-8961.02 931,-8937 947.52,-8917.33 922.68,-5257.84 939,-5238 944.17,-5231.72 951.42,-5227.91 959.22,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.27,-5224.27 958.95,-5223.59 959.91,-5227.68"/>
</g>
<!-- UI/Popup/TagRenderingAnswer.ts -->
<g id="node34" class="node">
<title>UI/Popup/TagRenderingAnswer.ts</title>
<g id="a_node34"><a xlink:href="UI/Popup/TagRenderingAnswer.ts" xlink:title="TagRenderingAnswer.ts">
<path fill="#ddfeff" stroke="black" d="M628.5,-4724C628.5,-4724 519.5,-4724 519.5,-4724 516.5,-4724 513.5,-4721 513.5,-4718 513.5,-4718 513.5,-4712 513.5,-4712 513.5,-4709 516.5,-4706 519.5,-4706 519.5,-4706 628.5,-4706 628.5,-4706 631.5,-4706 634.5,-4709 634.5,-4712 634.5,-4712 634.5,-4718 634.5,-4718 634.5,-4721 631.5,-4724 628.5,-4724"/>
<text text-anchor="middle" x="574" y="-4712.8" font-family="Helvetica,sans-Serif" font-size="9.00">TagRenderingAnswer.ts</text>
</a>
</g>
</g>
<!-- Logic/Actors/TitleHandler.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts -->
<g id="edge35" class="edge">
<title>Logic/Actors/TitleHandler.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M765.86,-8963.15C739.83,-8963.53 707.19,-8958.93 689,-8937 670.45,-8914.64 697.75,-4776.74 681,-4753 672.85,-4741.44 660.83,-4733.38 647.79,-4727.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="640.86,-4723 634.51,-4722.92 639.43,-4726.95 640.86,-4723"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="640.14,-4724.97 642.96,-4726 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="645.22" cy="-4726.82" rx="2.4" ry="2.4"/>
</g>
<!-- UI/i18n/Locale.ts&#45;&gt;Utils.ts -->
<g id="edge853" class="edge">
<title>UI/i18n/Locale.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1318.09,-5215.6C1307.53,-5144.77 1240.77,-4687.52 1220.5,-4313 1219.68,-4297.91 1216.12,-3783.46 1220.5,-3769 1235.4,-3719.8 1279.58,-3675.54 1303.57,-3654.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.22,-3655.64 1308.36,-3650.11 1302.46,-3652.47 1305.22,-3655.64"/>
</g>
<!-- Logic/Web/LocalStorageSource.ts -->
<g id="node92" class="node">
<title>Logic/Web/LocalStorageSource.ts</title>
<g id="a_node92"><a xlink:href="Logic/Web/LocalStorageSource.ts" xlink:title="LocalStorageSource.ts">
<path fill="#ddfeff" stroke="black" d="M1058,-9270C1058,-9270 953,-9270 953,-9270 950,-9270 947,-9267 947,-9264 947,-9264 947,-9258 947,-9258 947,-9255 950,-9252 953,-9252 953,-9252 1058,-9252 1058,-9252 1061,-9252 1064,-9255 1064,-9258 1064,-9258 1064,-9264 1064,-9264 1064,-9267 1061,-9270 1058,-9270"/>
<text text-anchor="middle" x="1005.5" y="-9258.8" font-family="Helvetica,sans-Serif" font-size="9.00">LocalStorageSource.ts</text>
</a>
</g>
</g>
<!-- UI/i18n/Locale.ts&#45;&gt;Logic/Web/LocalStorageSource.ts -->
<g id="edge851" class="edge">
<title>UI/i18n/Locale.ts&#45;&gt;Logic/Web/LocalStorageSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1291.42,-5220.22C1269.84,-5218.14 1240.64,-5219.51 1224.5,-5238 1207.42,-5257.56 1231.12,-8955.54 1216.5,-8977 1180.44,-9029.93 1120.08,-8978.14 1082.5,-9030 1054.28,-9068.94 1100.43,-9209.18 1069.5,-9246 1069.03,-9246.56 1068.54,-9247.1 1068.04,-9247.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1066.31,-9246.35 1063.13,-9251.85 1069.05,-9249.53 1066.31,-9246.35"/>
</g>
<!-- Logic/Web/QueryParameters.ts -->
<g id="node100" class="node">
<title>Logic/Web/QueryParameters.ts</title>
<g id="a_node100"><a xlink:href="Logic/Web/QueryParameters.ts" xlink:title="QueryParameters.ts">
<path fill="#ddfeff" stroke="black" d="M1052.5,-9240C1052.5,-9240 958.5,-9240 958.5,-9240 955.5,-9240 952.5,-9237 952.5,-9234 952.5,-9234 952.5,-9228 952.5,-9228 952.5,-9225 955.5,-9222 958.5,-9222 958.5,-9222 1052.5,-9222 1052.5,-9222 1055.5,-9222 1058.5,-9225 1058.5,-9228 1058.5,-9228 1058.5,-9234 1058.5,-9234 1058.5,-9237 1055.5,-9240 1052.5,-9240"/>
<text text-anchor="middle" x="1005.5" y="-9228.8" font-family="Helvetica,sans-Serif" font-size="9.00">QueryParameters.ts</text>
</a>
</g>
</g>
<!-- UI/i18n/Locale.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge852" class="edge">
<title>UI/i18n/Locale.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1291.42,-5220.22C1269.84,-5218.14 1240.64,-5219.51 1224.5,-5238 1207.66,-5257.29 1228.92,-8902.61 1216.5,-8925 1182.4,-8986.46 1118.44,-8948.6 1082.5,-9009 1058.93,-9048.61 1099.19,-9180.74 1069.5,-9216 1067.79,-9218.03 1065.86,-9219.82 1063.76,-9221.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1062.54,-9219.67 1058.59,-9224.65 1064.79,-9223.22 1062.54,-9219.67"/>
</g>
<!-- UI/i18n/Translations.ts&#45;&gt;AllTranslationAssets.ts -->
<g id="edge857" class="edge">
<title>UI/i18n/Translations.ts&#45;&gt;AllTranslationAssets.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1006.72,-5215.91C1008.86,-5129.84 1027.24,-4460 1082.5,-4393 1084.18,-4390.96 1086.09,-4389.14 1088.15,-4387.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1089.44,-4389.19 1093.24,-4384.09 1087.09,-4385.7 1089.44,-4389.19"/>
</g>
<!-- UI/i18n/Translations.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge858" class="edge">
<title>UI/i18n/Translations.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1012.99,-5234.26C1025.6,-5252.64 1053.56,-5295.39 1069.5,-5335 1111.63,-5439.7 1135.14,-5574.73 1142.2,-5619.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.17,-5620.27 1143.16,-5625.88 1144.32,-5619.63 1140.17,-5620.27"/>
</g>
<!-- UI/i18n/Translations.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge859" class="edge">
<title>UI/i18n/Translations.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1045.68,-5225C1062.85,-5225 1083.08,-5225 1100.74,-5225"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1101.13,-5227.1 1107.13,-5225 1101.13,-5222.9 1101.13,-5227.1"/>
</g>
<!-- UI/Popup/TagRenderingAnswer.ts&#45;&gt;Utils.ts -->
<g id="edge705" class="edge">
<title>UI/Popup/TagRenderingAnswer.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M581.25,-4705.73C600.8,-4676.09 660.7,-4580.36 681,-4491 691.57,-4444.46 676.33,-2819.01 689,-2773 747.08,-2562.09 749.05,-2457.51 939,-2349 1046.09,-2287.82 1125.92,-2265.29 1216.5,-2349 1315.12,-2440.14 1318.51,-3484.77 1318.52,-3625.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.42,-3625.72 1318.51,-3631.72 1320.62,-3625.72 1316.42,-3625.72"/>
</g>
<!-- UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/Base/List.ts -->
<g id="edge706" class="edge">
<title>UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/Base/List.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M634.54,-4723.18C652.31,-4728.67 669.98,-4737.81 681,-4753 689.95,-4765.32 686.46,-5011.98 689,-5027 712.9,-5168.57 778.09,-5331.04 798.68,-5380.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="796.81,-5381.14 801.07,-5385.85 800.68,-5379.51 796.81,-5381.14"/>
</g>
<!-- UI/Base/VariableUIElement.ts -->
<g id="node133" class="node">
<title>UI/Base/VariableUIElement.ts</title>
<g id="a_node133"><a xlink:href="UI/Base/VariableUIElement.ts" xlink:title="VariableUIElement.ts">
<path fill="#ddfeff" stroke="black" d="M1055,-5554C1055,-5554 956,-5554 956,-5554 953,-5554 950,-5551 950,-5548 950,-5548 950,-5542 950,-5542 950,-5539 953,-5536 956,-5536 956,-5536 1055,-5536 1055,-5536 1058,-5536 1061,-5539 1061,-5542 1061,-5542 1061,-5548 1061,-5548 1061,-5551 1058,-5554 1055,-5554"/>
<text text-anchor="middle" x="1005.5" y="-5542.8" font-family="Helvetica,sans-Serif" font-size="9.00">VariableUIElement.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge707" class="edge">
<title>UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M601.28,-4705.88C667.65,-4684.7 843,-4640.64 931,-4732 946.11,-4747.69 927.03,-5497.81 939,-5516 943.94,-5523.51 951.32,-5529.09 959.36,-5533.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.69,-5535.24 965.01,-5535.88 960.47,-5531.44 958.69,-5535.24"/>
</g>
<!-- UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/SubstitutedTranslation.ts -->
<g id="edge708" class="edge">
<title>UI/Popup/TagRenderingAnswer.ts&#45;&gt;UI/SubstitutedTranslation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M570.22,-4705.66C560.68,-4675.54 526.1,-4580.79 459,-4545 398.61,-4512.79 372.99,-4537.11 305,-4545 294.56,-4546.21 283.49,-4548.32 273.09,-4550.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="264.81,-4550.54 259.48,-4553.99 265.8,-4554.62 264.81,-4550.54"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="265.31,-4552.58 268.22,-4551.87 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="270.55" cy="-4551.3" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/BBox.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge39" class="edge">
<title>Logic/BBox.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1021.82,-10621.95C1034.6,-10617.2 1053.28,-10611.91 1069.5,-10607 1074.65,-10605.44 1079.99,-10603.79 1085.34,-10602.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.44,-10601.85 1098.56,-10598.09 1092.21,-10597.84 1093.44,-10601.85"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1092.83,-10599.85 1089.96,-10600.73 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1087.66" cy="-10601.43" rx="2.4" ry="2.4"/>
</g>
<!-- Models/TileRange.ts -->
<g id="node36" class="node">
<title>Models/TileRange.ts</title>
<g id="a_node36"><a xlink:href="Models/TileRange.ts" xlink:title="TileRange.ts">
<path fill="#ddfeff" stroke="black" d="M603.5,-8692C603.5,-8692 544.5,-8692 544.5,-8692 541.5,-8692 538.5,-8689 538.5,-8686 538.5,-8686 538.5,-8680 538.5,-8680 538.5,-8677 541.5,-8674 544.5,-8674 544.5,-8674 603.5,-8674 603.5,-8674 606.5,-8674 609.5,-8677 609.5,-8680 609.5,-8680 609.5,-8686 609.5,-8686 609.5,-8689 606.5,-8692 603.5,-8692"/>
<text text-anchor="middle" x="574" y="-8680.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileRange.ts</text>
</a>
</g>
</g>
<!-- Logic/BBox.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge38" class="edge">
<title>Logic/BBox.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M993.49,-10621.79C977.86,-10607.91 949.9,-10579.93 939,-10549 934.05,-10534.95 941.55,-8414.51 931,-8404 854.81,-8328.09 766.19,-8329.1 689,-8404 667.86,-8424.51 700.75,-8647.14 681,-8669 665.02,-8686.69 638.39,-8690.15 615.83,-8689.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="615.7,-8687.1 609.58,-8688.84 615.45,-8691.29 615.7,-8687.1"/>
</g>
<!-- Logic/ElementStorage.ts -->
<g id="node37" class="node">
<title>Logic/ElementStorage.ts</title>
<g id="a_node37"><a xlink:href="Logic/ElementStorage.ts" xlink:title="ElementStorage.ts">
<path fill="#ddfeff" stroke="black" d="M850.5,-9514C850.5,-9514 761.5,-9514 761.5,-9514 758.5,-9514 755.5,-9511 755.5,-9508 755.5,-9508 755.5,-9502 755.5,-9502 755.5,-9499 758.5,-9496 761.5,-9496 761.5,-9496 850.5,-9496 850.5,-9496 853.5,-9496 856.5,-9499 856.5,-9502 856.5,-9502 856.5,-9508 856.5,-9508 856.5,-9511 853.5,-9514 850.5,-9514"/>
<text text-anchor="middle" x="806" y="-9502.8" font-family="Helvetica,sans-Serif" font-size="9.00">ElementStorage.ts</text>
</a>
</g>
</g>
<!-- Logic/ElementStorage.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge40" class="edge">
<title>Logic/ElementStorage.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M856.78,-9509.94C924.64,-9515.44 1041.03,-9520.13 1069.5,-9491 1102.91,-9456.81 1052.09,-9097.88 1082.5,-9061 1085.24,-9057.68 1088.57,-9055.05 1092.27,-9052.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.38,-9054.77 1097.91,-9050.31 1091.59,-9050.97 1093.38,-9054.77"/>
</g>
<!-- Logic/ExtraFunctions.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge41" class="edge">
<title>Logic/ExtraFunctions.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.59,-9613.39C880.29,-9615.29 912.14,-9612.06 931,-9591 949.53,-9570.3 921.66,-5611.71 939,-5590 945.45,-5581.92 955.28,-5577.64 965.38,-5575.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.78,-5577.55 971.34,-5574.46 965.07,-5573.42 965.78,-5577.55"/>
</g>
<!-- Logic/ExtraFunctions.ts&#45;&gt;UI/Base/List.ts -->
<g id="edge42" class="edge">
<title>Logic/ExtraFunctions.ts&#45;&gt;UI/Base/List.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M758.47,-9613.38C727.93,-9615.76 692.39,-9611.81 683.67,-9583 681.57,-9576.08 681.57,-5424.92 683.67,-5418 693.79,-5384.55 739.94,-5384.18 772.56,-5388.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.66,-5390.59 778.89,-5389.36 773.25,-5386.43 772.66,-5390.59"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M764.57,-9614.02C733.67,-9618.12 695.31,-9616.66 686.33,-9587 684.23,-9580.07 684.23,-5420.93 686.33,-5414 696.13,-5381.63 740.83,-5382.43 772.72,-5387.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.64,-5389.61 778.91,-5388.56 773.35,-5385.47 772.64,-5389.61"/>
</g>
<!-- Logic/ExtraFunctions.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge43" class="edge">
<title>Logic/ExtraFunctions.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.58,-9613.39C880.28,-9615.29 912.14,-9612.06 931,-9591 938.55,-9582.57 938.46,-6342.31 939,-6331 952.21,-6056.82 993.2,-5723.84 1002.58,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.66,-5650.22 1003.34,-5644 1000.5,-5649.69 1004.66,-5650.22"/>
</g>
<!-- Logic/ExtraFunctions.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge45" class="edge">
<title>Logic/ExtraFunctions.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.52,-9605.56C880.72,-9608.58 913.13,-9617.41 931,-9641 946.84,-9661.9 920.56,-10566.36 939,-10585 949.53,-10595.65 1034.63,-10594.05 1091.96,-10591.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1092.21,-10593.78 1098.11,-10591.43 1092.03,-10589.58 1092.21,-10593.78"/>
</g>
<!-- Logic/ExtraFunctions.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge44" class="edge">
<title>Logic/ExtraFunctions.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.52,-9605.55C880.72,-9608.58 913.13,-9617.41 931,-9641 947.07,-9662.21 924.81,-10576.49 939,-10599 946.49,-10610.88 959.8,-10618.48 972.47,-10623.27"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="971.87,-10625.28 978.23,-10625.28 973.26,-10621.32 971.87,-10625.28"/>
</g>
<!-- Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts -->
<g id="node39" class="node">
<title>Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts</title>
<g id="a_node39"><a xlink:href="Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts" xlink:title="RegisteringAllFromFeatureSourceActor.ts">
<path fill="#ddfeff" stroke="black" d="M667,-9856C667,-9856 481,-9856 481,-9856 478,-9856 475,-9853 475,-9850 475,-9850 475,-9844 475,-9844 475,-9841 478,-9838 481,-9838 481,-9838 667,-9838 667,-9838 670,-9838 673,-9841 673,-9844 673,-9844 673,-9850 673,-9850 673,-9853 670,-9856 667,-9856"/>
<text text-anchor="middle" x="574" y="-9844.8" font-family="Helvetica,sans-Serif" font-size="9.00">RegisteringAllFromFeatureSourceActor.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts&#45;&gt;State.ts -->
<g id="edge46" class="edge">
<title>Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M673.32,-9840.97C676.08,-9838.95 678.66,-9836.63 681,-9834 697.36,-9815.59 678.99,-8083.5 689,-8061 748.1,-7928.2 872.09,-7973.88 931,-7841 944.7,-7810.1 934.16,-3007.45 939,-2974 949.94,-2898.39 980.53,-2812.64 995.71,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-2766.49 1000.79,-2760.14 996.65,-2764.96 1000.56,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.63" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/FeaturePipelineState.ts -->
<g id="node102" class="node">
<title>Logic/State/FeaturePipelineState.ts</title>
<g id="a_node102"><a xlink:href="Logic/State/FeaturePipelineState.ts" xlink:title="FeaturePipelineState.ts">
<path fill="#ddfeff" stroke="black" d="M139,-9562C139,-9562 30,-9562 30,-9562 27,-9562 24,-9559 24,-9556 24,-9556 24,-9550 24,-9550 24,-9547 27,-9544 30,-9544 30,-9544 139,-9544 139,-9544 142,-9544 145,-9547 145,-9550 145,-9550 145,-9556 145,-9556 145,-9559 142,-9562 139,-9562"/>
<text text-anchor="middle" x="84.5" y="-9550.8" font-family="Helvetica,sans-Serif" font-size="9.00">FeaturePipelineState.ts</text>
</a>
</g>
</g>
<!-- State.ts&#45;&gt;Logic/State/FeaturePipelineState.ts -->
<g id="edge350" class="edge">
<title>State.ts&#45;&gt;Logic/State/FeaturePipelineState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1003.54,-2741.79C996.87,-2677.64 957.27,-2290.84 939,-1975 938.18,-1960.85 941.18,-1729.86 931,-1720 853.76,-1645.15 781.26,-1664.72 689,-1720 255.77,-1979.58 278.21,-2232.72 153,-2722 107.57,-2899.51 86.94,-9103.52 85.57,-9529.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="83.45,-9537.92 85.53,-9543.93 87.65,-9537.93 83.45,-9537.92"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="85.55,-9537.93 85.56,-9534.93 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="85.56" cy="-9532.53" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts -->
<g id="node41" class="node">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts</title>
<g id="a_node41"><a xlink:href="Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts" xlink:title="SaveTileToLocalStorageActor.ts">
<path fill="#ddfeff" stroke="black" d="M645,-9886C645,-9886 503,-9886 503,-9886 500,-9886 497,-9883 497,-9880 497,-9880 497,-9874 497,-9874 497,-9871 500,-9868 503,-9868 503,-9868 645,-9868 645,-9868 648,-9868 651,-9871 651,-9874 651,-9874 651,-9880 651,-9880 651,-9883 648,-9886 645,-9886"/>
<text text-anchor="middle" x="574" y="-9874.8" font-family="Helvetica,sans-Serif" font-size="9.00">SaveTileToLocalStorageActor.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge49" class="edge">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M605.05,-9886.17C630.14,-9895.57 664.4,-9912.86 681,-9941 692.75,-9960.92 672.33,-10132.96 689,-10149 708.38,-10167.64 911.04,-10167.02 931,-10149 943.93,-10137.32 933.56,-10087.55 939,-10071 974.64,-9962.64 1038.53,-9959.78 1069.5,-9850 1075.45,-9828.9 1068.67,-9078.01 1082.5,-9061 1085.21,-9057.66 1088.54,-9055.02 1092.22,-9052.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.33,-9054.73 1097.85,-9050.26 1091.53,-9050.93 1093.33,-9054.73"/>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge48" class="edge">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M605.22,-9886.07C630.43,-9895.4 664.75,-9912.65 681,-9941 689.4,-9955.65 677.91,-10536.26 689,-10549 760.43,-10631.08 849,-10514.48 931,-10586 940.43,-10594.23 930.06,-10604.24 939,-10613 947.82,-10621.65 960.39,-10626.23 972.16,-10628.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="971.95,-10630.72 978.22,-10629.7 972.67,-10626.59 971.95,-10630.72"/>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge47" class="edge">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M496.87,-9881.54C480.44,-9878.08 466.54,-9870.1 461.67,-9854 459.52,-9846.89 459.52,-8792.11 461.67,-8785 474.69,-8741.98 520.26,-8711 549.2,-8695.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="550.45,-8696.82 554.75,-8692.14 548.47,-8693.12 550.45,-8696.82"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M496.96,-9883.56C481.67,-9880.47 468.9,-9873.07 464.33,-9858 462.17,-9850.84 462.17,-8788.16 464.33,-8781 476.82,-8739.76 520.5,-8710.31 548.82,-8695.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="549.93,-8696.81 554.26,-8692.15 547.98,-8693.09 549.93,-8696.81"/>
</g>
<!-- Logic/Web/IdbLocalStorage.ts -->
<g id="node42" class="node">
<title>Logic/Web/IdbLocalStorage.ts</title>
<g id="a_node42"><a xlink:href="Logic/Web/IdbLocalStorage.ts" xlink:title="IdbLocalStorage.ts">
<path fill="#ddfeff" stroke="black" d="M1050,-9300C1050,-9300 961,-9300 961,-9300 958,-9300 955,-9297 955,-9294 955,-9294 955,-9288 955,-9288 955,-9285 958,-9282 961,-9282 961,-9282 1050,-9282 1050,-9282 1053,-9282 1056,-9285 1056,-9288 1056,-9288 1056,-9294 1056,-9294 1056,-9297 1053,-9300 1050,-9300"/>
<text text-anchor="middle" x="1005.5" y="-9288.8" font-family="Helvetica,sans-Serif" font-size="9.00">IdbLocalStorage.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/Web/IdbLocalStorage.ts -->
<g id="edge50" class="edge">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/Web/IdbLocalStorage.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M651.16,-9879.4C662.57,-9876.32 673.13,-9870.92 681,-9862 700.51,-9839.87 668.68,-9352.39 689,-9331 707.56,-9311.47 904.54,-9320.11 931,-9315 946.09,-9312.09 962.38,-9306.98 975.78,-9302.22"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="976.79,-9304.09 981.72,-9300.07 975.36,-9300.14 976.79,-9304.09"/>
</g>
<!-- Logic/FeatureSource/Sources/SimpleFeatureSource.ts -->
<g id="node43" class="node">
<title>Logic/FeatureSource/Sources/SimpleFeatureSource.ts</title>
<g id="a_node43"><a xlink:href="Logic/FeatureSource/Sources/SimpleFeatureSource.ts" xlink:title="SimpleFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M862,-9790C862,-9790 750,-9790 750,-9790 747,-9790 744,-9787 744,-9784 744,-9784 744,-9778 744,-9778 744,-9775 747,-9772 750,-9772 750,-9772 862,-9772 862,-9772 865,-9772 868,-9775 868,-9778 868,-9778 868,-9784 868,-9784 868,-9787 865,-9790 862,-9790"/>
<text text-anchor="middle" x="806" y="-9778.8" font-family="Helvetica,sans-Serif" font-size="9.00">SimpleFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts -->
<g id="edge51" class="edge">
<title>Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M651.19,-9878.46C662.39,-9875.43 672.87,-9870.3 681,-9862 701.68,-9840.9 668.19,-9816.98 689,-9796 701.78,-9783.11 719.79,-9777.4 737.8,-9775.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="738.11,-9777.5 743.9,-9774.88 737.74,-9773.31 738.11,-9777.5"/>
</g>
<!-- Logic/Web/IdbLocalStorage.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge278" class="edge">
<title>Logic/Web/IdbLocalStorage.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1056.2,-9285.85C1061.28,-9283.5 1065.88,-9280.3 1069.5,-9276 1100.29,-9239.35 1051.5,-9097.47 1082.5,-9061 1085.24,-9057.78 1088.54,-9055.21 1092.19,-9053.17"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.21,-9055.01 1097.74,-9050.54 1091.42,-9051.21 1093.21,-9055.01"/>
</g>
<!-- Logic/FeatureSource/Sources/SimpleFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge90" class="edge">
<title>Logic/FeatureSource/Sources/SimpleFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M868.14,-9777.99C888.47,-9775.83 911.01,-9772.18 931,-9766 997.28,-9745.5 1032.89,-9752.93 1069.5,-9694 1088.06,-9664.12 1060.26,-9088.25 1082.5,-9061 1085.22,-9057.67 1088.55,-9055.03 1092.24,-9052.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.35,-9054.74 1097.87,-9050.27 1091.55,-9050.95 1093.35,-9054.74"/>
</g>
<!-- Logic/FeatureSource/Sources/SimpleFeatureSource.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge89" class="edge">
<title>Logic/FeatureSource/Sources/SimpleFeatureSource.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M868.07,-9772.75C891.1,-9773.2 915.45,-9778.63 931,-9796 946.14,-9812.91 925.15,-10595.02 939,-10613 946.85,-10623.2 959.91,-10627.97 972.32,-10630.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.09,-10632.18 978.33,-10630.93 972.68,-10628.02 972.09,-10632.18"/>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts -->
<g id="node44" class="node">
<title>Logic/FeatureSource/FeaturePipeline.ts</title>
<g id="a_node44"><a xlink:href="Logic/FeatureSource/FeaturePipeline.ts" xlink:title="FeaturePipeline.ts">
<path fill="#ddfeff" stroke="black" d="M424.5,-9886C424.5,-9886 339.5,-9886 339.5,-9886 336.5,-9886 333.5,-9883 333.5,-9880 333.5,-9880 333.5,-9874 333.5,-9874 333.5,-9871 336.5,-9868 339.5,-9868 339.5,-9868 424.5,-9868 424.5,-9868 427.5,-9868 430.5,-9871 430.5,-9874 430.5,-9874 430.5,-9880 430.5,-9880 430.5,-9883 427.5,-9886 424.5,-9886"/>
<text text-anchor="middle" x="382" y="-9874.8" font-family="Helvetica,sans-Serif" font-size="9.00">FeaturePipeline.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge56" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.73,-9875.28C441.52,-9877.32 451.87,-9881.65 459,-9890 471.43,-9904.56 457.6,-10562.32 467,-10579 599.26,-10813.73 928.07,-10875.32 1069.5,-10646 1092.61,-10608.53 1054.87,-9095.28 1082.5,-9061 1085.2,-9057.65 1088.51,-9055 1092.19,-9052.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.3,-9054.7 1097.81,-9050.23 1091.49,-9050.91 1093.3,-9054.7"/>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/Actors/OverpassFeatureSource.ts -->
<g id="edge53" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/Actors/OverpassFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M385.91,-9867.72C396.97,-9832.19 436.82,-9701.31 459,-9591 464.13,-9565.49 456.71,-9556.9 467,-9533 529.36,-9388.08 575.66,-9365.75 689,-9256 717.34,-9228.56 754.44,-9202.12 778.97,-9185.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="786.67,-9183.18 790.53,-9178.13 784.36,-9179.67 786.67,-9183.18"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="785.52,-9181.42 783.01,-9183.07 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="781" cy="-9184.39" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge52" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M386.36,-9867.79C399.01,-9832.53 443.88,-9702.49 459,-9591 462.04,-9568.59 457.62,-8797.58 467,-8777 484.23,-8739.18 524.9,-8710.33 550.56,-8695.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="551.66,-8696.88 555.79,-8692.05 549.55,-8693.25 551.66,-8696.88"/>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts -->
<g id="edge57" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Actors/RegisteringAllFromFeatureSourceActor.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.92,-9868.13C442.71,-9866.04 455.3,-9863.87 467,-9862 475.27,-9860.68 483.91,-9859.35 492.54,-9858.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="500.87,-9858.98 506.5,-9856.03 500.26,-9854.82 500.87,-9858.98"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="500.57,-9856.9 497.6,-9857.34 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="495.22" cy="-9857.68" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts -->
<g id="edge58" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Actors/SaveTileToLocalStorageActor.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.95,-9877C449.16,-9877 470.45,-9877 490.93,-9877"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="490.97,-9879.1 496.97,-9877 490.97,-9874.9 490.97,-9879.1"/>
</g>
<!-- Logic/MetaTagging.ts -->
<g id="node45" class="node">
<title>Logic/MetaTagging.ts</title>
<g id="a_node45"><a xlink:href="Logic/MetaTagging.ts" xlink:title="MetaTagging.ts">
<path fill="#ddfeff" stroke="black" d="M610.5,-9615C610.5,-9615 537.5,-9615 537.5,-9615 534.5,-9615 531.5,-9612 531.5,-9609 531.5,-9609 531.5,-9603 531.5,-9603 531.5,-9600 534.5,-9597 537.5,-9597 537.5,-9597 610.5,-9597 610.5,-9597 613.5,-9597 616.5,-9600 616.5,-9603 616.5,-9603 616.5,-9609 616.5,-9609 616.5,-9612 613.5,-9615 610.5,-9615"/>
<text text-anchor="middle" x="574" y="-9603.8" font-family="Helvetica,sans-Serif" font-size="9.00">MetaTagging.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/MetaTagging.ts -->
<g id="edge54" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/MetaTagging.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.22,-9867.84C384.57,-9831.98 394.5,-9699.77 467,-9633 480.73,-9620.35 499.56,-9613.43 517.53,-9609.71"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.76,-9610.47 531.33,-9607.41 525.07,-9606.33 525.76,-9610.47"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.41,-9608.4 522.45,-9608.89 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="520.09" cy="-9609.29" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/RelationsTracker.ts -->
<g id="node46" class="node">
<title>Logic/Osm/RelationsTracker.ts</title>
<g id="a_node46"><a xlink:href="Logic/Osm/RelationsTracker.ts" xlink:title="RelationsTracker.ts">
<path fill="#ddfeff" stroke="black" d="M617.5,-10290C617.5,-10290 530.5,-10290 530.5,-10290 527.5,-10290 524.5,-10287 524.5,-10284 524.5,-10284 524.5,-10278 524.5,-10278 524.5,-10275 527.5,-10272 530.5,-10272 530.5,-10272 617.5,-10272 617.5,-10272 620.5,-10272 623.5,-10275 623.5,-10278 623.5,-10278 623.5,-10284 623.5,-10284 623.5,-10287 620.5,-10290 617.5,-10290"/>
<text text-anchor="middle" x="574" y="-10278.8" font-family="Helvetica,sans-Serif" font-size="9.00">RelationsTracker.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/Osm/RelationsTracker.ts -->
<g id="edge55" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/Osm/RelationsTracker.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.67,-9875.33C441.46,-9877.36 451.83,-9881.69 459,-9890 472.64,-9905.83 453.13,-10250.37 467,-10266 479.63,-10280.24 499.13,-10285.49 517.97,-10286.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="518.24,-10288.77 524.32,-10286.9 518.41,-10284.57 518.24,-10288.77"/>
</g>
<!-- Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts -->
<g id="node47" class="node">
<title>Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts</title>
<g id="a_node47"><a xlink:href="Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts" xlink:title="PerLayerFeatureSourceSplitter.ts">
<path fill="#ddfeff" stroke="black" d="M650,-9780C650,-9780 498,-9780 498,-9780 495,-9780 492,-9777 492,-9774 492,-9774 492,-9768 492,-9768 492,-9765 495,-9762 498,-9762 498,-9762 650,-9762 650,-9762 653,-9762 656,-9765 656,-9768 656,-9768 656,-9774 656,-9774 656,-9777 653,-9780 650,-9780"/>
<text text-anchor="middle" x="574" y="-9768.8" font-family="Helvetica,sans-Serif" font-size="9.00">PerLayerFeatureSourceSplitter.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts -->
<g id="edge59" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M388.66,-9867.97C400.63,-9849.69 430.44,-9808.42 467,-9789 472.93,-9785.85 479.29,-9783.23 485.84,-9781.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="486.79,-9782.95 491.9,-9779.17 485.55,-9778.94 486.79,-9782.95"/>
</g>
<!-- Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts -->
<g id="node48" class="node">
<title>Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts</title>
<g id="a_node48"><a xlink:href="Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts" xlink:title="ChangeGeometryApplicator.ts">
<path fill="#ddfeff" stroke="black" d="M875.5,-9910C875.5,-9910 736.5,-9910 736.5,-9910 733.5,-9910 730.5,-9907 730.5,-9904 730.5,-9904 730.5,-9898 730.5,-9898 730.5,-9895 733.5,-9892 736.5,-9892 736.5,-9892 875.5,-9892 875.5,-9892 878.5,-9892 881.5,-9895 881.5,-9898 881.5,-9898 881.5,-9904 881.5,-9904 881.5,-9907 878.5,-9910 875.5,-9910"/>
<text text-anchor="middle" x="806" y="-9898.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangeGeometryApplicator.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts -->
<g id="edge60" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M393.79,-9867.93C408.97,-9855.82 438.04,-9834.97 467,-9827 489.93,-9820.69 663.09,-9811.36 681,-9827 700.93,-9844.41 670.23,-9867.35 689,-9886 698.62,-9895.56 711.11,-9901.15 724.32,-9904.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="724.14,-9906.3 730.44,-9905.42 724.97,-9902.18 724.14,-9906.3"/>
</g>
<!-- Logic/FeatureSource/Sources/FilteringFeatureSource.ts -->
<g id="node49" class="node">
<title>Logic/FeatureSource/Sources/FilteringFeatureSource.ts</title>
<g id="a_node49"><a xlink:href="Logic/FeatureSource/Sources/FilteringFeatureSource.ts" xlink:title="FilteringFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M864.5,-9820C864.5,-9820 747.5,-9820 747.5,-9820 744.5,-9820 741.5,-9817 741.5,-9814 741.5,-9814 741.5,-9808 741.5,-9808 741.5,-9805 744.5,-9802 747.5,-9802 747.5,-9802 864.5,-9802 864.5,-9802 867.5,-9802 870.5,-9805 870.5,-9808 870.5,-9808 870.5,-9814 870.5,-9814 870.5,-9817 867.5,-9820 864.5,-9820"/>
<text text-anchor="middle" x="806" y="-9808.8" font-family="Helvetica,sans-Serif" font-size="9.00">FilteringFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/FilteringFeatureSource.ts -->
<g id="edge61" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/FilteringFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M389.04,-9867.86C401.27,-9850.3 430.89,-9812.31 467,-9798 514.05,-9779.35 650.97,-9791.71 735.41,-9801.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="735.19,-9803.86 741.39,-9802.49 735.69,-9799.69 735.19,-9803.86"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts -->
<g id="node50" class="node">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts</title>
<g id="a_node50"><a xlink:href="Logic/FeatureSource/Sources/GeoJsonSource.ts" xlink:title="GeoJsonSource.ts">
<path fill="#ddfeff" stroke="black" d="M847.5,-9850C847.5,-9850 764.5,-9850 764.5,-9850 761.5,-9850 758.5,-9847 758.5,-9844 758.5,-9844 758.5,-9838 758.5,-9838 758.5,-9835 761.5,-9832 764.5,-9832 764.5,-9832 847.5,-9832 847.5,-9832 850.5,-9832 853.5,-9835 853.5,-9838 853.5,-9838 853.5,-9844 853.5,-9844 853.5,-9847 850.5,-9850 847.5,-9850"/>
<text text-anchor="middle" x="806" y="-9838.8" font-family="Helvetica,sans-Serif" font-size="9.00">GeoJsonSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/GeoJsonSource.ts -->
<g id="edge62" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/GeoJsonSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M391.22,-9867.99C405.14,-9853.49 434.98,-9825.54 467,-9815 512.17,-9800.13 638.62,-9793.42 681,-9815 686.39,-9817.74 683.8,-9822.92 689,-9826 707.84,-9837.17 731.39,-9841.59 752.35,-9842.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="752.37,-9845.07 758.47,-9843.29 752.59,-9840.88 752.37,-9845.07"/>
</g>
<!-- Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts -->
<g id="node51" class="node">
<title>Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts</title>
<g id="a_node51"><a xlink:href="Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts" xlink:title="NewGeometryFromChangesFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M909,-9730C909,-9730 703,-9730 703,-9730 700,-9730 697,-9727 697,-9724 697,-9724 697,-9718 697,-9718 697,-9715 700,-9712 703,-9712 703,-9712 909,-9712 909,-9712 912,-9712 915,-9715 915,-9718 915,-9718 915,-9724 915,-9724 915,-9727 912,-9730 909,-9730"/>
<text text-anchor="middle" x="806" y="-9718.8" font-family="Helvetica,sans-Serif" font-size="9.00">NewGeometryFromChangesFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts -->
<g id="edge63" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.7,-9877.18C440.98,-9879.27 451.12,-9883.15 459,-9890 467.81,-9897.65 457.58,-9908.12 467,-9915 476.6,-9922.01 672.41,-9923.22 681,-9915 693.67,-9902.88 679.77,-9784.6 690.67,-9741.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="695.95,-9735.49 696.58,-9729.17 692.14,-9733.72 695.95,-9735.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="694.05,-9734.61 692.79,-9737.33 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="691.78" cy="-9739.51" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/FeatureSource/Sources/RememberingSource.ts -->
<g id="node52" class="node">
<title>Logic/FeatureSource/Sources/RememberingSource.ts</title>
<g id="a_node52"><a xlink:href="Logic/FeatureSource/Sources/RememberingSource.ts" xlink:title="RememberingSource.ts">
<path fill="#ddfeff" stroke="black" d="M861,-9880C861,-9880 751,-9880 751,-9880 748,-9880 745,-9877 745,-9874 745,-9874 745,-9868 745,-9868 745,-9865 748,-9862 751,-9862 751,-9862 861,-9862 861,-9862 864,-9862 867,-9865 867,-9868 867,-9868 867,-9874 867,-9874 867,-9877 864,-9880 861,-9880"/>
<text text-anchor="middle" x="806" y="-9868.8" font-family="Helvetica,sans-Serif" font-size="9.00">RememberingSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/RememberingSource.ts -->
<g id="edge64" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/Sources/RememberingSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.74,-9876.63C441.14,-9878.71 451.32,-9882.73 459,-9890 470.59,-9900.97 454.52,-9915.05 467,-9925 485.59,-9939.82 662.57,-9940.03 681,-9925 694.71,-9913.82 676.04,-9898.04 689,-9886 702.37,-9873.58 720.64,-9868.03 738.73,-9866.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="739.05,-9868.14 744.85,-9865.53 738.69,-9863.96 739.05,-9868.14"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts -->
<g id="node53" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts</title>
<g id="a_node53"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts" xlink:title="DynamicGeoJsonTileSource.ts">
<path fill="#ddfeff" stroke="black" d="M642.5,-9970C642.5,-9970 505.5,-9970 505.5,-9970 502.5,-9970 499.5,-9967 499.5,-9964 499.5,-9964 499.5,-9958 499.5,-9958 499.5,-9955 502.5,-9952 505.5,-9952 505.5,-9952 642.5,-9952 642.5,-9952 645.5,-9952 648.5,-9955 648.5,-9958 648.5,-9958 648.5,-9964 648.5,-9964 648.5,-9967 645.5,-9970 642.5,-9970"/>
<text text-anchor="middle" x="574" y="-9958.8" font-family="Helvetica,sans-Serif" font-size="9.00">DynamicGeoJsonTileSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts -->
<g id="edge65" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.81,-9876.08C441.34,-9878.15 451.55,-9882.31 459,-9890 477.1,-9908.7 448.46,-9929.74 467,-9948 474.4,-9955.29 483.63,-9960.01 493.55,-9962.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="493.12,-9965 499.45,-9964.46 494.17,-9960.93 493.12,-9965"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts -->
<g id="node54" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts</title>
<g id="a_node54"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts" xlink:title="FullNodeDatabaseSource.ts">
<path fill="#ddfeff" stroke="black" d="M637.5,-10090C637.5,-10090 510.5,-10090 510.5,-10090 507.5,-10090 504.5,-10087 504.5,-10084 504.5,-10084 504.5,-10078 504.5,-10078 504.5,-10075 507.5,-10072 510.5,-10072 510.5,-10072 637.5,-10072 637.5,-10072 640.5,-10072 643.5,-10075 643.5,-10078 643.5,-10078 643.5,-10084 643.5,-10084 643.5,-10087 640.5,-10090 637.5,-10090"/>
<text text-anchor="middle" x="574" y="-10078.8" font-family="Helvetica,sans-Serif" font-size="9.00">FullNodeDatabaseSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts -->
<g id="edge66" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.53,-9875.45C441.33,-9877.48 451.73,-9881.77 459,-9890 471.96,-9904.67 453.83,-10051.52 467,-10066 475.33,-10075.16 486.5,-10080.57 498.46,-10083.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="498.09,-10085.62 504.39,-10084.84 498.97,-10081.52 498.09,-10085.62"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts -->
<g id="node55" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts</title>
<g id="a_node55"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts" xlink:title="OsmFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M624.5,-10030C624.5,-10030 523.5,-10030 523.5,-10030 520.5,-10030 517.5,-10027 517.5,-10024 517.5,-10024 517.5,-10018 517.5,-10018 517.5,-10015 520.5,-10012 523.5,-10012 523.5,-10012 624.5,-10012 624.5,-10012 627.5,-10012 630.5,-10015 630.5,-10018 630.5,-10018 630.5,-10024 630.5,-10024 630.5,-10027 627.5,-10030 624.5,-10030"/>
<text text-anchor="middle" x="574" y="-10018.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts -->
<g id="edge67" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.79,-9875.64C441.45,-9877.7 451.73,-9881.96 459,-9890 476.33,-9909.17 449.4,-9987.09 467,-10006 478.33,-10018.18 494.7,-10023.67 511.2,-10025.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="511.1,-10027.77 517.27,-10026.25 511.5,-10023.59 511.1,-10027.77"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts -->
<g id="node56" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts</title>
<g id="a_node56"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts" xlink:title="TiledFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M625,-10120C625,-10120 523,-10120 523,-10120 520,-10120 517,-10117 517,-10114 517,-10114 517,-10108 517,-10108 517,-10105 520,-10102 523,-10102 523,-10102 625,-10102 625,-10102 628,-10102 631,-10105 631,-10108 631,-10108 631,-10114 631,-10114 631,-10117 628,-10120 625,-10120"/>
<text text-anchor="middle" x="574" y="-10108.8" font-family="Helvetica,sans-Serif" font-size="9.00">TiledFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts -->
<g id="edge68" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.57,-9875.42C441.36,-9877.45 451.76,-9881.75 459,-9890 474.11,-9907.22 451.65,-10079 467,-10096 478.09,-10108.29 494.3,-10113.84 510.72,-10115.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="510.59,-10117.95 516.76,-10116.44 511,-10113.77 510.59,-10117.95"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchy.ts -->
<g id="node57" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchy.ts</title>
<g id="a_node57"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/TileHierarchy.ts" xlink:title="TileHierarchy.ts">
<path fill="#ddfeff" stroke="black" d="M610,-10000C610,-10000 538,-10000 538,-10000 535,-10000 532,-9997 532,-9994 532,-9994 532,-9988 532,-9988 532,-9985 535,-9982 538,-9982 538,-9982 610,-9982 610,-9982 613,-9982 616,-9985 616,-9988 616,-9988 616,-9994 616,-9994 616,-9997 613,-10000 610,-10000"/>
<text text-anchor="middle" x="574" y="-9988.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileHierarchy.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TileHierarchy.ts -->
<g id="edge69" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TileHierarchy.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.66,-9875.77C441.32,-9877.82 451.63,-9882.04 459,-9890 472.04,-9904.08 453.76,-9962.11 467,-9976 481.82,-9991.55 504.87,-9996.12 525.69,-9996.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.79,-9998.55 531.79,-9996.43 525.78,-9994.35 525.79,-9998.55"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts -->
<g id="node58" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts</title>
<g id="a_node58"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts" xlink:title="TileHierarchyMerger.ts">
<path fill="#ddfeff" stroke="black" d="M626,-10060C626,-10060 522,-10060 522,-10060 519,-10060 516,-10057 516,-10054 516,-10054 516,-10048 516,-10048 516,-10045 519,-10042 522,-10042 522,-10042 626,-10042 626,-10042 629,-10042 632,-10045 632,-10048 632,-10048 632,-10054 632,-10054 632,-10057 629,-10060 626,-10060"/>
<text text-anchor="middle" x="574" y="-10048.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileHierarchyMerger.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts -->
<g id="edge70" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.87,-9875.57C441.53,-9877.63 451.78,-9881.91 459,-9890 480.62,-9914.25 445.03,-10012.06 467,-10036 477.87,-10047.85 493.5,-10053.4 509.43,-10055.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="509.59,-10057.69 515.78,-10056.25 510.04,-10053.51 509.59,-10057.69"/>
</g>
<!-- Logic/FeatureSource/TileFreshnessCalculator.ts -->
<g id="node59" class="node">
<title>Logic/FeatureSource/TileFreshnessCalculator.ts</title>
<g id="a_node59"><a xlink:href="Logic/FeatureSource/TileFreshnessCalculator.ts" xlink:title="TileFreshnessCalculator.ts">
<path fill="#ddfeff" stroke="black" d="M633,-9662C633,-9662 515,-9662 515,-9662 512,-9662 509,-9659 509,-9656 509,-9656 509,-9650 509,-9650 509,-9647 512,-9644 515,-9644 515,-9644 633,-9644 633,-9644 636,-9644 639,-9647 639,-9650 639,-9650 639,-9656 639,-9656 639,-9659 636,-9662 633,-9662"/>
<text text-anchor="middle" x="574" y="-9650.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileFreshnessCalculator.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TileFreshnessCalculator.ts -->
<g id="edge71" class="edge">
<title>Logic/FeatureSource/FeaturePipeline.ts&#45;&gt;Logic/FeatureSource/TileFreshnessCalculator.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M388.55,-9867.76C401.26,-9846.92 433.92,-9795.01 467,-9756 496.62,-9721.07 536.47,-9684.77 557.88,-9666"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="559.27,-9667.57 562.41,-9662.05 556.51,-9664.41 559.27,-9667.57"/>
</g>
<!-- Logic/MetaTagging.ts&#45;&gt;Logic/SimpleMetaTagger.ts -->
<g id="edge148" class="edge">
<title>Logic/MetaTagging.ts&#45;&gt;Logic/SimpleMetaTagger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.58,-9612.34C638.13,-9615.32 664.92,-9618.53 689,-9620 742.68,-9623.28 892.7,-9657.75 931,-9620 942.06,-9609.1 932.01,-9074.87 939,-9061 946.14,-9046.82 959.41,-9035.53 972.14,-9027.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="980.33,-9024.94 984.45,-9020.09 978.21,-9021.31 980.33,-9024.94"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="979.27,-9023.12 976.68,-9024.64 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="974.61" cy="-9025.85" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/MetaTagging.ts&#45;&gt;Logic/ExtraFunctions.ts -->
<g id="edge147" class="edge">
<title>Logic/MetaTagging.ts&#45;&gt;Logic/ExtraFunctions.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.65,-9605.82C654.58,-9605.65 710.77,-9605.41 751.9,-9605.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="752.12,-9607.33 758.11,-9605.2 752.1,-9603.13 752.12,-9607.33"/>
</g>
<!-- Logic/MetaTagging.ts&#45;&gt;State.ts -->
<g id="edge146" class="edge">
<title>Logic/MetaTagging.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.53,-9611.95C639.06,-9612.64 665.42,-9608.85 681,-9591 695.45,-9574.45 682.48,-8029.98 689,-8009 745.73,-7826.29 874.58,-7835.81 931,-7653 940.58,-7621.95 934.35,-3006.16 939,-2974 949.94,-2898.39 980.53,-2812.64 995.71,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-2766.49 1000.79,-2760.14 996.65,-2764.96 1000.56,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.64" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/RelationsTracker.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge210" class="edge">
<title>Logic/Osm/RelationsTracker.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M623.68,-10284.23C643.28,-10283.13 664.99,-10278.57 681,-10266 688.53,-10260.09 681.27,-10251.64 689,-10246 732.55,-10214.23 888.18,-10261.76 931,-10229 939.6,-10222.42 930.55,-10212.77 939,-10206 961.79,-10187.75 1049.95,-10212.68 1069.5,-10191 1090.53,-10167.69 1062.76,-9085.41 1082.5,-9061 1085.2,-9057.66 1088.52,-9055.01 1092.2,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.31,-9054.71 1097.83,-9050.24 1091.51,-9050.92 1093.31,-9054.71"/>
</g>
<!-- Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts -->
<g id="edge72" class="edge">
<title>Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M656.09,-9774.53C682.79,-9775.69 712.17,-9776.96 737.73,-9778.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="737.71,-9780.18 743.79,-9778.34 737.89,-9775.98 737.71,-9780.18"/>
</g>
<!-- Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge74" class="edge">
<title>Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M881.76,-9898.04C945.28,-9890.92 1031.94,-9869.18 1069.5,-9805 1090.38,-9769.32 1056.41,-9093.06 1082.5,-9061 1085.21,-9057.66 1088.54,-9055.02 1092.22,-9052.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.34,-9054.73 1097.86,-9050.26 1091.53,-9050.94 1093.34,-9054.73"/>
</g>
<!-- Logic/Osm/Actions/ChangeDescription.ts -->
<g id="node60" class="node">
<title>Logic/Osm/Actions/ChangeDescription.ts</title>
<g id="a_node60"><a xlink:href="Logic/Osm/Actions/ChangeDescription.ts" xlink:title="ChangeDescription.ts">
<path fill="#ddfeff" stroke="black" d="M624.5,-10360C624.5,-10360 523.5,-10360 523.5,-10360 520.5,-10360 517.5,-10357 517.5,-10354 517.5,-10354 517.5,-10348 517.5,-10348 517.5,-10345 520.5,-10342 523.5,-10342 523.5,-10342 624.5,-10342 624.5,-10342 627.5,-10342 630.5,-10345 630.5,-10348 630.5,-10348 630.5,-10354 630.5,-10354 630.5,-10357 627.5,-10360 624.5,-10360"/>
<text text-anchor="middle" x="574" y="-10348.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangeDescription.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts&#45;&gt;Logic/Osm/Actions/ChangeDescription.ts -->
<g id="edge73" class="edge">
<title>Logic/FeatureSource/Sources/ChangeGeometryApplicator.ts&#45;&gt;Logic/Osm/Actions/ChangeDescription.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M736.17,-9910.1C717.97,-9915.96 700.29,-9925.5 689,-9941 676.01,-9958.83 695.78,-10321.63 681,-10338 669.82,-10350.38 653.41,-10355.66 636.83,-10357.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="636.55,-10355.22 630.72,-10357.76 636.86,-10359.41 636.55,-10355.22"/>
</g>
<!-- Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge78" class="edge">
<title>Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M870.52,-9807.16C890.16,-9804.96 911.7,-9801.48 931,-9796 996.23,-9777.48 1032.42,-9788.77 1069.5,-9732 1089.89,-9700.79 1058.94,-9089.9 1082.5,-9061 1085.22,-9057.67 1088.54,-9055.02 1092.23,-9052.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.34,-9054.74 1097.86,-9050.27 1091.54,-9050.94 1093.34,-9054.74"/>
</g>
<!-- Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge77" class="edge">
<title>Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M870.64,-9802.83C892.89,-9803.63 916.03,-9809.28 931,-9826 945.58,-9842.29 925.66,-10595.68 939,-10613 946.85,-10623.2 959.92,-10627.97 972.32,-10630.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.1,-10632.18 978.33,-10630.93 972.68,-10628.02 972.1,-10632.18"/>
</g>
<!-- Logic/Web/Hash.ts -->
<g id="node62" class="node">
<title>Logic/Web/Hash.ts</title>
<g id="a_node62"><a xlink:href="Logic/Web/Hash.ts" xlink:title="Hash.ts">
<path fill="#ddfeff" stroke="black" d="M1166.5,-9090C1166.5,-9090 1124.5,-9090 1124.5,-9090 1121.5,-9090 1118.5,-9087 1118.5,-9084 1118.5,-9084 1118.5,-9078 1118.5,-9078 1118.5,-9075 1121.5,-9072 1124.5,-9072 1124.5,-9072 1166.5,-9072 1166.5,-9072 1169.5,-9072 1172.5,-9075 1172.5,-9078 1172.5,-9078 1172.5,-9084 1172.5,-9084 1172.5,-9087 1169.5,-9090 1166.5,-9090"/>
<text text-anchor="middle" x="1145.5" y="-9078.8" font-family="Helvetica,sans-Serif" font-size="9.00">Hash.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge79" class="edge">
<title>Logic/FeatureSource/Sources/FilteringFeatureSource.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M870.82,-9802.97C892.95,-9803.83 915.96,-9809.48 931,-9826 942.22,-9838.33 927.05,-10114.37 939,-10126 980.56,-10166.46 1028.15,-10166.68 1069.5,-10126 1085.24,-10110.51 1079.64,-9352.9 1082.5,-9331 1094.31,-9240.46 1126.72,-9135.31 1139.36,-9096.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1141.47,-9096.74 1141.35,-9090.39 1137.48,-9095.44 1141.47,-9096.74"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Utils.ts -->
<g id="edge81" class="edge">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.61,-9848.95C880.32,-9850.61 912.17,-9847.13 931,-9826 944.63,-9810.71 926.25,-8367.04 939,-8351 976.09,-8304.33 1032.46,-8366.71 1069.5,-8320 1087.26,-8297.6 1075.28,-4230.66 1082.5,-4203 1113.45,-4084.42 1183.36,-4079.99 1216.5,-3962 1228.47,-3919.39 1209.39,-3804.6 1224.5,-3763 1241.05,-3717.44 1281.3,-3675.22 1303.38,-3654.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.09,-3655.75 1308.06,-3650.13 1302.23,-3652.67 1305.09,-3655.75"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge84" class="edge">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.75,-9843.9C915.81,-9844.82 1022.94,-9835.5 1069.5,-9766 1091.3,-9733.45 1057.76,-9091.37 1082.5,-9061 1085.22,-9057.67 1088.54,-9055.02 1092.23,-9052.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.34,-9054.73 1097.86,-9050.26 1091.54,-9050.94 1093.34,-9054.73"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge83" class="edge">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.57,-9833.08C880.27,-9831.43 912.12,-9834.92 931,-9856 945.64,-9872.35 923.4,-10630.56 939,-10646 980.22,-10686.8 1014.54,-10664.52 1069.5,-10646 1094.84,-10637.46 1118.41,-10616.58 1132.13,-10602.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1133.76,-10603.94 1136.39,-10598.15 1130.73,-10601.03 1133.76,-10603.94"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge82" class="edge">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M853.57,-9833.08C880.26,-9831.44 912.12,-9834.92 931,-9856 945.03,-9871.66 926.16,-10596.34 939,-10613 946.86,-10623.19 959.92,-10627.97 972.32,-10630.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.1,-10632.18 978.33,-10630.93 972.68,-10628.02 972.1,-10632.18"/>
</g>
<!-- Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge80" class="edge">
<title>Logic/FeatureSource/Sources/GeoJsonSource.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M758.47,-9848.15C734.11,-9849.05 705.9,-9845.08 689,-9826 669.68,-9804.19 693.05,-8803.53 681,-8777 663.81,-8739.16 623.13,-8710.32 597.46,-8695.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="598.46,-8693.24 592.22,-8692.04 596.35,-8696.87 598.46,-8693.24"/>
</g>
<!-- Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge87" class="edge">
<title>Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M915.1,-9725.64C971.11,-9721.61 1034.87,-9705.54 1069.5,-9658 1089.03,-9631.18 1061.51,-9086.69 1082.5,-9061 1085.22,-9057.67 1088.55,-9055.03 1092.24,-9052.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.35,-9054.74 1097.87,-9050.28 1091.55,-9050.95 1093.35,-9054.74"/>
</g>
<!-- Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge86" class="edge">
<title>Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M915.25,-9723.69C921.08,-9726.89 926.42,-9730.94 931,-9736 945.36,-9751.86 929.99,-10101.6 939,-10121 971.55,-10191.12 1030.36,-10169.33 1069.5,-10236 1083.32,-10259.53 1063.44,-10276.48 1082.5,-10296 1087.58,-10301.2 1094.13,-10304.72 1101.06,-10307.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.6,-10309.13 1106.95,-10308.8 1101.78,-10305.1 1100.6,-10309.13"/>
</g>
<!-- Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;State.ts -->
<g id="edge85" class="edge">
<title>Logic/FeatureSource/Sources/NewGeometryFromChangesFeatureSource.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M915.09,-9718.57C921,-9715.32 926.39,-9711.19 931,-9706 938.76,-9697.26 937.33,-2985.57 939,-2974 949.92,-2898.38 980.52,-2812.64 995.71,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-2766.49 1000.79,-2760.14 996.64,-2764.96 1000.56,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.63" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Utils.ts -->
<g id="edge93" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M624.77,-9951.95C645.82,-9945.4 668.36,-9934.18 681,-9915 694.78,-9894.1 676.65,-8134.77 689,-8113 751,-8003.75 869.14,-8076.32 931,-7967 945.03,-7942.21 922.2,-3888.01 939,-3865 974.93,-3815.79 1032.32,-3871.27 1069.5,-3823 1086.07,-3801.49 1062.8,-3597.68 1082.5,-3579 1146.01,-3518.78 1260.72,-3596.14 1302.62,-3628.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1301.34,-3629.9 1307.36,-3631.92 1303.91,-3626.58 1301.34,-3629.9"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge94" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M648.52,-9958.18C660.88,-9961.12 672.44,-9966.57 681,-9976 694.68,-9991.07 674.3,-10144.93 689,-10159 708.42,-10177.59 908.45,-10173.65 931,-10159 938.34,-10154.23 934.6,-10148.57 939,-10141 988.14,-10056.51 1038.31,-10056.62 1069.5,-9964 1077.51,-9940.23 1066.7,-9080.48 1082.5,-9061 1085.21,-9057.66 1088.53,-9055.01 1092.21,-9052.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.32,-9054.72 1097.84,-9050.25 1091.52,-9050.93 1093.32,-9054.72"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/FeatureSource/Sources/GeoJsonSource.ts -->
<g id="edge95" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/FeatureSource/Sources/GeoJsonSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M648.64,-9964.88C660.83,-9962.16 672.31,-9957 681,-9948 695.25,-9933.24 674.8,-9870.81 689,-9856 705,-9839.32 729.69,-9834.51 752.19,-9834.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="752.45,-9836.41 758.47,-9834.36 752.49,-9832.21 752.45,-9836.41"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts -->
<g id="node65" class="node">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts</title>
<g id="a_node65"><a xlink:href="Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts" xlink:title="DynamicTileSource.ts">
<path fill="#ddfeff" stroke="black" d="M856.5,-9970C856.5,-9970 755.5,-9970 755.5,-9970 752.5,-9970 749.5,-9967 749.5,-9964 749.5,-9964 749.5,-9958 749.5,-9958 749.5,-9955 752.5,-9952 755.5,-9952 755.5,-9952 856.5,-9952 856.5,-9952 859.5,-9952 862.5,-9955 862.5,-9958 862.5,-9958 862.5,-9964 862.5,-9964 862.5,-9967 859.5,-9970 856.5,-9970"/>
<text text-anchor="middle" x="806" y="-9958.8" font-family="Helvetica,sans-Serif" font-size="9.00">DynamicTileSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts -->
<g id="edge96" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicGeoJsonTileSource.ts&#45;&gt;Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M648.72,-9961C679.14,-9961 714.01,-9961 743.08,-9961"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="743.19,-9963.1 749.19,-9961 743.19,-9958.9 743.19,-9963.1"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge98" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M643.58,-10076.89C657.84,-10079.48 671.42,-10085.12 681,-10096 702.66,-10120.6 667.08,-10661.63 689,-10686 761.44,-10766.54 853.34,-10639.48 931,-10715 948.39,-10731.92 920.63,-10753.15 939,-10769 960.96,-10787.94 1048.69,-10789.2 1069.5,-10769 1104.43,-10735.09 1053.26,-10369.93 1082.5,-10331 1087.21,-10324.73 1093.91,-10320.39 1101.19,-10317.39"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1101.91,-10319.37 1106.84,-10315.35 1100.48,-10315.42 1101.91,-10319.37"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts -->
<g id="edge99" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/FullNodeDatabaseSource.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M643.73,-10084.95C657.89,-10082.34 671.4,-10076.73 681,-10066 701.01,-10043.63 668.85,-9818.25 689,-9796 701.31,-9782.41 719.36,-9776.54 737.58,-9774.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="737.95,-9776.71 743.76,-9774.14 737.61,-9772.53 737.95,-9776.71"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Utils.ts -->
<g id="edge101" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.67,-10026.74C649.37,-10025.52 668.6,-10020.22 681,-10006 698.04,-9986.46 674.12,-8160.23 689,-8139 754.77,-8045.16 865.34,-8143.92 931,-8050 947.55,-8026.33 921.56,-3914.02 939,-3891 975.4,-3842.94 1031.91,-3901.13 1069.5,-3854 1086.78,-3832.34 1062.41,-3624.07 1082.5,-3605 1142.9,-3547.68 1253.85,-3602.5 1298.81,-3628.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1297.97,-3630.7 1304.2,-3631.95 1300.11,-3627.08 1297.97,-3630.7"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge104" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.52,-10015.66C649.09,-10016.96 668.27,-10022.2 681,-10036 701.08,-10057.76 667.44,-10148.7 689,-10169 708.58,-10187.43 907.74,-10182.5 931,-10169 937.2,-10165.4 934.27,-10160.39 939,-10155 987.03,-10100.29 1036.7,-10120.99 1069.5,-10056 1081.96,-10031.32 1065.1,-9082.48 1082.5,-9061 1085.21,-9057.66 1088.53,-9055.01 1092.21,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.32,-9054.72 1097.84,-9050.24 1091.52,-9050.93 1093.32,-9054.72"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/Tags/Or.ts -->
<g id="edge103" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/Tags/Or.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.61,-10015.32C649.3,-10016.54 668.54,-10021.83 681,-10036 692.76,-10049.37 676.59,-10664.23 689,-10677 707.75,-10696.3 910.8,-10669.22 931,-10687 946.91,-10701 922.81,-10720.33 939,-10734 983.32,-10771.41 1027.96,-10774.48 1069.5,-10734 1079.51,-10724.25 1081.76,-10244.96 1082.5,-10231 1098.74,-9923.03 1135.11,-9547.71 1142.98,-9468.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1145.07,-9468.41 1143.57,-9462.23 1140.89,-9468 1145.07,-9468.41"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge102" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.59,-10015.33C649.28,-10016.56 668.53,-10021.85 681,-10036 701.17,-10058.88 667.95,-10562.93 689,-10585 707.59,-10604.5 907.9,-10586.14 931,-10600 936.82,-10603.49 933.57,-10608.93 939,-10613 948.55,-10620.17 960.79,-10624.48 972.1,-10627.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="971.97,-10629.19 978.27,-10628.35 972.82,-10625.08 971.97,-10629.19"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge100" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M517.2,-10027.75C492.87,-10027.13 468.47,-10020.48 461.67,-9998 459.23,-9989.94 459.23,-8793.06 461.67,-8785 474.69,-8741.98 520.26,-8711 549.2,-8695.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="550.45,-8696.82 554.75,-8692.14 548.47,-8693.12 550.45,-8696.82"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M517.31,-10029.42C493.95,-10029.37 470.83,-10023.45 464.33,-10002 461.88,-9993.88 461.88,-8789.12 464.33,-8781 476.82,-8739.76 520.5,-8710.31 548.82,-8695.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="549.93,-8696.81 554.26,-8692.15 547.98,-8693.09 549.93,-8696.81"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts -->
<g id="edge105" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M517.24,-10028.57C493.41,-10028.24 469.65,-10021.96 463,-10000 459.7,-9989.1 459.7,-9805.9 463,-9795 466.6,-9783.11 475.15,-9775.62 486,-9771.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="486.94,-9772.98 491.87,-9768.97 485.52,-9769.02 486.94,-9772.98"/>
</g>
<!-- Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="node64" class="node">
<title>Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<g id="a_node64"><a xlink:href="Logic/FeatureSource/Sources/StaticFeatureSource.ts" xlink:title="StaticFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M859.5,-9670C859.5,-9670 752.5,-9670 752.5,-9670 749.5,-9670 746.5,-9667 746.5,-9664 746.5,-9664 746.5,-9658 746.5,-9658 746.5,-9655 749.5,-9652 752.5,-9652 752.5,-9652 859.5,-9652 859.5,-9652 862.5,-9652 865.5,-9655 865.5,-9658 865.5,-9658 865.5,-9664 865.5,-9664 865.5,-9667 862.5,-9670 859.5,-9670"/>
<text text-anchor="middle" x="806" y="-9658.8" font-family="Helvetica,sans-Serif" font-size="9.00">StaticFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge106" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/OsmFeatureSource.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.52,-10026.6C649.2,-10025.37 668.46,-10020.09 681,-10006 693.19,-9992.3 676.73,-9689.63 689,-9676 701.82,-9661.77 720.94,-9655.99 739.98,-9654.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.57,-9656.43 746.43,-9653.96 740.31,-9652.24 740.57,-9656.43"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge113" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M631.12,-10104.97C649.29,-10106.07 668.07,-10110.97 681,-10124 692.03,-10135.12 677.32,-10183.58 689,-10194 729.13,-10229.8 883.08,-10218.4 931,-10194 936.39,-10191.26 934.08,-10186.51 939,-10183 988.38,-10147.77 1033.14,-10191.56 1069.5,-10143 1105.53,-10094.88 1044.68,-9107.73 1082.5,-9061 1085.21,-9057.66 1088.52,-9055.01 1092.21,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.32,-9054.72 1097.83,-9050.24 1091.51,-9050.92 1093.32,-9054.72"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge112" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M587.56,-10120.14C611.16,-10138.19 661.51,-10181.02 681,-10231 689.07,-10251.71 673.13,-10615.44 689,-10631 728.2,-10669.43 899.45,-10647.68 971.92,-10636.43"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.6,-10638.45 978.2,-10635.44 971.95,-10634.3 972.6,-10638.45"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge111" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TiledFeatureSource.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M516.89,-10117.75C492.67,-10117.07 468.44,-10110.39 461.67,-10088 459.04,-10079.34 459.04,-8793.66 461.67,-8785 474.69,-8741.98 520.26,-8711 549.2,-8695.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="550.45,-8696.82 554.75,-8692.14 548.47,-8693.12 550.45,-8696.82"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M516.7,-10119.41C493.56,-10119.26 470.77,-10113.27 464.33,-10092 461.7,-10083.29 461.7,-8789.71 464.33,-8781 476.82,-8739.76 520.5,-8710.31 548.82,-8695.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="549.93,-8696.81 554.26,-8692.15 547.98,-8693.09 549.93,-8696.81"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge109" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M632.1,-10045.86C650.13,-10047.36 668.58,-10052.68 681,-10066 698.17,-10084.41 670.58,-10161.84 689,-10179 728.35,-10215.66 882.53,-10202.3 931,-10179 936.13,-10176.53 934.52,-10172.51 939,-10169 989.29,-10129.68 1034.72,-10162.53 1069.5,-10109 1085.36,-10084.59 1064.18,-9083.63 1082.5,-9061 1085.21,-9057.66 1088.52,-9055.01 1092.21,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.32,-9054.72 1097.83,-9050.24 1091.51,-9050.92 1093.32,-9054.72"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge108" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M632.25,-10045.45C650.41,-10046.88 668.89,-10052.27 681,-10066 700.59,-10088.21 668.98,-10577.18 689,-10599 707.92,-10619.62 895.73,-10627.67 972.28,-10630.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.41,-10632.22 978.47,-10630.3 972.54,-10628.02 972.41,-10632.22"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge107" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M515.96,-10057.72C492.05,-10056.9 468.36,-10050.1 461.67,-10028 459.17,-10019.74 459.17,-8793.26 461.67,-8785 474.69,-8741.98 520.26,-8711 549.2,-8695.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="550.45,-8696.82 554.75,-8692.14 548.47,-8693.12 550.45,-8696.82"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M515.8,-10059.4C492.97,-10059.1 470.69,-10052.99 464.33,-10032 461.82,-10023.69 461.82,-8789.31 464.33,-8781 476.82,-8739.76 520.5,-8710.31 548.82,-8695.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="549.93,-8696.81 554.26,-8692.15 547.98,-8693.09 549.93,-8696.81"/>
</g>
<!-- Logic/FeatureSource/Sources/FeatureSourceMerger.ts -->
<g id="node61" class="node">
<title>Logic/FeatureSource/Sources/FeatureSourceMerger.ts</title>
<g id="a_node61"><a xlink:href="Logic/FeatureSource/Sources/FeatureSourceMerger.ts" xlink:title="FeatureSourceMerger.ts">
<path fill="#ddfeff" stroke="black" d="M861.5,-9700C861.5,-9700 750.5,-9700 750.5,-9700 747.5,-9700 744.5,-9697 744.5,-9694 744.5,-9694 744.5,-9688 744.5,-9688 744.5,-9685 747.5,-9682 750.5,-9682 750.5,-9682 861.5,-9682 861.5,-9682 864.5,-9682 867.5,-9685 867.5,-9688 867.5,-9688 867.5,-9694 867.5,-9694 867.5,-9697 864.5,-9700 861.5,-9700"/>
<text text-anchor="middle" x="806" y="-9688.8" font-family="Helvetica,sans-Serif" font-size="9.00">FeatureSourceMerger.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/FeatureSource/Sources/FeatureSourceMerger.ts -->
<g id="edge110" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/TileHierarchyMerger.ts&#45;&gt;Logic/FeatureSource/Sources/FeatureSourceMerger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M632.18,-10056.48C650.33,-10055.05 668.83,-10049.68 681,-10036 693.19,-10022.3 676.73,-9719.63 689,-9706 701.39,-9692.24 719.68,-9686.38 738.08,-9684.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="738.5,-9686.61 744.32,-9684.06 738.18,-9682.42 738.5,-9686.61"/>
</g>
<!-- Logic/FeatureSource/TileFreshnessCalculator.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge92" class="edge">
<title>Logic/FeatureSource/TileFreshnessCalculator.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M508.85,-9660.49C487.5,-9658.99 467.67,-9651.84 461.67,-9632 458.26,-9620.74 458.26,-8796.26 461.67,-8785 474.69,-8741.98 520.26,-8711 549.2,-8695.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="550.45,-8696.82 554.75,-8692.14 548.47,-8693.12 550.45,-8696.82"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M527.22,-9662.01C500.85,-9664.13 471.73,-9660.43 464.33,-9636 460.89,-9624.63 460.89,-8792.37 464.33,-8781 476.82,-8739.76 520.5,-8710.31 548.82,-8695.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="549.93,-8696.81 554.26,-8692.15 547.98,-8693.09 549.93,-8696.81"/>
</g>
<!-- Logic/Osm/Actions/ChangeDescription.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge149" class="edge">
<title>Logic/Osm/Actions/ChangeDescription.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.76,-10345.47C647.02,-10343.5 664.78,-10341.01 681,-10338 684.6,-10337.33 685.41,-10336.74 689,-10336 855.57,-10301.58 900.35,-10277.16 1069.5,-10295 1080.67,-10296.18 1092.63,-10298.32 1103.63,-10300.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1103.33,-10302.74 1109.64,-10301.97 1104.23,-10298.64 1103.33,-10302.74"/>
</g>
<!-- Logic/FeatureSource/Sources/FeatureSourceMerger.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge76" class="edge">
<title>Logic/FeatureSource/Sources/FeatureSourceMerger.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M867.57,-9694.76C930.41,-9694.88 1025.54,-9683.59 1069.5,-9620 1087.17,-9594.45 1062.82,-9085.04 1082.5,-9061 1085.22,-9057.67 1088.56,-9055.03 1092.25,-9052.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.36,-9054.75 1097.88,-9050.28 1091.56,-9050.95 1093.36,-9054.75"/>
</g>
<!-- Logic/FeatureSource/Sources/FeatureSourceMerger.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge75" class="edge">
<title>Logic/FeatureSource/Sources/FeatureSourceMerger.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M744.49,-9698.07C723.95,-9697.02 702.74,-9691.5 689,-9676 672.43,-9657.32 691.35,-8799.73 681,-8777 663.78,-8739.17 623.11,-8710.33 597.45,-8695.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="598.46,-8693.24 592.21,-8692.04 596.35,-8696.87 598.46,-8693.24"/>
</g>
<!-- Logic/Web/Hash.ts&#45;&gt;Utils.ts -->
<g id="edge276" class="edge">
<title>Logic/Web/Hash.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1172.51,-9083.63C1187.78,-9083.6 1206.06,-9080.54 1216.5,-9068 1228.29,-9053.84 1218.55,-3780.43 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Web/Hash.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge277" class="edge">
<title>Logic/Web/Hash.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1145.5,-9071.64C1145.5,-9068.55 1145.5,-9065.46 1145.5,-9062.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1147.6,-9062.03 1145.5,-9056.03 1143.4,-9062.03 1147.6,-9062.03"/>
</g>
<!-- Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts -->
<g id="node63" class="node">
<title>Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts</title>
<g id="a_node63"><a xlink:href="Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts" xlink:title="RenderingMultiPlexerFeatureSource.ts">
<path fill="#ddfeff" stroke="black" d="M894,-9760C894,-9760 718,-9760 718,-9760 715,-9760 712,-9757 712,-9754 712,-9754 712,-9748 712,-9748 712,-9745 715,-9742 718,-9742 718,-9742 894,-9742 894,-9742 897,-9742 900,-9745 900,-9748 900,-9748 900,-9754 900,-9754 900,-9757 897,-9760 894,-9760"/>
<text text-anchor="middle" x="806" y="-9748.8" font-family="Helvetica,sans-Serif" font-size="9.00">RenderingMultiPlexerFeatureSource.ts</text>
</a>
</g>
</g>
<!-- Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge88" class="edge">
<title>Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M900.05,-9747.31C911.85,-9750.83 922.68,-9756.71 931,-9766 946.43,-9783.24 922.56,-10582.72 939,-10599 960.32,-10620.12 1042.18,-10609.21 1095.93,-10599.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1096.5,-10601.24 1102.01,-10598.06 1095.72,-10597.11 1096.5,-10601.24"/>
</g>
<!-- Logic/FeatureSource/Sources/StaticFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge91" class="edge">
<title>Logic/FeatureSource/Sources/StaticFeatureSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.74,-9662.51C929.2,-9660.49 1026.94,-9645.86 1069.5,-9579 1084.96,-9554.72 1064.24,-9083.26 1082.5,-9061 1085.23,-9057.68 1088.56,-9055.04 1092.25,-9052.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.36,-9054.75 1097.89,-9050.29 1091.57,-9050.96 1093.36,-9054.75"/>
</g>
<!-- Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge97" class="edge">
<title>Logic/FeatureSource/TiledFeatureSource/DynamicTileSource.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M749.24,-9964.62C727.1,-9962.87 703.51,-9956.39 689,-9939 678.66,-9926.61 687.67,-8791.7 681,-8777 663.82,-8739.15 623.14,-8710.31 597.46,-8695.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="598.47,-8693.24 592.23,-8692.04 596.36,-8696.87 598.47,-8693.24"/>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts -->
<g id="node66" class="node">
<title>Logic/ImageProviders/AllImageProviders.ts</title>
<g id="a_node66"><a xlink:href="Logic/ImageProviders/AllImageProviders.ts" xlink:title="AllImageProviders.ts">
<path fill="#ddfeff" stroke="black" d="M430,-8819C430,-8819 334,-8819 334,-8819 331,-8819 328,-8816 328,-8813 328,-8813 328,-8807 328,-8807 328,-8804 331,-8801 334,-8801 334,-8801 430,-8801 430,-8801 433,-8801 436,-8804 436,-8807 436,-8807 436,-8813 436,-8813 436,-8816 433,-8819 430,-8819"/>
<text text-anchor="middle" x="382" y="-8807.8" font-family="Helvetica,sans-Serif" font-size="9.00">AllImageProviders.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge116" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.31,-8819.35C392.93,-8881.33 441.7,-9239.43 459,-9533 460.01,-9550.08 456.51,-10135.48 467,-10149 529.66,-10229.75 587.68,-10195.55 689,-10209 742.31,-10216.08 885.59,-10237.82 931,-10209 938.05,-10204.53 932.4,-10197.12 939,-10192 985.65,-10155.79 1031.61,-10212.3 1069.5,-10167 1089.21,-10143.43 1063.18,-9084.89 1082.5,-9061 1085.2,-9057.66 1088.52,-9055.01 1092.2,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.31,-9054.71 1097.83,-9050.24 1091.51,-9050.92 1093.31,-9054.71"/>
</g>
<!-- Logic/ImageProviders/GenericImageProvider.ts -->
<g id="node67" class="node">
<title>Logic/ImageProviders/GenericImageProvider.ts</title>
<g id="a_node67"><a xlink:href="Logic/ImageProviders/GenericImageProvider.ts" xlink:title="GenericImageProvider.ts">
<path fill="#ddfeff" stroke="black" d="M631,-8908C631,-8908 517,-8908 517,-8908 514,-8908 511,-8905 511,-8902 511,-8902 511,-8896 511,-8896 511,-8893 514,-8890 517,-8890 517,-8890 631,-8890 631,-8890 634,-8890 637,-8893 637,-8896 637,-8896 637,-8902 637,-8902 637,-8905 634,-8908 631,-8908"/>
<text text-anchor="middle" x="574" y="-8896.8" font-family="Helvetica,sans-Serif" font-size="9.00">GenericImageProvider.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/GenericImageProvider.ts -->
<g id="edge117" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/GenericImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.18,-8819.14C403.43,-8835.28 433.46,-8868.56 467,-8884 478.71,-8889.39 491.86,-8892.96 504.81,-8895.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="504.47,-8897.38 510.74,-8896.29 505.17,-8893.23 504.47,-8897.38"/>
</g>
<!-- Logic/ImageProviders/Imgur.ts -->
<g id="node68" class="node">
<title>Logic/ImageProviders/Imgur.ts</title>
<g id="a_node68"><a xlink:href="Logic/ImageProviders/Imgur.ts" xlink:title="Imgur.ts">
<path fill="#ddfeff" stroke="black" d="M827,-8866C827,-8866 785,-8866 785,-8866 782,-8866 779,-8863 779,-8860 779,-8860 779,-8854 779,-8854 779,-8851 782,-8848 785,-8848 785,-8848 827,-8848 827,-8848 830,-8848 833,-8851 833,-8854 833,-8854 833,-8860 833,-8860 833,-8863 830,-8866 827,-8866"/>
<text text-anchor="middle" x="806" y="-8854.8" font-family="Helvetica,sans-Serif" font-size="9.00">Imgur.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/Imgur.ts -->
<g id="edge118" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/Imgur.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M436.2,-8811.79C520.55,-8814.74 676.02,-8820.6 681,-8824 688.23,-8828.94 681.98,-8836.77 689,-8842 712.86,-8859.79 747.43,-8862.13 772.62,-8860.87"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.95,-8862.95 778.81,-8860.48 772.69,-8858.76 772.95,-8862.95"/>
</g>
<!-- Logic/ImageProviders/Mapillary.ts -->
<g id="node69" class="node">
<title>Logic/ImageProviders/Mapillary.ts</title>
<g id="a_node69"><a xlink:href="Logic/ImageProviders/Mapillary.ts" xlink:title="Mapillary.ts">
<path fill="#ddfeff" stroke="black" d="M833,-8806C833,-8806 779,-8806 779,-8806 776,-8806 773,-8803 773,-8800 773,-8800 773,-8794 773,-8794 773,-8791 776,-8788 779,-8788 779,-8788 833,-8788 833,-8788 836,-8788 839,-8791 839,-8794 839,-8794 839,-8800 839,-8800 839,-8803 836,-8806 833,-8806"/>
<text text-anchor="middle" x="806" y="-8794.8" font-family="Helvetica,sans-Serif" font-size="9.00">Mapillary.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/Mapillary.ts -->
<g id="edge119" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/Mapillary.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M436.22,-8802.02C446.42,-8800.78 457.02,-8799.68 467,-8799 575.39,-8791.61 703.79,-8793.86 766.56,-8795.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.73,-8797.78 772.79,-8795.86 766.86,-8793.58 766.73,-8797.78"/>
</g>
<!-- Logic/ImageProviders/WikidataImageProvider.ts -->
<g id="node70" class="node">
<title>Logic/ImageProviders/WikidataImageProvider.ts</title>
<g id="a_node70"><a xlink:href="Logic/ImageProviders/WikidataImageProvider.ts" xlink:title="WikidataImageProvider.ts">
<path fill="#ddfeff" stroke="black" d="M633.5,-8848C633.5,-8848 514.5,-8848 514.5,-8848 511.5,-8848 508.5,-8845 508.5,-8842 508.5,-8842 508.5,-8836 508.5,-8836 508.5,-8833 511.5,-8830 514.5,-8830 514.5,-8830 633.5,-8830 633.5,-8830 636.5,-8830 639.5,-8833 639.5,-8836 639.5,-8836 639.5,-8842 639.5,-8842 639.5,-8845 636.5,-8848 633.5,-8848"/>
<text text-anchor="middle" x="574" y="-8836.8" font-family="Helvetica,sans-Serif" font-size="9.00">WikidataImageProvider.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/WikidataImageProvider.ts -->
<g id="edge120" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/WikidataImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M436.18,-8818.12C458.35,-8821.5 484.32,-8825.46 507.64,-8829.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="507.57,-8831.14 513.82,-8829.97 508.21,-8826.99 507.57,-8831.14"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts -->
<g id="node71" class="node">
<title>Logic/ImageProviders/WikimediaImageProvider.ts</title>
<g id="a_node71"><a xlink:href="Logic/ImageProviders/WikimediaImageProvider.ts" xlink:title="WikimediaImageProvider.ts">
<path fill="#ddfeff" stroke="black" d="M869,-8836C869,-8836 743,-8836 743,-8836 740,-8836 737,-8833 737,-8830 737,-8830 737,-8824 737,-8824 737,-8821 740,-8818 743,-8818 743,-8818 869,-8818 869,-8818 872,-8818 875,-8821 875,-8824 875,-8824 875,-8830 875,-8830 875,-8833 872,-8836 869,-8836"/>
<text text-anchor="middle" x="806" y="-8824.8" font-family="Helvetica,sans-Serif" font-size="9.00">WikimediaImageProvider.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts -->
<g id="edge121" class="edge">
<title>Logic/ImageProviders/AllImageProviders.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M436.08,-8808.9C495.72,-8808.04 595.4,-8807.75 681,-8813 697.18,-8813.99 714.49,-8815.6 730.89,-8817.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="730.69,-8819.47 736.89,-8818.04 731.16,-8815.3 730.69,-8819.47"/>
</g>
<!-- Logic/ImageProviders/ImageProvider.ts -->
<g id="node72" class="node">
<title>Logic/ImageProviders/ImageProvider.ts</title>
<g id="a_node72"><a xlink:href="Logic/ImageProviders/ImageProvider.ts" xlink:title="ImageProvider.ts">
<path fill="#ddfeff" stroke="black" d="M1045.5,-8866C1045.5,-8866 965.5,-8866 965.5,-8866 962.5,-8866 959.5,-8863 959.5,-8860 959.5,-8860 959.5,-8854 959.5,-8854 959.5,-8851 962.5,-8848 965.5,-8848 965.5,-8848 1045.5,-8848 1045.5,-8848 1048.5,-8848 1051.5,-8851 1051.5,-8854 1051.5,-8854 1051.5,-8860 1051.5,-8860 1051.5,-8863 1048.5,-8866 1045.5,-8866"/>
<text text-anchor="middle" x="1005.5" y="-8854.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImageProvider.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/GenericImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts -->
<g id="edge122" class="edge">
<title>Logic/ImageProviders/GenericImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.5,-8908.02C681.12,-8922.35 829.17,-8942.94 931,-8883 936.85,-8879.56 933.43,-8873.87 939,-8870 943.31,-8867 948.14,-8864.66 953.18,-8862.83"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="954.1,-8864.74 959.17,-8860.92 952.82,-8860.74 954.1,-8864.74"/>
</g>
<!-- Logic/ImageProviders/Imgur.ts&#45;&gt;Utils.ts -->
<g id="edge126" class="edge">
<title>Logic/ImageProviders/Imgur.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.04,-8862.64C861.7,-8867.15 906.9,-8868.89 931,-8842 944.52,-8826.92 930.98,-8131.6 939,-8113 970.91,-8038.96 1037.88,-8061.16 1069.5,-7987 1080.73,-7960.67 1065.75,-3888.21 1082.5,-3865 1119.26,-3814.05 1176.36,-3868.33 1216.5,-3820 1232.85,-3800.32 1214.59,-3786.58 1224.5,-3763 1243.38,-3718.09 1283.01,-3675.3 1304.28,-3654.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.94,-3655.69 1308.78,-3650 1303.01,-3652.68 1305.94,-3655.69"/>
</g>
<!-- Logic/ImageProviders/Imgur.ts&#45;&gt;Models/Constants.ts -->
<g id="edge125" class="edge">
<title>Logic/ImageProviders/Imgur.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M778.89,-8862.64C746.26,-8867.72 694.47,-8869.68 683.67,-8834 680.5,-8823.55 680.5,-8451.45 683.67,-8441 692.84,-8410.7 731.68,-8407.9 763.17,-8411.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.16,-8413.15 769.36,-8411.74 763.63,-8408.98 763.16,-8413.15"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M778.91,-8863.44C746.94,-8869.32 696.79,-8872.53 686.33,-8838 683.11,-8827.34 683.11,-8447.66 686.33,-8437 695.18,-8407.78 732.54,-8405.93 763.19,-8409.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.99,-8411.89 769.22,-8410.64 763.57,-8407.73 762.99,-8411.89"/>
</g>
<!-- Logic/ImageProviders/Imgur.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts -->
<g id="edge127" class="edge">
<title>Logic/ImageProviders/Imgur.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.23,-8857C863.7,-8857 914.72,-8857 953.17,-8857"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="953.23,-8859.1 959.23,-8857 953.23,-8854.9 953.23,-8859.1"/>
</g>
<!-- Logic/ImageProviders/LicenseInfo.ts -->
<g id="node73" class="node">
<title>Logic/ImageProviders/LicenseInfo.ts</title>
<g id="a_node73"><a xlink:href="Logic/ImageProviders/LicenseInfo.ts" xlink:title="LicenseInfo.ts">
<path fill="#ddfeff" stroke="black" d="M1039,-8836C1039,-8836 972,-8836 972,-8836 969,-8836 966,-8833 966,-8830 966,-8830 966,-8824 966,-8824 966,-8821 969,-8818 972,-8818 972,-8818 1039,-8818 1039,-8818 1042,-8818 1045,-8821 1045,-8824 1045,-8824 1045,-8830 1045,-8830 1045,-8833 1042,-8836 1039,-8836"/>
<text text-anchor="middle" x="1005.5" y="-8824.8" font-family="Helvetica,sans-Serif" font-size="9.00">LicenseInfo.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/Imgur.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts -->
<g id="edge128" class="edge">
<title>Logic/ImageProviders/Imgur.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.21,-8854.45C858.37,-8851.86 897.39,-8847.45 931,-8842 940.28,-8840.49 950.17,-8838.65 959.59,-8836.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.24,-8838.78 965.7,-8835.53 959.4,-8834.66 960.24,-8838.78"/>
</g>
<!-- Logic/ImageProviders/Mapillary.ts&#45;&gt;Utils.ts -->
<g id="edge133" class="edge">
<title>Logic/ImageProviders/Mapillary.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M821.27,-8787.88C848.7,-8769.38 908.11,-8724.49 931,-8669 943.88,-8637.77 933.57,-8094.34 939,-8061 969.59,-7873.09 1039.83,-7841.06 1069.5,-7653 1073.68,-7626.48 1065.83,-3808.05 1082.5,-3787 1120.52,-3739 1163.91,-3786.36 1216.5,-3755 1259.37,-3729.44 1294.27,-3679.97 1309.79,-3655.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1311.76,-3656.29 1313.15,-3650.09 1308.19,-3654.07 1311.76,-3656.29"/>
</g>
<!-- Logic/ImageProviders/Mapillary.ts&#45;&gt;Models/Constants.ts -->
<g id="edge131" class="edge">
<title>Logic/ImageProviders/Mapillary.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M791.96,-8787.91C763.83,-8768.65 701.7,-8720.57 683.67,-8661 680.12,-8649.3 680.12,-8452.7 683.67,-8441 692.84,-8410.7 731.68,-8407.9 763.17,-8411.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.16,-8413.15 769.36,-8411.74 763.63,-8408.98 763.16,-8413.15"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M791.83,-8787.92C764.1,-8769.1 703.81,-8722.73 686.33,-8665 684.5,-8658.94 684.5,-8443.06 686.33,-8437 695.18,-8407.78 732.54,-8405.93 763.19,-8409.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.99,-8411.89 769.22,-8410.64 763.57,-8407.73 762.99,-8411.89"/>
</g>
<!-- Logic/ImageProviders/Mapillary.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts -->
<g id="edge134" class="edge">
<title>Logic/ImageProviders/Mapillary.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.18,-8791.74C866.81,-8789.14 906.04,-8790.31 931,-8812 941.42,-8821.05 929.07,-8832.42 939,-8842 943.13,-8845.99 948.09,-8848.99 953.41,-8851.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="952.95,-8853.32 959.31,-8853.42 954.4,-8849.38 952.95,-8853.32"/>
</g>
<!-- Logic/ImageProviders/Mapillary.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts -->
<g id="edge135" class="edge">
<title>Logic/ImageProviders/Mapillary.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.22,-8800.17C864.3,-8802.82 899.96,-8806.96 931,-8812 940.28,-8813.51 950.17,-8815.35 959.59,-8817.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.4,-8819.34 965.7,-8818.47 960.24,-8815.22 959.4,-8819.34"/>
</g>
<!-- Svg.ts -->
<g id="node75" class="node">
<title>Svg.ts</title>
<g id="a_node75"><a xlink:href="Svg.ts" xlink:title="Svg.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-2998C1026.5,-2998 984.5,-2998 984.5,-2998 981.5,-2998 978.5,-2995 978.5,-2992 978.5,-2992 978.5,-2986 978.5,-2986 978.5,-2983 981.5,-2980 984.5,-2980 984.5,-2980 1026.5,-2980 1026.5,-2980 1029.5,-2980 1032.5,-2983 1032.5,-2986 1032.5,-2986 1032.5,-2992 1032.5,-2992 1032.5,-2995 1029.5,-2998 1026.5,-2998"/>
<text text-anchor="middle" x="1005.5" y="-2986.8" font-family="Helvetica,sans-Serif" font-size="9.00">Svg.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/Mapillary.ts&#45;&gt;Svg.ts -->
<g id="edge132" class="edge">
<title>Logic/ImageProviders/Mapillary.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M821.32,-8787.9C848.85,-8769.45 908.42,-8724.61 931,-8669 936.74,-8654.87 938.6,-4292.24 939,-4277 952.78,-3753.56 996.05,-3111.58 1003.42,-3004.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1005.54,-3004.34 1003.86,-2998.21 1001.35,-3004.05 1005.54,-3004.34"/>
</g>
<!-- Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts -->
<g id="edge139" class="edge">
<title>Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M639.68,-8835.63C667.96,-8834.15 701.3,-8832.41 730.61,-8830.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="730.91,-8832.97 736.79,-8830.56 730.69,-8828.77 730.91,-8832.97"/>
</g>
<!-- Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts -->
<g id="edge138" class="edge">
<title>Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M639.59,-8837.82C654.33,-8840.22 669.13,-8845.04 681,-8854 687.99,-8859.27 681.66,-8867.23 689,-8872 734.09,-8901.3 877.63,-8878.57 931,-8872 934.64,-8871.55 935.42,-8870.8 939,-8870 943.61,-8868.97 948.42,-8867.93 953.24,-8866.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="953.89,-8868.93 959.34,-8865.66 953.04,-8864.82 953.89,-8868.93"/>
</g>
<!-- Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Svg.ts -->
<g id="edge136" class="edge">
<title>Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M587.96,-8829.8C611.77,-8812.01 661.79,-8770.26 681,-8721 694.85,-8685.49 678.17,-8071.54 689,-8035 746.12,-7842.31 874.8,-7845.96 931,-7653 938.46,-7627.4 937.91,-3839.64 939,-3813 952.32,-3485.95 993.9,-3087.57 1002.81,-3004.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.93,-3004.54 1003.48,-2998.34 1000.75,-3004.09 1004.93,-3004.54"/>
</g>
<!-- Logic/Web/Wikidata.ts -->
<g id="node76" class="node">
<title>Logic/Web/Wikidata.ts</title>
<g id="a_node76"><a xlink:href="Logic/Web/Wikidata.ts" xlink:title="Wikidata.ts">
<path fill="#ddfeff" stroke="black" d="M1033,-9120C1033,-9120 978,-9120 978,-9120 975,-9120 972,-9117 972,-9114 972,-9114 972,-9108 972,-9108 972,-9105 975,-9102 978,-9102 978,-9102 1033,-9102 1033,-9102 1036,-9102 1039,-9105 1039,-9108 1039,-9108 1039,-9114 1039,-9114 1039,-9117 1036,-9120 1033,-9120"/>
<text text-anchor="middle" x="1005.5" y="-9108.8" font-family="Helvetica,sans-Serif" font-size="9.00">Wikidata.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge137" class="edge">
<title>Logic/ImageProviders/WikidataImageProvider.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M639.66,-8834.33C655.3,-8836.57 670.51,-8842.19 681,-8854 694.03,-8868.66 674.97,-9193.29 689,-9207 708.23,-9225.8 911.07,-9225.05 931,-9207 944.4,-9194.85 927.05,-9139.57 939,-9126 945.83,-9118.24 955.78,-9114.06 965.87,-9111.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="966.26,-9113.97 971.81,-9110.86 965.53,-9109.83 966.26,-9113.97"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Utils.ts -->
<g id="edge142" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.16,-8834.93C895.98,-8833.55 917.03,-8827.58 931,-8812 944.44,-8797 933.57,-8106.39 939,-8087 969.68,-7977.53 1039.25,-7976.59 1069.5,-7867 1076.94,-7840.04 1067.11,-3862.36 1082.5,-3839 1118.21,-3784.82 1170.39,-3826.66 1216.5,-3781 1222.72,-3774.84 1220.02,-3770.52 1224.5,-3763 1249.57,-3720.93 1286.88,-3676.61 1306.09,-3654.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1307.71,-3656.13 1310.12,-3650.24 1304.57,-3653.34 1307.71,-3656.13"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts -->
<g id="edge144" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/ImageProviders/ImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.04,-8834.22C893.26,-8836.43 912.91,-8839.07 931,-8842 939.46,-8843.37 948.43,-8845.03 957.08,-8846.74"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="956.72,-8848.81 963.02,-8847.92 957.54,-8844.69 956.72,-8848.81"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts -->
<g id="edge145" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/ImageProviders/LicenseInfo.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.24,-8827C903.2,-8827 934.78,-8827 959.72,-8827"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-8829.1 965.91,-8827 959.91,-8824.9 959.91,-8829.1"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Svg.ts -->
<g id="edge140" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.24,-8835.01C896.07,-8833.63 917.11,-8827.65 931,-8812 936.23,-8806.11 938.79,-4284.87 939,-4277 952.76,-3753.56 996.04,-3111.58 1003.42,-3004.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1005.54,-3004.34 1003.86,-2998.21 1001.35,-3004.05 1005.54,-3004.34"/>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge141" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.24,-8835C896.06,-8833.62 917.1,-8827.64 931,-8812 945.72,-8795.43 925.16,-5637.32 939,-5620 946.95,-5610.05 960.02,-5605.86 972.41,-5604.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.63,-5606.41 978.41,-5603.77 972.24,-5602.23 972.63,-5606.41"/>
</g>
<!-- Logic/Web/Wikimedia.ts -->
<g id="node78" class="node">
<title>Logic/Web/Wikimedia.ts</title>
<g id="a_node78"><a xlink:href="Logic/Web/Wikimedia.ts" xlink:title="Wikimedia.ts">
<path fill="#ddfeff" stroke="black" d="M1036.5,-9180C1036.5,-9180 974.5,-9180 974.5,-9180 971.5,-9180 968.5,-9177 968.5,-9174 968.5,-9174 968.5,-9168 968.5,-9168 968.5,-9165 971.5,-9162 974.5,-9162 974.5,-9162 1036.5,-9162 1036.5,-9162 1039.5,-9162 1042.5,-9165 1042.5,-9168 1042.5,-9168 1042.5,-9174 1042.5,-9174 1042.5,-9177 1039.5,-9180 1036.5,-9180"/>
<text text-anchor="middle" x="1005.5" y="-9168.8" font-family="Helvetica,sans-Serif" font-size="9.00">Wikimedia.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/Web/Wikimedia.ts -->
<g id="edge143" class="edge">
<title>Logic/ImageProviders/WikimediaImageProvider.ts&#45;&gt;Logic/Web/Wikimedia.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M875.03,-8819.18C895.84,-8820.58 916.92,-8826.52 931,-8842 942.74,-8854.91 927.95,-9142.49 939,-9156 944.88,-9163.19 953.43,-9167.35 962.42,-9169.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="962.07,-9171.76 968.38,-9170.97 962.95,-9167.65 962.07,-9171.76"/>
</g>
<!-- Logic/ImageProviders/ImageProvider.ts&#45;&gt;Utils.ts -->
<g id="edge123" class="edge">
<title>Logic/ImageProviders/ImageProvider.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1051.64,-8853.06C1058.35,-8850.67 1064.64,-8847.15 1069.5,-8842 1092.12,-8818.04 1065.19,-8797.04 1082.5,-8769 1121.53,-8705.76 1183.13,-8735.4 1216.5,-8669 1231.8,-8638.56 1213.49,-3795.24 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/ImageProviders/ImageProvider.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge124" class="edge">
<title>Logic/ImageProviders/ImageProvider.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1051.63,-8860.72C1058.1,-8862.78 1064.32,-8865.75 1069.5,-8870 1121.28,-8912.45 1137.96,-8997.07 1142.76,-9031.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.71,-9032.25 1143.57,-9037.93 1144.88,-9031.71 1140.71,-9032.25"/>
</g>
<!-- Logic/ImageProviders/ImgurUploader.ts -->
<g id="node74" class="node">
<title>Logic/ImageProviders/ImgurUploader.ts</title>
<g id="a_node74"><a xlink:href="Logic/ImageProviders/ImgurUploader.ts" xlink:title="ImgurUploader.ts">
<path fill="#ddfeff" stroke="black" d="M615.5,-8878C615.5,-8878 532.5,-8878 532.5,-8878 529.5,-8878 526.5,-8875 526.5,-8872 526.5,-8872 526.5,-8866 526.5,-8866 526.5,-8863 529.5,-8860 532.5,-8860 532.5,-8860 615.5,-8860 615.5,-8860 618.5,-8860 621.5,-8863 621.5,-8866 621.5,-8866 621.5,-8872 621.5,-8872 621.5,-8875 618.5,-8878 615.5,-8878"/>
<text text-anchor="middle" x="574" y="-8866.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImgurUploader.ts</text>
</a>
</g>
</g>
<!-- Logic/ImageProviders/ImgurUploader.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge129" class="edge">
<title>Logic/ImageProviders/ImgurUploader.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M621.57,-8863.02C642.86,-8863.06 666.52,-8867.53 681,-8884 692.67,-8897.27 676.43,-9507.59 689,-9520 704.05,-9534.86 1055.09,-9521.48 1069.5,-9506 1103.2,-9469.79 1051.05,-9099.18 1082.5,-9061 1085.23,-9057.68 1088.57,-9055.05 1092.27,-9052.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.38,-9054.77 1097.91,-9050.3 1091.59,-9050.97 1093.38,-9054.77"/>
</g>
<!-- Logic/ImageProviders/ImgurUploader.ts&#45;&gt;Logic/ImageProviders/Imgur.ts -->
<g id="edge130" class="edge">
<title>Logic/ImageProviders/ImgurUploader.ts&#45;&gt;Logic/ImageProviders/Imgur.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M621.54,-8866.57C666.52,-8864.22 733.47,-8860.73 772.83,-8858.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="773.02,-8860.77 778.91,-8858.36 772.81,-8856.58 773.02,-8860.77"/>
</g>
<!-- UI/Base/Img.ts -->
<g id="node95" class="node">
<title>UI/Base/Img.ts</title>
<g id="a_node95"><a xlink:href="UI/Base/Img.ts" xlink:title="Img.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-5510C1026.5,-5510 984.5,-5510 984.5,-5510 981.5,-5510 978.5,-5507 978.5,-5504 978.5,-5504 978.5,-5498 978.5,-5498 978.5,-5495 981.5,-5492 984.5,-5492 984.5,-5492 1026.5,-5492 1026.5,-5492 1029.5,-5492 1032.5,-5495 1032.5,-5498 1032.5,-5498 1032.5,-5504 1032.5,-5504 1032.5,-5507 1029.5,-5510 1026.5,-5510"/>
<text text-anchor="middle" x="1005.5" y="-5498.8" font-family="Helvetica,sans-Serif" font-size="9.00">Img.ts</text>
</a>
</g>
</g>
<!-- Svg.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge352" class="edge">
<title>Svg.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1004.8,-2998.25C998.39,-3083.76 949.63,-3745.48 935,-4283 934.55,-4299.65 930.17,-5466.06 935,-5482 939.54,-5496.99 956.13,-5501.94 972.07,-5503.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.28,-5505.15 978.36,-5503.29 972.45,-5500.96 972.28,-5505.15"/>
</g>
<!-- Svg.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge351" class="edge">
<title>Svg.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1019.12,-2998.19C1034.4,-3010.19 1059.35,-3032.77 1069.5,-3059 1091.6,-3116.09 1077.27,-5202 1082.5,-5263 1094.49,-5402.85 1129.88,-5569.34 1141.07,-5619.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.07,-5620.47 1142.42,-5625.87 1143.17,-5619.55 1139.07,-5620.47"/>
</g>
<!-- Logic/Web/Wikidata.ts&#45;&gt;Utils.ts -->
<g id="edge286" class="edge">
<title>Logic/Web/Wikidata.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1039.16,-9110.86C1050.43,-9109.06 1062.08,-9104.89 1069.5,-9096 1104.14,-9054.47 1049.33,-8895.71 1082.5,-8853 1120.78,-8803.7 1179.51,-8861.27 1216.5,-8811 1226.89,-8796.88 1218.84,-3779.59 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Web/Wikidata.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge287" class="edge">
<title>Logic/Web/Wikidata.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1039.12,-9109.32C1049.85,-9107.29 1061.16,-9103.38 1069.5,-9096 1081.93,-9085 1070.01,-9071.92 1082.5,-9061 1085.44,-9058.43 1088.76,-9056.3 1092.29,-9054.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.32,-9056.38 1097.99,-9052.07 1091.65,-9052.53 1093.32,-9056.38"/>
</g>
<!-- UI/Base/Link.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge363" class="edge">
<title>UI/Base/Link.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M978.28,-5605.94C960.27,-5604.85 939.02,-5599.67 933.67,-5582 930.96,-5573.07 930.96,-5254.93 933.67,-5246 937.16,-5234.46 947.56,-5228.53 959.41,-5225.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.84,-5227.71 965.31,-5224.47 959.02,-5223.59 959.84,-5227.71"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M978.14,-5607.09C961.02,-5606.68 941.31,-5602.45 936.33,-5586 933.56,-5576.85 933.56,-5251.15 936.33,-5242 939.48,-5231.61 948.59,-5226.35 959.22,-5223.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.71,-5225.97 965.25,-5222.85 958.97,-5221.83 959.71,-5225.97"/>
</g>
<!-- UI/Base/Link.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge362" class="edge">
<title>UI/Base/Link.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.64,-5599.13C1044,-5596.49 1057.45,-5593.24 1069.5,-5590 1135.36,-5572.32 1152.51,-5569.59 1216.5,-5546 1243.72,-5535.96 1274.04,-5522.25 1294.49,-5512.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1295.47,-5514.47 1299.99,-5510 1293.67,-5510.68 1295.47,-5514.47"/>
</g>
<!-- Logic/Web/Wikimedia.ts&#45;&gt;Utils.ts -->
<g id="edge288" class="edge">
<title>Logic/Web/Wikimedia.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1042.79,-9170.21C1052.88,-9168.12 1062.88,-9163.95 1069.5,-9156 1105.24,-9113.08 1047.23,-8948.31 1082.5,-8905 1121.37,-8857.27 1178.84,-8918.69 1216.5,-8870 1227.35,-8855.97 1218.77,-3779.78 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Osm/Actions/ChangeLocationAction.ts -->
<g id="node79" class="node">
<title>Logic/Osm/Actions/ChangeLocationAction.ts</title>
<g id="a_node79"><a xlink:href="Logic/Osm/Actions/ChangeLocationAction.ts" xlink:title="ChangeLocationAction.ts">
<path fill="#ddfeff" stroke="black" d="M1063.5,-10390C1063.5,-10390 947.5,-10390 947.5,-10390 944.5,-10390 941.5,-10387 941.5,-10384 941.5,-10384 941.5,-10378 941.5,-10378 941.5,-10375 944.5,-10372 947.5,-10372 947.5,-10372 1063.5,-10372 1063.5,-10372 1066.5,-10372 1069.5,-10375 1069.5,-10378 1069.5,-10378 1069.5,-10384 1069.5,-10384 1069.5,-10387 1066.5,-10390 1063.5,-10390"/>
<text text-anchor="middle" x="1005.5" y="-10378.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangeLocationAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="node80" class="node">
<title>Logic/Osm/Actions/OsmChangeAction.ts</title>
<g id="a_node80"><a xlink:href="Logic/Osm/Actions/OsmChangeAction.ts" xlink:title="OsmChangeAction.ts">
<path fill="#ddfeff" stroke="black" d="M1194.5,-10472C1194.5,-10472 1096.5,-10472 1096.5,-10472 1093.5,-10472 1090.5,-10469 1090.5,-10466 1090.5,-10466 1090.5,-10460 1090.5,-10460 1090.5,-10457 1093.5,-10454 1096.5,-10454 1096.5,-10454 1194.5,-10454 1194.5,-10454 1197.5,-10454 1200.5,-10457 1200.5,-10460 1200.5,-10460 1200.5,-10466 1200.5,-10466 1200.5,-10469 1197.5,-10472 1194.5,-10472"/>
<text text-anchor="middle" x="1145.5" y="-10460.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmChangeAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/ChangeLocationAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge150" class="edge">
<title>Logic/Osm/Actions/ChangeLocationAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1061.81,-10390.03C1064.6,-10391.72 1067.19,-10393.7 1069.5,-10396 1086.98,-10413.43 1064.79,-10432.8 1082.5,-10450 1083.39,-10450.86 1084.32,-10451.67 1085.28,-10452.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.24,-10454.26 1090.39,-10455.87 1086.58,-10450.78 1084.24,-10454.26"/>
</g>
<!-- Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="node81" class="node">
<title>Logic/Osm/Actions/ChangeTagAction.ts</title>
<g id="a_node81"><a xlink:href="Logic/Osm/Actions/ChangeTagAction.ts" xlink:title="ChangeTagAction.ts">
<path fill="#ddfeff" stroke="black" d="M1052,-10420C1052,-10420 959,-10420 959,-10420 956,-10420 953,-10417 953,-10414 953,-10414 953,-10408 953,-10408 953,-10405 956,-10402 959,-10402 959,-10402 1052,-10402 1052,-10402 1055,-10402 1058,-10405 1058,-10408 1058,-10408 1058,-10414 1058,-10414 1058,-10417 1055,-10420 1052,-10420"/>
<text text-anchor="middle" x="1005.5" y="-10408.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangeTagAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/ChangeTagAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge151" class="edge">
<title>Logic/Osm/Actions/ChangeTagAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1058.06,-10419.31C1062.14,-10421.13 1066.02,-10423.33 1069.5,-10426 1079.13,-10433.38 1072.77,-10442.75 1082.5,-10450 1083.27,-10450.58 1084.06,-10451.13 1084.87,-10451.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.18,-10453.68 1090.44,-10454.81 1086.26,-10450.02 1084.18,-10453.68"/>
</g>
<!-- Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="node82" class="node">
<title>Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<g id="a_node82"><a xlink:href="Logic/Osm/Actions/CreateNewNodeAction.ts" xlink:title="CreateNewNodeAction.ts">
<path fill="#ddfeff" stroke="black" d="M1063.5,-10450C1063.5,-10450 947.5,-10450 947.5,-10450 944.5,-10450 941.5,-10447 941.5,-10444 941.5,-10444 941.5,-10438 941.5,-10438 941.5,-10435 944.5,-10432 947.5,-10432 947.5,-10432 1063.5,-10432 1063.5,-10432 1066.5,-10432 1069.5,-10435 1069.5,-10438 1069.5,-10438 1069.5,-10444 1069.5,-10444 1069.5,-10447 1066.5,-10450 1063.5,-10450"/>
<text text-anchor="middle" x="1005.5" y="-10438.8" font-family="Helvetica,sans-Serif" font-size="9.00">CreateNewNodeAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge152" class="edge">
<title>Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1065.05,-10450.01C1066.64,-10451.21 1068.13,-10452.53 1069.5,-10454 1098.6,-10485.13 1059.61,-10513.05 1082.5,-10549 1090.37,-10561.37 1103.6,-10570.67 1115.82,-10577.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1115.04,-10579.14 1121.34,-10579.98 1116.94,-10575.39 1115.04,-10579.14"/>
</g>
<!-- Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge154" class="edge">
<title>Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.03,-10450.01C1069.87,-10451.1 1076.87,-10452.22 1083.77,-10453.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1083.81,-10455.45 1090.06,-10454.32 1084.47,-10451.3 1083.81,-10455.45"/>
</g>
<!-- Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge153" class="edge">
<title>Logic/Osm/Actions/CreateNewNodeAction.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.26,-10431.96C1065.57,-10430.26 1067.67,-10428.28 1069.5,-10426 1086.65,-10404.57 1071.3,-9463.06 1082.5,-9438 1091,-9418.98 1109.25,-9403.47 1123.76,-9393.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.08,-9395.1 1128.91,-9390.02 1122.75,-9391.61 1125.08,-9395.1"/>
</g>
<!-- Logic/Tags/And.ts&#45;&gt;Logic/Tags/TagsFilter.ts -->
<g id="edge260" class="edge">
<title>Logic/Tags/And.ts&#45;&gt;Logic/Tags/TagsFilter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1172.62,-9382.67C1200.9,-9384.48 1246.34,-9387.38 1278.99,-9389.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1279.22,-9391.59 1285.34,-9389.88 1279.48,-9387.4 1279.22,-9391.59"/>
</g>
<!-- Logic/Osm/Actions/CreateNewWayAction.ts -->
<g id="node84" class="node">
<title>Logic/Osm/Actions/CreateNewWayAction.ts</title>
<g id="a_node84"><a xlink:href="Logic/Osm/Actions/CreateNewWayAction.ts" xlink:title="CreateNewWayAction.ts">
<path fill="#ddfeff" stroke="black" d="M861.5,-10520C861.5,-10520 750.5,-10520 750.5,-10520 747.5,-10520 744.5,-10517 744.5,-10514 744.5,-10514 744.5,-10508 744.5,-10508 744.5,-10505 747.5,-10502 750.5,-10502 750.5,-10502 861.5,-10502 861.5,-10502 864.5,-10502 867.5,-10505 867.5,-10508 867.5,-10508 867.5,-10514 867.5,-10514 867.5,-10517 864.5,-10520 861.5,-10520"/>
<text text-anchor="middle" x="806" y="-10508.8" font-family="Helvetica,sans-Serif" font-size="9.00">CreateNewWayAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge157" class="edge">
<title>Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M867.71,-10514.06C940.07,-10517.17 1053.32,-10520.11 1069.5,-10509 1082.5,-10500.08 1070.45,-10486.17 1082.5,-10476 1083.26,-10475.36 1084.05,-10474.74 1084.85,-10474.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1086.46,-10475.63 1090.46,-10470.68 1084.25,-10472.06 1086.46,-10475.63"/>
</g>
<!-- Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge156" class="edge">
<title>Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M832.42,-10501.99C868.31,-10489.27 933.83,-10466.05 972.84,-10452.22"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.92,-10454.07 978.87,-10450.08 972.51,-10450.11 973.92,-10454.07"/>
</g>
<!-- Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge155" class="edge">
<title>Logic/Osm/Actions/CreateNewWayAction.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M816.18,-10520.21C839.37,-10544.02 900.61,-10610.5 931,-10678 938.09,-10693.74 925.6,-10705.13 939,-10716 984.04,-10752.54 1028.28,-10756.8 1069.5,-10716 1094.73,-10691.02 1068.06,-9470.43 1082.5,-9438 1090.97,-9418.96 1109.22,-9403.46 1123.74,-9393.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.07,-9395.09 1128.9,-9390.02 1122.74,-9391.6 1125.07,-9395.09"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts -->
<g id="node85" class="node">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts</title>
<g id="a_node85"><a xlink:href="Logic/Osm/Actions/CreateWayWithPointReuseAction.ts" xlink:title="CreateWayWithPointReuseAction.ts">
<path fill="#ddfeff" stroke="black" d="M655,-10498C655,-10498 493,-10498 493,-10498 490,-10498 487,-10495 487,-10492 487,-10492 487,-10486 487,-10486 487,-10483 490,-10480 493,-10480 493,-10480 655,-10480 655,-10480 658,-10480 661,-10483 661,-10486 661,-10486 661,-10492 661,-10492 661,-10495 658,-10498 655,-10498"/>
<text text-anchor="middle" x="574" y="-10486.8" font-family="Helvetica,sans-Serif" font-size="9.00">CreateWayWithPointReuseAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge160" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M661.08,-10488.52C668.57,-10491.57 675.42,-10495.92 681,-10502 697.17,-10519.61 674.06,-10698.34 689,-10717 760.81,-10806.72 825.04,-10768.21 939,-10783 996.52,-10790.46 1021.66,-10815.79 1069.5,-10783 1130.34,-10741.29 1141.84,-10642.61 1144,-10604.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.12,-10604.14 1144.31,-10598.05 1141.92,-10603.94 1146.12,-10604.14"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge158" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M661.06,-10488.53C668.56,-10491.58 675.41,-10495.93 681,-10502 695.92,-10518.19 673.12,-10684.75 689,-10700 727.79,-10737.25 890.13,-10734.96 931,-10700 948.44,-10685.09 923.71,-10666.11 939,-10649 947.36,-10639.64 960.1,-10634.95 972.12,-10632.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.72,-10634.7 978.31,-10631.68 972.06,-10630.55 972.72,-10634.7"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge159" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M587.24,-10479.85C610.76,-10461.41 661.66,-10417.15 681,-10366 687.78,-10348.07 676.26,-9690.32 689,-9676 701.73,-9661.69 720.83,-9655.88 739.88,-9654.27"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.46,-9656.33 746.32,-9653.87 740.21,-9652.14 740.46,-9656.33"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge163" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M661.01,-10490.7C797.69,-10493.17 1051.03,-10496.65 1069.5,-10489 1077.05,-10485.87 1075.31,-10479.89 1082.5,-10476 1083.43,-10475.5 1084.38,-10475.01 1085.34,-10474.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1086.34,-10476.4 1091.01,-10472.08 1084.67,-10472.55 1086.34,-10476.4"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge161" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M655.53,-10480C736.1,-10471 858.73,-10457.29 935.11,-10448.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="935.71,-10450.8 941.44,-10448.05 935.25,-10446.63 935.71,-10450.8"/>
</g>
<!-- Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewWayAction.ts -->
<g id="edge162" class="edge">
<title>Logic/Osm/Actions/CreateWayWithPointReuseAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewWayAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M661.3,-10497.25C686.8,-10499.69 714.31,-10502.33 738.37,-10504.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="738.23,-10506.72 744.4,-10505.2 738.63,-10502.54 738.23,-10506.72"/>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts -->
<g id="node86" class="node">
<title>Logic/Osm/Actions/DeleteAction.ts</title>
<g id="a_node86"><a xlink:href="Logic/Osm/Actions/DeleteAction.ts" xlink:title="DeleteAction.ts">
<path fill="#ddfeff" stroke="black" d="M842,-10360C842,-10360 770,-10360 770,-10360 767,-10360 764,-10357 764,-10354 764,-10354 764,-10348 764,-10348 764,-10345 767,-10342 770,-10342 770,-10342 842,-10342 842,-10342 845,-10342 848,-10345 848,-10348 848,-10348 848,-10354 848,-10354 848,-10357 845,-10360 842,-10360"/>
<text text-anchor="middle" x="806" y="-10348.8" font-family="Helvetica,sans-Serif" font-size="9.00">DeleteAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge167" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.27,-10357.51C874.78,-10359.31 908.36,-10356.82 931,-10338 940.62,-10330 928.97,-10318.49 939,-10311 963.59,-10292.64 1047.91,-10298.95 1100.59,-10305.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.65,-10307.19 1106.85,-10305.81 1101.14,-10303.02 1100.65,-10307.19"/>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;State.ts -->
<g id="edge164" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.1,-10359.31C875.78,-10362.27 910.78,-10360.43 931,-10338 939.56,-10328.5 937.17,-2986.65 939,-2974 949.92,-2898.38 980.52,-2812.63 995.71,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.55,-2766.49 1000.79,-2760.14 996.64,-2764.96 1000.55,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.63" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge169" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.18,-10343.95C875.52,-10341.81 910.1,-10344.43 931,-10366 944.97,-10380.42 924.42,-10442.19 939,-10456 949.39,-10465.84 1027.44,-10466.1 1084.28,-10464.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.46,-10467.01 1090.41,-10464.78 1084.36,-10462.82 1084.46,-10467.01"/>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge168" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.23,-10345.06C874.89,-10343.61 908.66,-10346.59 931,-10366 941.42,-10375.05 929.07,-10386.42 939,-10396 941.47,-10398.38 944.23,-10400.41 947.19,-10402.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.4,-10404.1 952.7,-10404.94 948.3,-10400.35 946.4,-10404.1"/>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge165" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.03,-10343.58C875.66,-10341.17 910.66,-10343.61 931,-10366 943.11,-10379.33 926.11,-10677.43 939,-10690 949.38,-10700.13 1059.19,-10700.2 1069.5,-10690 1094.22,-10665.54 1068.35,-9469.77 1082.5,-9438 1090.97,-9418.97 1109.23,-9403.46 1123.74,-9393.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.07,-9395.09 1128.9,-9390.02 1122.74,-9391.6 1125.07,-9395.09"/>
</g>
<!-- Logic/Tags/Tag.ts -->
<g id="node87" class="node">
<title>Logic/Tags/Tag.ts</title>
<g id="a_node87"><a xlink:href="Logic/Tags/Tag.ts" xlink:title="Tag.ts">
<path fill="#ddfeff" stroke="black" d="M1026.5,-9360C1026.5,-9360 984.5,-9360 984.5,-9360 981.5,-9360 978.5,-9357 978.5,-9354 978.5,-9354 978.5,-9348 978.5,-9348 978.5,-9345 981.5,-9342 984.5,-9342 984.5,-9342 1026.5,-9342 1026.5,-9342 1029.5,-9342 1032.5,-9345 1032.5,-9348 1032.5,-9348 1032.5,-9354 1032.5,-9354 1032.5,-9357 1029.5,-9360 1026.5,-9360"/>
<text text-anchor="middle" x="1005.5" y="-9348.8" font-family="Helvetica,sans-Serif" font-size="9.00">Tag.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge166" class="edge">
<title>Logic/Osm/Actions/DeleteAction.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.05,-10359.26C875.7,-10362.21 910.7,-10360.35 931,-10338 949.15,-10318.01 922.09,-9387.05 939,-9366 946.98,-9356.08 960.06,-9351.89 972.44,-9350.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.66,-9352.44 978.44,-9349.79 972.27,-9348.25 972.66,-9352.44"/>
</g>
<!-- Logic/Tags/Tag.ts&#45;&gt;Utils.ts -->
<g id="edge264" class="edge">
<title>Logic/Tags/Tag.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.68,-9348.71C1045.93,-9346.09 1060.98,-9340.57 1069.5,-9329 1094.03,-9295.7 1056.43,-8989.1 1082.5,-8957 1121.17,-8909.39 1178.63,-8972.25 1216.5,-8924 1227.56,-8909.9 1218.71,-3779.96 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Tags/Tag.ts&#45;&gt;Logic/Tags/TagsFilter.ts -->
<g id="edge266" class="edge">
<title>Logic/Tags/Tag.ts&#45;&gt;Logic/Tags/TagsFilter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.51,-9351.9C1044.91,-9353.56 1059.25,-9357.4 1069.5,-9366 1080.63,-9375.34 1070.35,-9388.02 1082.5,-9396 1145.08,-9437.08 1238.53,-9417.49 1286.92,-9402.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1287.76,-9404.84 1292.87,-9401.07 1286.52,-9400.83 1287.76,-9404.84"/>
</g>
<!-- Logic/Tags/RegexTag.ts -->
<g id="node115" class="node">
<title>Logic/Tags/RegexTag.ts</title>
<g id="a_node115"><a xlink:href="Logic/Tags/RegexTag.ts" xlink:title="RegexTag.ts">
<path fill="#ddfeff" stroke="black" d="M1175,-9360C1175,-9360 1116,-9360 1116,-9360 1113,-9360 1110,-9357 1110,-9354 1110,-9354 1110,-9348 1110,-9348 1110,-9345 1113,-9342 1116,-9342 1116,-9342 1175,-9342 1175,-9342 1178,-9342 1181,-9345 1181,-9348 1181,-9348 1181,-9354 1181,-9354 1181,-9357 1178,-9360 1175,-9360"/>
<text text-anchor="middle" x="1145.5" y="-9348.8" font-family="Helvetica,sans-Serif" font-size="9.00">RegexTag.ts</text>
</a>
</g>
</g>
<!-- Logic/Tags/Tag.ts&#45;&gt;Logic/Tags/RegexTag.ts -->
<g id="edge265" class="edge">
<title>Logic/Tags/Tag.ts&#45;&gt;Logic/Tags/RegexTag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.78,-9347.38C1050.66,-9346.52 1074.84,-9346.29 1096.14,-9346.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1103.91,-9348.99 1109.96,-9347.04 1104.02,-9344.79 1103.91,-9348.99"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1103.96,-9346.89 1100.96,-9346.81 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1098.56" cy="-9346.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/Actions/RelationSplitHandler.ts -->
<g id="node88" class="node">
<title>Logic/Osm/Actions/RelationSplitHandler.ts</title>
<g id="a_node88"><a xlink:href="Logic/Osm/Actions/RelationSplitHandler.ts" xlink:title="RelationSplitHandler.ts">
<path fill="#ddfeff" stroke="black" d="M1058.5,-10360C1058.5,-10360 952.5,-10360 952.5,-10360 949.5,-10360 946.5,-10357 946.5,-10354 946.5,-10354 946.5,-10348 946.5,-10348 946.5,-10345 949.5,-10342 952.5,-10342 952.5,-10342 1058.5,-10342 1058.5,-10342 1061.5,-10342 1064.5,-10345 1064.5,-10348 1064.5,-10348 1064.5,-10354 1064.5,-10354 1064.5,-10357 1061.5,-10360 1058.5,-10360"/>
<text text-anchor="middle" x="1005.5" y="-10348.8" font-family="Helvetica,sans-Serif" font-size="9.00">RelationSplitHandler.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/RelationSplitHandler.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge170" class="edge">
<title>Logic/Osm/Actions/RelationSplitHandler.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1057.07,-10341.93C1061.32,-10340.76 1065.51,-10339.45 1069.5,-10338 1075.67,-10335.76 1076.46,-10333.57 1082.5,-10331 1090.13,-10327.75 1098.47,-10324.72 1106.49,-10322.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1107.49,-10323.93 1112.55,-10320.08 1106.2,-10319.94 1107.49,-10323.93"/>
</g>
<!-- Logic/Osm/Actions/RelationSplitHandler.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge171" class="edge">
<title>Logic/Osm/Actions/RelationSplitHandler.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1062.6,-10360.18C1065.12,-10361.84 1067.44,-10363.77 1069.5,-10366 1095.12,-10393.76 1056.51,-10422.59 1082.5,-10450 1083.38,-10450.93 1084.31,-10451.8 1085.28,-10452.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.33,-10454.52 1090.44,-10456.26 1086.75,-10451.08 1084.33,-10454.52"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts -->
<g id="node89" class="node">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts</title>
<g id="a_node89"><a xlink:href="Logic/Osm/Actions/ReplaceGeometryAction.ts" xlink:title="ReplaceGeometryAction.ts">
<path fill="#ddfeff" stroke="black" d="M867.5,-10420C867.5,-10420 744.5,-10420 744.5,-10420 741.5,-10420 738.5,-10417 738.5,-10414 738.5,-10414 738.5,-10408 738.5,-10408 738.5,-10405 741.5,-10402 744.5,-10402 744.5,-10402 867.5,-10402 867.5,-10402 870.5,-10402 873.5,-10405 873.5,-10408 873.5,-10408 873.5,-10414 873.5,-10414 873.5,-10417 870.5,-10420 867.5,-10420"/>
<text text-anchor="middle" x="806" y="-10408.8" font-family="Helvetica,sans-Serif" font-size="9.00">ReplaceGeometryAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Utils.ts -->
<g id="edge172" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.61,-10419.09C894.95,-10417.91 916.73,-10412.04 931,-10396 949.44,-10375.28 921.52,-8420.54 939,-8399 976.38,-8352.94 1032.14,-8417.08 1069.5,-8371 1087.41,-8348.92 1070.13,-4302.6 1082.5,-4277 1115.65,-4208.38 1182.78,-4238.35 1216.5,-4170 1236.51,-4129.44 1209.5,-3805.67 1224.5,-3763 1240.64,-3717.08 1281.36,-3674.77 1303.54,-3654.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.97,-3655.7 1307.98,-3650.1 1302.13,-3652.6 1304.97,-3655.7"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge176" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.77,-10417.94C894.61,-10416.52 916.04,-10410.78 931,-10396 950.14,-10377.09 919.73,-10354.78 939,-10336 959.89,-10315.64 1040.57,-10325.67 1069.5,-10322 1079.65,-10320.71 1090.55,-10319.19 1100.81,-10317.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1101.14,-10319.77 1106.77,-10316.83 1100.53,-10315.62 1101.14,-10319.77"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge174" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M832.09,-10420.06C861.69,-10432.24 909.58,-10457 931,-10496 943.36,-10518.51 920.53,-10709.16 939,-10727 980.72,-10767.3 1019.65,-10756.64 1069.5,-10727 1115.04,-10699.92 1134.66,-10634.45 1141.47,-10604.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1143.58,-10604.61 1142.8,-10598.3 1139.48,-10603.72 1143.58,-10604.61"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge173" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M753.09,-10420.01C724.35,-10421.57 693.06,-10416.63 685,-10390 682.15,-10380.59 682.15,-9691.41 685,-9682 692.5,-9657.24 720.06,-9651.23 746.99,-9651.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="747.01,-9653.87 753.09,-9651.99 747.17,-9649.67 747.01,-9653.87"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge179" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M819.26,-10420.19C841.63,-10436.31 891.17,-10469.1 939,-10481 995.28,-10495 1012.47,-10491.59 1069.5,-10481 1075.59,-10479.87 1076.56,-10477.75 1082.5,-10476 1085.38,-10475.15 1088.35,-10474.33 1091.36,-10473.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1092.27,-10475.49 1097.58,-10472 1091.25,-10471.42 1092.27,-10475.49"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge177" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.59,-10411C897.34,-10411 923.87,-10411 946.8,-10411"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.86,-10413.1 952.86,-10411 946.86,-10408.9 946.86,-10413.1"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge178" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M866.26,-10420C889.1,-10423.47 915.32,-10427.45 938.74,-10431.01"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="938.7,-10433.13 944.94,-10431.95 939.33,-10428.98 938.7,-10433.13"/>
</g>
<!-- Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge175" class="edge">
<title>Logic/Osm/Actions/ReplaceGeometryAction.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M832.05,-10420.08C861.62,-10432.28 909.48,-10457.05 931,-10496 941.81,-10515.56 922.88,-10681.51 939,-10697 980.82,-10737.19 1028.28,-10737.8 1069.5,-10697 1094.36,-10672.4 1068.28,-9469.95 1082.5,-9438 1090.97,-9418.97 1109.22,-9403.46 1123.74,-9393.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.07,-9395.09 1128.9,-9390.02 1122.74,-9391.6 1125.07,-9395.09"/>
</g>
<!-- Logic/Osm/Actions/SplitAction.ts -->
<g id="node90" class="node">
<title>Logic/Osm/Actions/SplitAction.ts</title>
<g id="a_node90"><a xlink:href="Logic/Osm/Actions/SplitAction.ts" xlink:title="SplitAction.ts">
<path fill="#ddfeff" stroke="black" d="M838,-10390C838,-10390 774,-10390 774,-10390 771,-10390 768,-10387 768,-10384 768,-10384 768,-10378 768,-10378 768,-10375 771,-10372 774,-10372 774,-10372 838,-10372 838,-10372 841,-10372 844,-10375 844,-10378 844,-10378 844,-10384 844,-10384 844,-10387 841,-10390 838,-10390"/>
<text text-anchor="middle" x="806" y="-10378.8" font-family="Helvetica,sans-Serif" font-size="9.00">SplitAction.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge181" class="edge">
<title>Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.02,-10387.09C871.51,-10389.37 908.06,-10387.34 931,-10366 944.59,-10353.36 925.08,-10337.28 939,-10325 950.84,-10314.56 1044.1,-10311.86 1100.84,-10311.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.92,-10313.29 1106.89,-10311.13 1100.87,-10309.09 1100.92,-10313.29"/>
</g>
<!-- Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge180" class="edge">
<title>Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.2,-10373.96C872.35,-10371 909.69,-10372.59 931,-10396 942.33,-10408.45 926.94,-10687.25 939,-10699 959.77,-10719.23 1043.86,-10712.55 1069.5,-10699 1107.93,-10678.69 1130.37,-10628.86 1139.58,-10603.84"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1141.61,-10604.4 1141.63,-10598.04 1137.65,-10603 1141.61,-10604.4"/>
</g>
<!-- Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts -->
<g id="edge182" class="edge">
<title>Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/Actions/OsmChangeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.23,-10374.42C872.02,-10371.83 908.86,-10373.68 931,-10396 942.18,-10407.27 927.16,-10456.42 939,-10467 959.75,-10485.55 1031.51,-10480.01 1084.42,-10472.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.79,-10474.91 1090.44,-10472.01 1084.21,-10470.75 1084.79,-10474.91"/>
</g>
<!-- Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/Actions/RelationSplitHandler.ts -->
<g id="edge183" class="edge">
<title>Logic/Osm/Actions/SplitAction.ts&#45;&gt;Logic/Osm/Actions/RelationSplitHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.01,-10377.32C868.71,-10374.66 901.89,-10370.72 931,-10366 939.46,-10364.63 948.43,-10362.97 957.08,-10361.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="957.54,-10363.31 963.02,-10360.08 956.72,-10359.19 957.54,-10363.31"/>
</g>
<!-- Logic/Osm/Changes.ts -->
<g id="node91" class="node">
<title>Logic/Osm/Changes.ts</title>
<g id="a_node91"><a xlink:href="Logic/Osm/Changes.ts" xlink:title="Changes.ts">
<path fill="#ddfeff" stroke="black" d="M833.5,-10270C833.5,-10270 778.5,-10270 778.5,-10270 775.5,-10270 772.5,-10267 772.5,-10264 772.5,-10264 772.5,-10258 772.5,-10258 772.5,-10255 775.5,-10252 778.5,-10252 778.5,-10252 833.5,-10252 833.5,-10252 836.5,-10252 839.5,-10255 839.5,-10258 839.5,-10258 839.5,-10264 839.5,-10264 839.5,-10267 836.5,-10270 833.5,-10270"/>
<text text-anchor="middle" x="806" y="-10258.8" font-family="Helvetica,sans-Serif" font-size="9.00">Changes.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Utils.ts -->
<g id="edge186" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.34,-10251.77C852.9,-10235.46 908.86,-10198.52 931,-10149 941.04,-10126.53 923.77,-8396.33 939,-8377 975.96,-8330.1 1032.57,-8391.93 1069.5,-8345 1087.18,-8322.54 1071.67,-4255.45 1082.5,-4229 1114.78,-4150.18 1183.39,-4170.47 1216.5,-4092 1230.72,-4058.31 1212.29,-3797.47 1224.5,-3763 1240.75,-3717.12 1281.43,-3674.79 1303.57,-3654.17"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305,-3655.71 1308,-3650.11 1302.16,-3652.62 1305,-3655.71"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge189" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.68,-10264.84C866.17,-10266.34 903.49,-10264.63 931,-10248 936.49,-10244.68 933.74,-10239.66 939,-10236 987.93,-10201.95 1032.27,-10251.56 1069.5,-10205 1089.35,-10180.18 1062.52,-9085.71 1082.5,-9061 1085.2,-9057.66 1088.52,-9055.01 1092.2,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.31,-9054.71 1097.83,-9050.24 1091.51,-9050.92 1093.31,-9054.71"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/SimpleMetaTagger.ts -->
<g id="edge188" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/SimpleMetaTagger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.33,-10251.76C852.86,-10235.44 908.79,-10198.49 931,-10149 943.37,-10121.43 925.5,-9088.04 939,-9061 946.17,-9046.64 959.63,-9035.27 972.49,-9027.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="980.29,-9024.91 984.41,-9020.07 978.17,-9021.28 980.29,-9024.91"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="979.23,-9023.09 976.64,-9024.6 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="974.56" cy="-9025.81" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Models/Constants.ts -->
<g id="edge184" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M772.42,-10268.14C739.8,-10272.95 693.75,-10273.31 683.67,-10240 681.86,-10234.02 681.86,-8446.98 683.67,-8441 692.84,-8410.7 731.68,-8407.9 763.17,-8411.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.16,-8413.15 769.36,-8411.74 763.63,-8408.98 763.16,-8413.15"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M772.24,-10269.18C740.38,-10274.74 696.06,-10276.13 686.33,-10244 684.52,-10237.99 684.52,-8443.01 686.33,-8437 695.18,-8407.78 732.54,-8405.93 763.19,-8409.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.99,-8411.89 769.22,-8410.64 763.57,-8407.73 762.99,-8411.89"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge192" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.65,-10262.48C905.37,-10265.64 1049.12,-10273.54 1069.5,-10283 1076.91,-10286.44 1075.37,-10292 1082.5,-10296 1088.19,-10299.2 1094.55,-10301.71 1100.97,-10303.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.51,-10305.75 1106.86,-10305.38 1101.66,-10301.71 1100.51,-10305.75"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge187" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.62,-10269.47C869.19,-10279.05 911.1,-10297.82 931,-10331 940.72,-10347.2 925.48,-10657.8 939,-10671 980.49,-10711.53 1016.42,-10694.38 1069.5,-10671 1100.7,-10657.25 1124.56,-10623.41 1136.35,-10603.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1138.41,-10604.41 1139.62,-10598.17 1134.78,-10602.29 1138.41,-10604.41"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;State.ts -->
<g id="edge185" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.36,-10251.78C852.95,-10235.48 908.95,-10198.56 931,-10149 941.13,-10126.24 935.44,-2998.66 939,-2974 949.92,-2898.38 980.52,-2812.63 995.71,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.55,-2766.49 1000.79,-2760.14 996.64,-2764.96 1000.55,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.63" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge191" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.73,-10269.93C868.95,-10279.77 910.24,-10298.65 931,-10331 942.44,-10348.83 925.11,-10410 939,-10426 939.62,-10426.72 940.27,-10427.4 940.94,-10428.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="939.74,-10429.79 945.7,-10431.98 942.41,-10426.54 939.74,-10429.79"/>
</g>
<!-- Logic/Osm/Changes.ts&#45;&gt;Logic/Web/LocalStorageSource.ts -->
<g id="edge190" class="edge">
<title>Logic/Osm/Changes.ts&#45;&gt;Logic/Web/LocalStorageSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.32,-10251.76C852.84,-10235.43 908.75,-10198.47 931,-10149 940.95,-10126.88 923.8,-9294.9 939,-9276 939.85,-9274.94 940.76,-9273.95 941.72,-9273.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="943.53,-9274.26 946.9,-9268.86 940.91,-9270.98 943.53,-9274.26"/>
</g>
<!-- Logic/Web/LocalStorageSource.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge281" class="edge">
<title>Logic/Web/LocalStorageSource.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.1,-9251.83C1065.45,-9250.16 1067.61,-9248.23 1069.5,-9246 1096.16,-9214.57 1055.65,-9092.27 1082.5,-9061 1085.25,-9057.79 1088.57,-9055.23 1092.22,-9053.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.25,-9055.03 1097.78,-9050.58 1091.46,-9051.24 1093.25,-9055.03"/>
</g>
<!-- Logic/Osm/ChangesetHandler.ts -->
<g id="node93" class="node">
<title>Logic/Osm/ChangesetHandler.ts</title>
<g id="a_node93"><a xlink:href="Logic/Osm/ChangesetHandler.ts" xlink:title="ChangesetHandler.ts">
<path fill="#ddfeff" stroke="black" d="M1194.5,-10260C1194.5,-10260 1096.5,-10260 1096.5,-10260 1093.5,-10260 1090.5,-10257 1090.5,-10254 1090.5,-10254 1090.5,-10248 1090.5,-10248 1090.5,-10245 1093.5,-10242 1096.5,-10242 1096.5,-10242 1194.5,-10242 1194.5,-10242 1197.5,-10242 1200.5,-10245 1200.5,-10248 1200.5,-10248 1200.5,-10254 1200.5,-10254 1200.5,-10257 1197.5,-10260 1194.5,-10260"/>
<text text-anchor="middle" x="1145.5" y="-10248.8" font-family="Helvetica,sans-Serif" font-size="9.00">ChangesetHandler.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/ChangesetHandler.ts&#45;&gt;Utils.ts -->
<g id="edge196" class="edge">
<title>Logic/Osm/ChangesetHandler.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1147.64,-10241.99C1155.53,-10179.22 1202.05,-9800.72 1216.5,-9491 1217.43,-9471.13 1218.08,-3781.82 1224.5,-3763 1240.22,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Osm/ChangesetHandler.ts&#45;&gt;Models/Constants.ts -->
<g id="edge193" class="edge">
<title>Logic/Osm/ChangesetHandler.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1143.51,-10241.98C1136.7,-10179.18 1096.46,-9800.46 1082.5,-9491 1081.57,-9470.44 1084.12,-8023.49 1069.5,-8009 1028.31,-7968.17 981.09,-7969.09 939,-8009 926.89,-8020.48 935.12,-8142.83 931,-8159 905.61,-8258.78 840.86,-8366.22 816.48,-8404.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="814.66,-8403.42 813.19,-8409.61 818.19,-8405.69 814.66,-8403.42"/>
</g>
<!-- Logic/Osm/ChangesetHandler.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge195" class="edge">
<title>Logic/Osm/ChangesetHandler.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1147.64,-10241.99C1155.52,-10179.22 1201.97,-9800.72 1216.5,-9491 1217.19,-9476.25 1214.79,-5249.13 1224.5,-5238 1239.19,-5221.17 1264.7,-5218.52 1285.44,-5219.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1285.28,-5221.85 1291.42,-5220.22 1285.6,-5217.66 1285.28,-5221.85"/>
</g>
<!-- Logic/Osm/ChangesetHandler.ts&#45;&gt;State.ts -->
<g id="edge194" class="edge">
<title>Logic/Osm/ChangesetHandler.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1143.49,-10241.98C1136.52,-10179.18 1095.41,-9800.51 1082.5,-9491 1078.71,-9400.25 1083.39,-3040.76 1069.5,-2951 1059.22,-2884.58 1031,-2809.94 1016.06,-2773.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1014.82,-2765.06 1010.57,-2760.33 1010.94,-2766.68 1014.82,-2765.06"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1012.88,-2765.87 1014.04,-2768.63 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1014.96" cy="-2770.85" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/OsmConnection.ts -->
<g id="node94" class="node">
<title>Logic/Osm/OsmConnection.ts</title>
<g id="a_node94"><a xlink:href="Logic/Osm/OsmConnection.ts" xlink:title="OsmConnection.ts">
<path fill="#ddfeff" stroke="black" d="M1049,-10260C1049,-10260 962,-10260 962,-10260 959,-10260 956,-10257 956,-10254 956,-10254 956,-10248 956,-10248 956,-10245 959,-10242 962,-10242 962,-10242 1049,-10242 1049,-10242 1052,-10242 1055,-10245 1055,-10248 1055,-10248 1055,-10254 1055,-10254 1055,-10257 1052,-10260 1049,-10260"/>
<text text-anchor="middle" x="1005.5" y="-10248.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmConnection.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Utils.ts -->
<g id="edge199" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1007.45,-10241.98C1013.99,-10179.16 1052.77,-9800.36 1069.5,-9491 1070.27,-9476.77 1073.37,-8988.95 1082.5,-8978 1121.47,-8931.27 1178.09,-8997.19 1216.5,-8950 1227.87,-8936.03 1218.68,-3780.04 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge200" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1055.11,-10248.18C1060.64,-10245.92 1065.67,-10242.65 1069.5,-10238 1090.29,-10212.77 1061.94,-9086.43 1082.5,-9061 1085.2,-9057.66 1088.52,-9055.01 1092.2,-9052.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.31,-9054.71 1097.83,-9050.24 1091.51,-9050.92 1093.31,-9054.71"/>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge202" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1054.78,-10260.09C1060.1,-10262.42 1065.15,-10265.34 1069.5,-10269 1079.68,-10277.58 1072.14,-10287.63 1082.5,-10296 1087.84,-10300.32 1094.23,-10303.42 1100.85,-10305.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.62,-10307.77 1106.97,-10307.46 1101.81,-10303.74 1100.62,-10307.77"/>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Svg.ts -->
<g id="edge197" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M955.96,-10246.74C946.21,-10243.11 938.03,-10237.02 935,-10227 929.02,-10207.25 934.44,-4303.63 935,-4283 949.32,-3757.03 996.31,-3112.14 1004.33,-3004.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1006.45,-3004.39 1004.8,-2998.25 1002.26,-3004.08 1006.45,-3004.39"/>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/ChangesetHandler.ts -->
<g id="edge201" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/ChangesetHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1055.15,-10251C1061.97,-10251 1069.08,-10251 1076.17,-10251"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.17,-10253.1 1090.17,-10251 1084.17,-10248.9 1084.17,-10253.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1084.17,-10251 1081.17,-10251 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1078.77" cy="-10251" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge198" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M955.79,-10245.86C945.53,-10241.97 936.86,-10235.54 933.67,-10225 931.31,-10217.21 931.31,-5545.79 933.67,-5538 938.74,-5521.26 955.91,-5512.05 972.19,-5507"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.92,-5508.98 978.12,-5505.33 971.78,-5504.94 972.92,-5508.98"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M955.81,-10247.53C946.72,-10244.12 939.18,-10238.41 936.33,-10229 933.97,-10221.2 933.97,-5541.8 936.33,-5534 941.03,-5518.49 956.92,-5510.26 972.29,-5505.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.05,-5507.88 978.35,-5504.37 972.02,-5503.81 973.05,-5507.88"/>
</g>
<!-- Logic/Osm/OsmPreferences.ts -->
<g id="node96" class="node">
<title>Logic/Osm/OsmPreferences.ts</title>
<g id="a_node96"><a xlink:href="Logic/Osm/OsmPreferences.ts" xlink:title="OsmPreferences.ts">
<path fill="#ddfeff" stroke="black" d="M1190,-10290C1190,-10290 1101,-10290 1101,-10290 1098,-10290 1095,-10287 1095,-10284 1095,-10284 1095,-10278 1095,-10278 1095,-10275 1098,-10272 1101,-10272 1101,-10272 1190,-10272 1190,-10272 1193,-10272 1196,-10275 1196,-10278 1196,-10278 1196,-10284 1196,-10284 1196,-10287 1193,-10290 1190,-10290"/>
<text text-anchor="middle" x="1145.5" y="-10278.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmPreferences.ts</text>
</a>
</g>
</g>
<!-- Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/OsmPreferences.ts -->
<g id="edge203" class="edge">
<title>Logic/Osm/OsmConnection.ts&#45;&gt;Logic/Osm/OsmPreferences.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1047.9,-10260C1063.18,-10263.32 1080.62,-10267.11 1096.44,-10270.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1096.34,-10272.68 1102.65,-10271.9 1097.23,-10268.57 1096.34,-10272.68"/>
</g>
<!-- UI/Base/Img.ts&#45;&gt;Utils.ts -->
<g id="edge359" class="edge">
<title>UI/Base/Img.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.77,-5502.7C1045.88,-5502.01 1060.76,-5498.6 1069.5,-5488 1089.43,-5463.82 1062.34,-4383.99 1082.5,-4360 1121.48,-4313.62 1177.46,-4381.33 1216.5,-4335 1226.74,-4322.85 1219.27,-3778.01 1224.5,-3763 1240.51,-3717.03 1281.29,-3674.75 1303.51,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.94,-3655.69 1307.95,-3650.09 1302.11,-3652.59 1304.94,-3655.69"/>
</g>
<!-- UI/Base/Img.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge360" class="edge">
<title>UI/Base/Img.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.56,-5501C1083.5,-5501 1197.17,-5501 1264.84,-5501"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1265.25,-5503.1 1271.25,-5501 1265.24,-5498.9 1265.25,-5503.1"/>
</g>
<!-- Logic/Osm/OsmPreferences.ts&#45;&gt;Utils.ts -->
<g id="edge207" class="edge">
<title>Logic/Osm/OsmPreferences.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1196.06,-10279.13C1203.97,-10276.58 1211.26,-10272.47 1216.5,-10266 1230.71,-10248.45 1217.21,-3784.37 1224.5,-3763 1240.22,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Osm/OsmPreferences.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge208" class="edge">
<title>Logic/Osm/OsmPreferences.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1094.7,-10276.79C1086.53,-10273.46 1079.59,-10268.2 1076,-10260 1069.35,-10244.82 1069.35,-9082.18 1076,-9067 1079.21,-9059.67 1085.13,-9054.75 1092.21,-9051.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093,-9053.44 1097.83,-9049.31 1091.48,-9049.52 1093,-9053.44"/>
</g>
<!-- UI/Base/FixedUiElement.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge358" class="edge">
<title>UI/Base/FixedUiElement.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1194.76,-5630.56C1202.36,-5628.6 1209.88,-5625.85 1216.5,-5622 1261.76,-5595.66 1296.16,-5541.48 1310.79,-5515.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.7,-5516.39 1313.76,-5510.12 1309.02,-5514.36 1312.7,-5516.39"/>
</g>
<!-- Logic/State/ElementsState.ts -->
<g id="node99" class="node">
<title>Logic/State/ElementsState.ts</title>
<g id="a_node99"><a xlink:href="Logic/State/ElementsState.ts" xlink:title="ElementsState.ts">
<path fill="#ddfeff" stroke="black" d="M615,-9562C615,-9562 533,-9562 533,-9562 530,-9562 527,-9559 527,-9556 527,-9556 527,-9550 527,-9550 527,-9547 530,-9544 533,-9544 533,-9544 615,-9544 615,-9544 618,-9544 621,-9547 621,-9550 621,-9550 621,-9556 621,-9556 621,-9559 618,-9562 615,-9562"/>
<text text-anchor="middle" x="574" y="-9550.8" font-family="Helvetica,sans-Serif" font-size="9.00">ElementsState.ts</text>
</a>
</g>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Utils.ts -->
<g id="edge217" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.19,-9543.67C590.3,-9487.32 658.53,-9186.66 681,-8937 683.18,-8912.76 678.72,-8083.06 689,-8061 748.79,-7932.72 871.66,-7982.5 931,-7854 942.69,-7828.69 923.33,-3862.06 939,-3839 974.09,-3787.36 1033.04,-3837.69 1069.5,-3787 1084.71,-3765.86 1063.58,-3570.9 1082.5,-3553 1125.76,-3512.07 1160.68,-3532.25 1216.5,-3553 1256.51,-3567.88 1291.32,-3606.28 1308.01,-3627.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1306.49,-3628.56 1311.85,-3631.98 1309.79,-3625.97 1306.49,-3628.56"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge223" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M621.1,-9557.41C639.78,-9559.51 661.49,-9562.38 681,-9566 684.6,-9566.67 685.36,-9567.55 689,-9568 731.02,-9573.17 1041.36,-9579.63 1069.5,-9548 1105.48,-9507.56 1048.14,-9102.83 1082.5,-9061 1085.23,-9057.68 1088.56,-9055.04 1092.26,-9052.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.37,-9054.76 1097.9,-9050.29 1091.57,-9050.96 1093.37,-9054.76"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/ChangeToElementsActor.ts -->
<g id="edge218" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/ChangeToElementsActor.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.59,-9543.93C593.87,-9504.85 654.05,-9346.66 681,-9211 684.78,-9191.96 675.53,-9137.98 689,-9124 700.36,-9112.21 716.06,-9106.36 732.25,-9103.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="732.55,-9105.96 738.23,-9103.11 732.01,-9101.79 732.55,-9105.96"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/PendingChangesUploader.ts -->
<g id="edge219" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/PendingChangesUploader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.42,-9543.9C593.03,-9504.67 650.82,-9345.98 681,-9211 683.79,-9198.52 679.91,-9163 689,-9154 699.55,-9143.57 713.52,-9137.87 728.11,-9135.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="728.81,-9137.06 734.39,-9134.01 728.13,-9132.92 728.81,-9137.06"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/TitleHandler.ts -->
<g id="edge220" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Actors/TitleHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M575.4,-9543.61C578.52,-9475.4 601.12,-9056.27 689,-8974 705.6,-8958.46 729.87,-8953.64 751.92,-8953.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.96,-8955.37 766,-8953.37 760.03,-8951.17 759.96,-8955.37"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="760,-8953.27 757,-8953.23 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="754.6" cy="-8953.19" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/ElementStorage.ts -->
<g id="edge221" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/ElementStorage.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.26,-9543.97C657.33,-9535.82 714.79,-9523.83 755.64,-9515.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="756.1,-9517.35 761.54,-9514.07 755.24,-9513.24 756.1,-9517.35"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Osm/Changes.ts -->
<g id="edge222" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Osm/Changes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M621.19,-9546.07C642.53,-9545.65 666.33,-9549.65 681,-9566 691.82,-9578.06 682.57,-10134.14 689,-10149 707.22,-10191.11 749.66,-10225.21 777.83,-10244.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="783.47,-10250.46 789.64,-10251.98 785.76,-10246.95 783.47,-10250.46"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="784.61,-10248.7 782.1,-10247.07 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="780.09" cy="-10245.76" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts -->
<g id="edge224" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.29,-9543.83C581.86,-9507.98 607.42,-9376.61 689,-9321 733.59,-9290.61 888.76,-9334.58 931,-9301 940.13,-9293.74 930.41,-9283.89 939,-9276 940.01,-9275.07 941.07,-9274.19 942.17,-9273.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="943.34,-9275.11 947.21,-9270.07 941.04,-9271.6 943.34,-9275.11"/>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge225" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.12,-9543.85C581.2,-9506.8 605.45,-9366.86 689,-9302 775.29,-9235.01 840.69,-9320.46 931,-9259 936.61,-9255.18 933.49,-9249.95 939,-9246 941.42,-9244.26 944.01,-9242.73 946.71,-9241.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="947.78,-9243.18 952.39,-9238.8 946.06,-9239.35 947.78,-9243.18"/>
</g>
<!-- Logic/State/FeatureSwitchState.ts -->
<g id="node101" class="node">
<title>Logic/State/FeatureSwitchState.ts</title>
<g id="a_node101"><a xlink:href="Logic/State/FeatureSwitchState.ts" xlink:title="FeatureSwitchState.ts">
<path fill="#ddfeff" stroke="black" d="M858.5,-9562C858.5,-9562 753.5,-9562 753.5,-9562 750.5,-9562 747.5,-9559 747.5,-9556 747.5,-9556 747.5,-9550 747.5,-9550 747.5,-9547 750.5,-9544 753.5,-9544 753.5,-9544 858.5,-9544 858.5,-9544 861.5,-9544 864.5,-9547 864.5,-9550 864.5,-9550 864.5,-9556 864.5,-9556 864.5,-9559 861.5,-9562 858.5,-9562"/>
<text text-anchor="middle" x="806" y="-9550.8" font-family="Helvetica,sans-Serif" font-size="9.00">FeatureSwitchState.ts</text>
</a>
</g>
</g>
<!-- Logic/State/ElementsState.ts&#45;&gt;Logic/State/FeatureSwitchState.ts -->
<g id="edge226" class="edge">
<title>Logic/State/ElementsState.ts&#45;&gt;Logic/State/FeatureSwitchState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M621.27,-9553C655.76,-9553 703.28,-9553 741.35,-9553"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="741.38,-9555.1 747.38,-9553 741.38,-9550.9 741.38,-9555.1"/>
</g>
<!-- Logic/Web/QueryParameters.ts&#45;&gt;Utils.ts -->
<g id="edge283" class="edge">
<title>Logic/Web/QueryParameters.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1058.66,-9224.71C1062.77,-9222.49 1066.49,-9219.64 1069.5,-9216 1089.71,-9191.58 1062.47,-8955.57 1082.5,-8931 1121.32,-8883.38 1178.73,-8945.47 1216.5,-8897 1227.46,-8882.94 1218.74,-3779.87 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Web/QueryParameters.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge284" class="edge">
<title>Logic/Web/QueryParameters.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1058.51,-9224.58C1062.66,-9222.39 1066.42,-9219.58 1069.5,-9216 1092.04,-9189.8 1059.81,-9087.07 1082.5,-9061 1085.27,-9057.81 1088.61,-9055.26 1092.27,-9053.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.3,-9055.07 1097.84,-9050.63 1091.51,-9051.27 1093.3,-9055.07"/>
</g>
<!-- Logic/Web/QueryParameters.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge285" class="edge">
<title>Logic/Web/QueryParameters.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1058.65,-9222.37C1062.51,-9220.61 1066.19,-9218.51 1069.5,-9216 1110.62,-9184.83 1132.3,-9124.23 1140.53,-9096.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1142.56,-9096.6 1142.17,-9090.26 1138.52,-9095.46 1142.56,-9096.6"/>
</g>
<!-- Logic/State/FeatureSwitchState.ts&#45;&gt;Utils.ts -->
<g id="edge236" class="edge">
<title>Logic/State/FeatureSwitchState.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M856.9,-9562.02C882.84,-9563.61 912.83,-9560.05 931,-9540 953.67,-9515 917.79,-8351.26 939,-8325 976.33,-8278.78 1032.25,-8342.29 1069.5,-8296 1107.18,-8249.18 1045.36,-4016.25 1082.5,-3969 1120.4,-3920.78 1177.56,-3983.39 1216.5,-3936 1228.72,-3921.13 1217.88,-3781.07 1224.5,-3763 1241.18,-3717.49 1281.38,-3675.25 1303.42,-3654.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.12,-3655.76 1308.09,-3650.14 1302.26,-3652.68 1305.12,-3655.76"/>
</g>
<!-- Logic/State/FeatureSwitchState.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge237" class="edge">
<title>Logic/State/FeatureSwitchState.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M864.51,-9556.68C933.27,-9559.69 1042.48,-9559.58 1069.5,-9531 1105.39,-9493.04 1049.32,-9101.35 1082.5,-9061 1085.23,-9057.68 1088.57,-9055.04 1092.26,-9052.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.37,-9054.76 1097.9,-9050.3 1091.58,-9050.96 1093.37,-9054.76"/>
</g>
<!-- Logic/State/FeatureSwitchState.ts&#45;&gt;Models/Constants.ts -->
<g id="edge235" class="edge">
<title>Logic/State/FeatureSwitchState.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M755.5,-9562.02C725.66,-9564.16 692.1,-9559.84 683.67,-9532 681.47,-9524.75 681.47,-8448.25 683.67,-8441 692.84,-8410.7 731.68,-8407.9 763.17,-8411.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="763.16,-8413.15 769.36,-8411.74 763.63,-8408.98 763.16,-8413.15"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M767.06,-9562.02C735.76,-9566.79 695.55,-9566.43 686.33,-9536 684.12,-9528.7 684.12,-8444.3 686.33,-8437 695.18,-8407.78 732.54,-8405.93 763.19,-8409.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.99,-8411.89 769.22,-8410.64 763.57,-8407.73 762.99,-8411.89"/>
</g>
<!-- Logic/State/FeatureSwitchState.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge238" class="edge">
<title>Logic/State/FeatureSwitchState.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M859.24,-9562C884.53,-9563.18 913.21,-9559.22 931,-9540 953.2,-9516.02 918.29,-9271.28 939,-9246 941.26,-9243.24 943.92,-9240.92 946.85,-9238.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="948.17,-9240.65 952.39,-9235.89 946.12,-9236.98 948.17,-9240.65"/>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/Actors/SelectedFeatureHandler.ts -->
<g id="edge231" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/Actors/SelectedFeatureHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M89.42,-9543.79C107.54,-9502.27 187.38,-9330.45 305,-9239 434.1,-9138.62 627.85,-9100.35 732.21,-9086.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="732.66,-9088.5 738.34,-9085.64 732.11,-9084.33 732.66,-9088.5"/>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge227" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M85.53,-9543.83C86.39,-9306.52 104.22,-4541.14 153,-4493 249.81,-4397.48 362.74,-4396.93 459,-4493 479.53,-4513.49 447.86,-8647.21 467,-8669 482.73,-8686.91 509.36,-8690.38 531.98,-8689.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="532.39,-8691.46 538.25,-8688.99 532.13,-8687.27 532.39,-8691.46"/>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/FeatureSource/FeaturePipeline.ts -->
<g id="edge232" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/FeatureSource/FeaturePipeline.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M93.71,-9562C133.56,-9605.69 307.11,-9795.98 363.34,-9857.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="367.09,-9864.87 372.69,-9867.89 370.2,-9862.04 367.09,-9864.87"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="368.64,-9863.45 366.62,-9861.24 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="365.01" cy="-9859.46" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge233" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M85.53,-9562.14C86.06,-9667.63 96.65,-10654.41 305,-10830 309.42,-10833.73 1055.55,-10830.15 1069.5,-10816 1083.98,-10801.31 1079.91,-9351.46 1082.5,-9331 1093.97,-9240.42 1126.58,-9135.29 1139.32,-9096.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1141.43,-9096.74 1141.32,-9090.38 1137.44,-9095.42 1141.43,-9096.74"/>
</g>
<!-- UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="node103" class="node">
<title>UI/ShowDataLayer/ShowDataLayer.ts</title>
<g id="a_node103"><a xlink:href="UI/ShowDataLayer/ShowDataLayer.ts" xlink:title="ShowDataLayer.ts">
<path fill="#ddfeff" stroke="black" d="M1048,-6930C1048,-6930 963,-6930 963,-6930 960,-6930 957,-6927 957,-6924 957,-6924 957,-6918 957,-6918 957,-6915 960,-6912 963,-6912 963,-6912 1048,-6912 1048,-6912 1051,-6912 1054,-6915 1054,-6918 1054,-6918 1054,-6924 1054,-6924 1054,-6927 1051,-6930 1048,-6930"/>
<text text-anchor="middle" x="1005.5" y="-6918.8" font-family="Helvetica,sans-Serif" font-size="9.00">ShowDataLayer.ts</text>
</a>
</g>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge228" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M85.54,-9543.95C86.66,-9304.82 110.04,-4403.77 153,-4112 278.58,-3259.18 0.37,-2766.52 689,-2248 774.92,-2183.3 854.88,-2172.01 931,-2248 942.21,-2259.19 934.85,-6793.72 939,-6809 948.54,-6844.09 972.09,-6879.45 988.19,-6900.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="991.5,-6908.46 996.85,-6911.89 994.82,-6905.87 991.5,-6908.46"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.16,-6907.17 991.31,-6904.8 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="989.84" cy="-6902.91" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts -->
<g id="node104" class="node">
<title>UI/ShowDataLayer/ShowTileInfo.ts</title>
<g id="a_node104"><a xlink:href="UI/ShowDataLayer/ShowTileInfo.ts" xlink:title="ShowTileInfo.ts">
<path fill="#ddfeff" stroke="black" d="M842.5,-6840C842.5,-6840 769.5,-6840 769.5,-6840 766.5,-6840 763.5,-6837 763.5,-6834 763.5,-6834 763.5,-6828 763.5,-6828 763.5,-6825 766.5,-6822 769.5,-6822 769.5,-6822 842.5,-6822 842.5,-6822 845.5,-6822 848.5,-6825 848.5,-6828 848.5,-6828 848.5,-6834 848.5,-6834 848.5,-6837 845.5,-6840 842.5,-6840"/>
<text text-anchor="middle" x="806" y="-6828.8" font-family="Helvetica,sans-Serif" font-size="9.00">ShowTileInfo.ts</text>
</a>
</g>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/ShowTileInfo.ts -->
<g id="edge229" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/ShowTileInfo.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M85.48,-9543.89C84.87,-9303.3 73.48,-4374.55 153,-4255 285.6,-4055.64 511.44,-3978.95 681,-4148 694.09,-4161.05 677.19,-6794.79 689,-6809 703.52,-6826.48 727.22,-6832.95 749.42,-6834.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="757.25,-6837.05 763.32,-6835.17 757.4,-6832.85 757.25,-6837.05"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="757.32,-6834.95 754.32,-6834.84 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="751.93" cy="-6834.75" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/TileHierarchyAggregator.ts -->
<g id="node105" class="node">
<title>UI/ShowDataLayer/TileHierarchyAggregator.ts</title>
<g id="a_node105"><a xlink:href="UI/ShowDataLayer/TileHierarchyAggregator.ts" xlink:title="TileHierarchyAggregator.ts">
<path fill="#ddfeff" stroke="black" d="M867.5,-6900C867.5,-6900 744.5,-6900 744.5,-6900 741.5,-6900 738.5,-6897 738.5,-6894 738.5,-6894 738.5,-6888 738.5,-6888 738.5,-6885 741.5,-6882 744.5,-6882 744.5,-6882 867.5,-6882 867.5,-6882 870.5,-6882 873.5,-6885 873.5,-6888 873.5,-6888 873.5,-6894 873.5,-6894 873.5,-6897 870.5,-6900 867.5,-6900"/>
<text text-anchor="middle" x="806" y="-6888.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileHierarchyAggregator.ts</text>
</a>
</g>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/TileHierarchyAggregator.ts -->
<g id="edge230" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;UI/ShowDataLayer/TileHierarchyAggregator.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M85.5,-9543.84C85.65,-9306.64 89.29,-4542.62 153,-4419 232.25,-4265.23 302.58,-4242.78 467,-4189 557.4,-4159.43 613.65,-4121.85 681,-4189 694.21,-4202.17 676.66,-6862 689,-6876 700,-6888.48 715.85,-6894.51 732.3,-6896.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="732.18,-6899.04 738.39,-6897.67 732.68,-6894.87 732.18,-6899.04"/>
</g>
<!-- Logic/State/MapState.ts -->
<g id="node106" class="node">
<title>Logic/State/MapState.ts</title>
<g id="a_node106"><a xlink:href="Logic/State/MapState.ts" xlink:title="MapState.ts">
<path fill="#ddfeff" stroke="black" d="M257,-9562C257,-9562 198,-9562 198,-9562 195,-9562 192,-9559 192,-9556 192,-9556 192,-9550 192,-9550 192,-9547 195,-9544 198,-9544 198,-9544 257,-9544 257,-9544 260,-9544 263,-9547 263,-9550 263,-9550 263,-9556 263,-9556 263,-9559 260,-9562 257,-9562"/>
<text text-anchor="middle" x="227.5" y="-9550.8" font-family="Helvetica,sans-Serif" font-size="9.00">MapState.ts</text>
</a>
</g>
</g>
<!-- Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/State/MapState.ts -->
<g id="edge234" class="edge">
<title>Logic/State/FeaturePipelineState.ts&#45;&gt;Logic/State/MapState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M145.3,-9553C156.24,-9553 167.53,-9553 178.08,-9553"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="185.92,-9555.1 191.92,-9553 185.92,-9550.9 185.92,-9555.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="185.92,-9553 182.92,-9553 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="180.52" cy="-9553" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge754" class="edge">
<title>UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1007.78,-6930.17C1015.46,-6985.5 1055.48,-7280.66 1069.5,-7523 1084.21,-7777.26 1060.38,-8415.28 1082.5,-8669 1094.91,-8811.34 1130.16,-8981.01 1141.17,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.18,-9032.58 1142.5,-9037.99 1143.28,-9031.69 1139.18,-9032.58"/>
</g>
<!-- UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts -->
<g id="edge753" class="edge">
<title>UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;Logic/FeatureSource/Sources/RenderingMultiPlexerFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1003.14,-6930.16C994.99,-6985.48 952.59,-7280.53 939,-7523 938.14,-7538.34 941.21,-9724.52 931,-9736 924.07,-9743.79 915.37,-9749.18 905.82,-9752.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="905.11,-9750.82 900.1,-9754.73 906.45,-9754.8 905.11,-9750.82"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts -->
<g id="node187" class="node">
<title>UI/Popup/FeatureInfoBox.ts</title>
<g id="a_node187"><a xlink:href="UI/Popup/FeatureInfoBox.ts" xlink:title="FeatureInfoBox.ts">
<path fill="#ddfeff" stroke="black" d="M269.5,-4698C269.5,-4698 185.5,-4698 185.5,-4698 182.5,-4698 179.5,-4695 179.5,-4692 179.5,-4692 179.5,-4686 179.5,-4686 179.5,-4683 182.5,-4680 185.5,-4680 185.5,-4680 269.5,-4680 269.5,-4680 272.5,-4680 275.5,-4683 275.5,-4686 275.5,-4686 275.5,-4692 275.5,-4692 275.5,-4695 272.5,-4698 269.5,-4698"/>
<text text-anchor="middle" x="227.5" y="-4686.8" font-family="Helvetica,sans-Serif" font-size="9.00">FeatureInfoBox.ts</text>
</a>
</g>
</g>
<!-- UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;UI/Popup/FeatureInfoBox.ts -->
<g id="edge755" class="edge">
<title>UI/ShowDataLayer/ShowDataLayer.ts&#45;&gt;UI/Popup/FeatureInfoBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1003.33,-6930.18C996.28,-6985.57 959.22,-7280.99 939,-7523 937.73,-7538.2 942.09,-7649.54 931,-7660 852.76,-7733.8 767.09,-7733.96 689,-7660 677.12,-7648.75 690.82,-7526.08 681,-7513 574.7,-7371.34 407.77,-7525.24 305,-7381 283.91,-7351.4 304.59,-4798.1 292,-4764 283.71,-4741.55 265.44,-4721.19 250.62,-4707.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="246.07,-4700.54 240.18,-4698.14 243.29,-4703.69 246.07,-4700.54"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="244.68,-4702.11 246.93,-4704.1 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="248.72" cy="-4705.69" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge761" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M763.49,-6822.83C732.37,-6819.55 694.05,-6822.11 685,-6852 681.76,-6862.7 681.76,-8451.3 685,-8462 692.9,-8488.1 723.11,-8493.36 751.36,-8492.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.58,-8493.54 765.4,-8490.96 759.25,-8489.35 759.58,-8493.54"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.42,-8491.44 756.42,-8491.68 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="754.03" cy="-8491.88" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge760" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.77,-6835.99C876.56,-6836.75 911.44,-6832.26 931,-6809 942.32,-6795.54 926.55,-4289.41 939,-4277 980.08,-4236.05 1028.45,-4236.03 1069.5,-4277 1100.33,-4307.77 1061.62,-10510.78 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.28,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge762" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M763.35,-6824.08C737.95,-6822.45 707.01,-6825.6 689,-6846 672.24,-6864.98 697.73,-8650 681,-8669 665.25,-8686.89 638.62,-8690.36 616,-8689.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="615.85,-8687.25 609.74,-8688.98 615.59,-8691.44 615.85,-8687.25"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge759" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M763.49,-6822.83C732.37,-6819.55 694.05,-6822.11 685,-6852 682.19,-6861.27 682.19,-9632.73 685,-9642 693.34,-9669.55 726.7,-9673.28 756.28,-9670.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="756.77,-9672.73 762.52,-9670.03 756.34,-9668.55 756.77,-9672.73"/>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge763" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.6,-6829.25C873.65,-6829.81 905.52,-6833.44 931,-6846 956.13,-6858.39 977.58,-6882.93 990.71,-6900.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.55,-6908.24 998.73,-6911.93 996.98,-6905.82 993.55,-6908.24"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="995.27,-6907.03 993.54,-6904.58 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="992.15" cy="-6902.62" rx="2.4" ry="2.4"/>
</g>
<!-- assets/layers/cluster_style/cluster_style.json -->
<g id="node197" class="node">
<title>assets/layers/cluster_style/cluster_style.json</title>
<g id="a_node197"><a xlink:href="assets/layers/cluster_style/cluster_style.json" xlink:title="cluster_style.json">
<path fill="#ffee44" stroke="black" d="M1360.5,-3912C1360.5,-3912 1278.5,-3912 1278.5,-3912 1275.5,-3912 1272.5,-3909 1272.5,-3906 1272.5,-3906 1272.5,-3900 1272.5,-3900 1272.5,-3897 1275.5,-3894 1278.5,-3894 1278.5,-3894 1360.5,-3894 1360.5,-3894 1363.5,-3894 1366.5,-3897 1366.5,-3900 1366.5,-3900 1366.5,-3906 1366.5,-3906 1366.5,-3909 1363.5,-3912 1360.5,-3912"/>
<text text-anchor="middle" x="1319.5" y="-3900.8" font-family="Helvetica,sans-Serif" font-size="9.00">cluster_style.json</text>
</a>
</g>
</g>
<!-- UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;assets/layers/cluster_style/cluster_style.json -->
<g id="edge758" class="edge">
<title>UI/ShowDataLayer/ShowTileInfo.ts&#45;&gt;assets/layers/cluster_style/cluster_style.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.77,-6835.99C876.57,-6836.75 911.44,-6832.26 931,-6809 943.69,-6793.9 926.28,-3984.08 939,-3969 1019.03,-3874.12 1182.5,-3882.13 1266.35,-3893.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1266.26,-3895.81 1272.49,-3894.58 1266.85,-3891.65 1266.26,-3895.81"/>
</g>
<!-- UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge766" class="edge">
<title>UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.61,-6899.1C894.96,-6897.92 916.74,-6892.04 931,-6876 942.99,-6862.51 926.22,-4289.74 939,-4277 980.08,-4236.05 1028.43,-4236.05 1069.5,-4277 1080.3,-4287.77 1081.24,-8653.8 1082.5,-8669 1094.31,-8811.39 1129.97,-8981.03 1141.13,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge764" class="edge">
<title>UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.62,-6882.9C894.97,-6884.07 916.74,-6889.95 931,-6906 947.8,-6924.91 930.61,-10525.13 939,-10549 948.86,-10577.04 972.75,-10602.64 988.78,-10617.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="987.63,-10619.31 993.49,-10621.79 990.45,-10616.2 987.63,-10619.31"/>
</g>
<!-- UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge767" class="edge">
<title>UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M738.4,-6884.34C719.83,-6886.12 701.37,-6892 689,-6906 672.79,-6924.35 697.18,-8650.62 681,-8669 665.24,-8686.89 638.62,-8690.35 616,-8689.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="615.85,-8687.25 609.74,-8688.97 615.59,-8691.44 615.85,-8687.25"/>
</g>
<!-- UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge765" class="edge">
<title>UI/ShowDataLayer/TileHierarchyAggregator.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M753.09,-6881.99C724.35,-6880.43 693.06,-6885.37 685,-6912 682.25,-6921.07 682.25,-9632.93 685,-9642 693.34,-9669.55 726.7,-9673.28 756.28,-9670.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="756.77,-9672.73 762.52,-9670.03 756.34,-9668.55 756.77,-9672.73"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts -->
<g id="edge244" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.1,-9543.77C226.76,-9502.07 226.31,-9328.65 305,-9223 422.35,-9065.43 502.72,-9066.45 689,-9004 705.29,-8998.54 723.48,-8995.05 740.54,-8992.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="741.07,-8994.88 746.77,-8992.06 740.56,-8990.71 741.07,-8994.88"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge247" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.94,-9562.02C234.61,-9674.8 298.4,-10807 573,-10807 573,-10807 573,-10807 807,-10807 931.85,-10807 1005.18,-10814 1069.5,-10707 1093.05,-10667.81 1053.81,-9096.6 1082.5,-9061 1085.2,-9057.65 1088.51,-9055 1092.19,-9052.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.3,-9054.7 1097.81,-9050.23 1091.49,-9050.91 1093.3,-9054.7"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge246" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.72,-9562.13C230.8,-9647.34 248.59,-10304.65 305,-10492 348.01,-10634.86 343,-10703.04 467,-10786 690.02,-10935.22 852.92,-10983.43 1069.5,-10825 1142.11,-10771.89 1146.13,-10647.92 1145.17,-10604.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1147.27,-10604.31 1145,-10598.38 1143.07,-10604.43 1147.27,-10604.31"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge240" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.82,-9543.77C231.74,-9460.51 255.09,-8840.54 305,-8777 360.36,-8706.53 472.21,-8688.74 532.42,-8684.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="532.59,-8686.44 538.44,-8683.94 532.31,-8682.25 532.59,-8686.44"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts -->
<g id="edge245" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/FeatureSource/Sources/SimpleFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M251.73,-9562.12C293.86,-9578.17 386.01,-9611.1 467,-9625 490.46,-9629.03 664.05,-9618.29 681,-9635 701.77,-9655.48 669.09,-9744.69 689,-9766 701.46,-9779.33 719.46,-9785.15 737.58,-9787.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="737.56,-9789.2 743.72,-9787.61 737.91,-9785.01 737.56,-9789.2"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts -->
<g id="edge248" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M233.84,-9543.78C256.34,-9505.84 347.86,-9361.07 467,-9301 623.88,-9221.91 839.78,-9237.32 943.73,-9251.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="943.58,-9253.25 949.8,-9251.98 944.14,-9249.09 943.58,-9253.25"/>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge249" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.55,-9543.84C229.22,-9507.93 236.45,-9375.11 305,-9302 357.62,-9245.88 391.44,-9255.48 467,-9241 638.71,-9208.09 846.93,-9217.99 946.29,-9225.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.24,-9227.77 952.38,-9226.15 946.57,-9223.58 946.24,-9227.77"/>
</g>
<!-- assets/themes/personal/personal.json -->
<g id="node107" class="node">
<title>assets/themes/personal/personal.json</title>
<g id="a_node107"><a xlink:href="assets/themes/personal/personal.json" xlink:title="personal.json">
<path fill="#ffee44" stroke="black" d="M1351.5,-4006C1351.5,-4006 1287.5,-4006 1287.5,-4006 1284.5,-4006 1281.5,-4003 1281.5,-4000 1281.5,-4000 1281.5,-3994 1281.5,-3994 1281.5,-3991 1284.5,-3988 1287.5,-3988 1287.5,-3988 1351.5,-3988 1351.5,-3988 1354.5,-3988 1357.5,-3991 1357.5,-3994 1357.5,-3994 1357.5,-4000 1357.5,-4000 1357.5,-4003 1354.5,-4006 1351.5,-4006"/>
<text text-anchor="middle" x="1319.5" y="-3994.8" font-family="Helvetica,sans-Serif" font-size="9.00">personal.json</text>
</a>
</g>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;assets/themes/personal/personal.json -->
<g id="edge239" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;assets/themes/personal/personal.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.45,-9543.72C227.86,-9429.87 224.15,-8300.64 305,-7978 343.85,-7822.95 423.72,-7808.9 459,-7653 468.53,-7610.88 464.23,-4587.09 467,-4544 492.22,-4151.92 467.91,-3114.77 689,-2790 790.15,-2641.42 940.46,-2527.88 1069.5,-2653 1086.34,-2669.33 1080,-3051.68 1082.5,-3075 1117.42,-3400.81 1177.36,-3474.67 1216.5,-3800 1218.37,-3815.58 1216.36,-3927.58 1224.5,-3941 1237.55,-3962.53 1262.29,-3976.78 1283.11,-3985.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1282.51,-3987.53 1288.86,-3987.83 1284.08,-3983.64 1282.51,-3987.53"/>
</g>
<!-- UI/Base/Minimap.ts -->
<g id="node108" class="node">
<title>UI/Base/Minimap.ts</title>
<g id="a_node108"><a xlink:href="UI/Base/Minimap.ts" xlink:title="Minimap.ts">
<path fill="#ddfeff" stroke="black" d="M833,-5464C833,-5464 779,-5464 779,-5464 776,-5464 773,-5461 773,-5458 773,-5458 773,-5452 773,-5452 773,-5449 776,-5446 779,-5446 779,-5446 833,-5446 833,-5446 836,-5446 839,-5449 839,-5452 839,-5452 839,-5458 839,-5458 839,-5461 836,-5464 833,-5464"/>
<text text-anchor="middle" x="806" y="-5452.8" font-family="Helvetica,sans-Serif" font-size="9.00">Minimap.ts</text>
</a>
</g>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge241" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.62,-9543.9C230.37,-9419.73 250.59,-8065.62 305,-8004 350.99,-7951.91 414.24,-8030.16 459,-7977 474.11,-7959.05 450.39,-4614.57 467,-4598 534.33,-4530.83 613.43,-4531.07 681,-4598 697.62,-4614.46 673.47,-5422.51 689,-5440 707.84,-5461.23 740.7,-5463.75 766.64,-5461.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.96,-5463.74 772.74,-5461.07 766.56,-5459.56 766.96,-5463.74"/>
</g>
<!-- UI/BigComponents/Attribution.ts -->
<g id="node109" class="node">
<title>UI/BigComponents/Attribution.ts</title>
<g id="a_node109"><a xlink:href="UI/BigComponents/Attribution.ts" xlink:title="Attribution.ts">
<path fill="#ddfeff" stroke="black" d="M606.5,-6008C606.5,-6008 541.5,-6008 541.5,-6008 538.5,-6008 535.5,-6005 535.5,-6002 535.5,-6002 535.5,-5996 535.5,-5996 535.5,-5993 538.5,-5990 541.5,-5990 541.5,-5990 606.5,-5990 606.5,-5990 609.5,-5990 612.5,-5993 612.5,-5996 612.5,-5996 612.5,-6002 612.5,-6002 612.5,-6005 609.5,-6008 606.5,-6008"/>
<text text-anchor="middle" x="574" y="-5996.8" font-family="Helvetica,sans-Serif" font-size="9.00">Attribution.ts</text>
</a>
</g>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;UI/BigComponents/Attribution.ts -->
<g id="edge242" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;UI/BigComponents/Attribution.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.84,-9543.6C231.41,-9474.67 249.36,-9040.24 305,-8692 352.72,-8393.28 423.96,-8329.47 459,-8029 460.62,-8015.1 457.8,-6024.55 467,-6014 482.07,-5996.71 507.24,-5992.61 529.28,-5992.99"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="529.32,-5995.09 535.4,-5993.21 529.47,-5990.9 529.32,-5995.09"/>
</g>
<!-- UI/ShowDataLayer/ShowOverlayLayer.ts -->
<g id="node110" class="node">
<title>UI/ShowDataLayer/ShowOverlayLayer.ts</title>
<g id="a_node110"><a xlink:href="UI/ShowDataLayer/ShowOverlayLayer.ts" xlink:title="ShowOverlayLayer.ts">
<path fill="#ddfeff" stroke="black" d="M855,-6870C855,-6870 757,-6870 757,-6870 754,-6870 751,-6867 751,-6864 751,-6864 751,-6858 751,-6858 751,-6855 754,-6852 757,-6852 757,-6852 855,-6852 855,-6852 858,-6852 861,-6855 861,-6858 861,-6858 861,-6864 861,-6864 861,-6867 858,-6870 855,-6870"/>
<text text-anchor="middle" x="806" y="-6858.8" font-family="Helvetica,sans-Serif" font-size="9.00">ShowOverlayLayer.ts</text>
</a>
</g>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;UI/ShowDataLayer/ShowOverlayLayer.ts -->
<g id="edge243" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;UI/ShowDataLayer/ShowOverlayLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.64,-9543.67C230.49,-9419.24 251.53,-8090.51 305,-8030 351.01,-7977.93 414.24,-8056.16 459,-8003 474.11,-7985.06 450.39,-4641.57 467,-4625 500.67,-4591.41 647.31,-4591.43 681,-4625 702.85,-4646.77 668.59,-6822.87 689,-6846 702.76,-6861.59 724.06,-6867.11 744.68,-6868.12"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="744.71,-6870.22 750.76,-6868.29 744.82,-6866.02 744.71,-6870.22"/>
</g>
<!-- Logic/State/UserRelatedState.ts -->
<g id="node111" class="node">
<title>Logic/State/UserRelatedState.ts</title>
<g id="a_node111"><a xlink:href="Logic/State/UserRelatedState.ts" xlink:title="UserRelatedState.ts">
<path fill="#ddfeff" stroke="black" d="M429,-9562C429,-9562 335,-9562 335,-9562 332,-9562 329,-9559 329,-9556 329,-9556 329,-9550 329,-9550 329,-9547 332,-9544 335,-9544 335,-9544 429,-9544 429,-9544 432,-9544 435,-9547 435,-9550 435,-9550 435,-9556 435,-9556 435,-9559 432,-9562 429,-9562"/>
<text text-anchor="middle" x="382" y="-9550.8" font-family="Helvetica,sans-Serif" font-size="9.00">UserRelatedState.ts</text>
</a>
</g>
</g>
<!-- Logic/State/MapState.ts&#45;&gt;Logic/State/UserRelatedState.ts -->
<g id="edge250" class="edge">
<title>Logic/State/MapState.ts&#45;&gt;Logic/State/UserRelatedState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M263.1,-9553C278.43,-9553 296.99,-9553 314.81,-9553"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="322.86,-9555.1 328.86,-9553 322.86,-9550.9 322.86,-9555.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="322.86,-9553 319.86,-9553 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="317.46" cy="-9553" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;Utils.ts -->
<g id="edge395" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.61,-6004.79C635.94,-6006.05 664.52,-6002.92 681,-5984 692.11,-5971.25 681.01,-3562.91 689,-3548 750.15,-3433.93 868.93,-3499.58 931,-3386 941.98,-3365.91 922.66,-2990.03 939,-2974 1027.67,-2887.03 1131.41,-2916.53 1216.5,-3007 1304.34,-3100.4 1316.68,-3537.76 1318.28,-3625.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.18,-3625.79 1318.38,-3631.75 1320.38,-3625.72 1316.18,-3625.79"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge396" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.55,-5993.71C635.55,-5992.74 663.79,-5996 681,-6014 693.81,-6027.39 675.28,-6084.54 689,-6097 728.81,-6133.16 892.67,-6134.73 931,-6097 951.08,-6077.24 921.27,-5611.89 939,-5590 945.51,-5581.97 955.36,-5577.7 965.45,-5575.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.85,-5577.61 971.41,-5574.52 965.13,-5573.47 965.85,-5577.61"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;Models/Constants.ts -->
<g id="edge393" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.6,-5993.22C635.93,-5991.96 664.5,-5995.1 681,-6014 688.48,-6022.58 688.12,-7641.65 689,-7653 712.68,-7957.6 785.66,-8324.72 801.81,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.85,-8404.5 803.12,-8409.95 803.97,-8403.65 799.85,-8404.5"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;Svg.ts -->
<g id="edge394" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.61,-6004.79C635.94,-6006.05 664.52,-6002.92 681,-5984 702.94,-5958.82 666.94,-3604.08 689,-3579 760.65,-3497.53 858.89,-3628.06 931,-3547 950.94,-3524.58 920.64,-3030.73 939,-3007 946.88,-2996.82 959.94,-2992.05 972.34,-2989.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.7,-2992 978.35,-2989.08 972.12,-2987.84 972.7,-2992"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge397" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.73,-5993.54C635.8,-5992.5 664.05,-5995.75 681,-6014 699.04,-6033.42 669.64,-6114.9 689,-6133 767.56,-6206.46 854.36,-6208.46 931,-6133 951.31,-6113 921.06,-5642.15 939,-5620 947.01,-5610.1 960.1,-5605.92 972.47,-5604.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.69,-5606.47 978.47,-5603.82 972.3,-5602.28 972.69,-5606.47"/>
</g>
<!-- UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge398" class="edge">
<title>UI/BigComponents/Attribution.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M612.64,-5994.94C634.95,-5994.61 662.41,-5998.13 681,-6014 690.2,-6021.85 679.27,-6032.82 689,-6040 775.52,-6103.9 854.32,-6115.42 931,-6040 950.02,-6021.3 922.21,-5580.72 939,-5560 940.69,-5557.91 942.61,-5556.07 944.71,-5554.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.99,-5556.14 949.88,-5551.11 943.7,-5552.62 945.99,-5556.14"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Utils.ts -->
<g id="edge252" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.51,-9543.99C393.72,-9488.38 442.66,-9185.92 459,-8937 460.74,-8910.42 459.25,-8003.49 467,-7978 517.34,-7812.54 631.18,-7818.61 681,-7653 688.54,-7627.95 675.51,-3908.42 689,-3886 751.83,-3781.56 867.57,-3861.08 931,-3757 939.52,-3743.03 927.35,-3179.49 939,-3168 1026.8,-3081.38 1120.54,-3090.53 1216.5,-3168 1290.42,-3227.68 1313.34,-3551.11 1317.68,-3625.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1315.59,-3625.85 1318.02,-3631.72 1319.78,-3625.61 1315.59,-3625.85"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Actors/InstalledThemes.ts -->
<g id="edge253" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Actors/InstalledThemes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.75,-9543.78C388.11,-9492.34 412.05,-9241.33 467,-9192 538.3,-9128 615.33,-9235.76 681,-9166 701.14,-9144.6 668.94,-9055.47 689,-9034 702.33,-9019.73 722.01,-9014.06 741.39,-9012.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="749.43,-9014.41 755.36,-9012.12 749.3,-9010.21 749.43,-9014.41"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="749.36,-9012.31 746.36,-9012.4 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="743.97" cy="-9012.47" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Actors/SelectedElementTagsUpdater.ts -->
<g id="edge254" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Actors/SelectedElementTagsUpdater.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.15,-9543.78C390.25,-9496.48 420.26,-9281.55 467,-9237 537.42,-9169.88 617.51,-9264.71 681,-9191 699.45,-9169.57 669.67,-9084.64 689,-9064 695.62,-9056.93 703.8,-9051.97 712.73,-9048.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="721.07,-9048.37 726.26,-9044.69 719.91,-9044.33 721.07,-9048.37"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="720.49,-9046.35 717.61,-9047.18 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="715.3" cy="-9047.85" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge251" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.48,-9543.99C393.54,-9488.37 441.72,-9185.85 459,-8937 462.88,-8881.13 454.38,-8487.57 467,-8433 517.46,-8214.89 632.06,-8195.46 681,-7977 684.07,-7963.3 680.1,-3944.86 689,-3934 758.56,-3849.12 859.26,-3968.04 931,-3885 941.77,-3872.54 927.04,-3748.33 939,-3737 981.1,-3697.11 1023.12,-3702.18 1069.5,-3737 1256.77,-3877.61 1171.56,-4013.17 1216.5,-4243 1217.11,-4246.11 1304.03,-5085.24 1316.91,-5209.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.85,-5210.18 1317.56,-5215.94 1319.03,-5209.75 1314.85,-5210.18"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts -->
<g id="edge256" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/LocalStorageSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.27,-9543.86C421.31,-9505.6 547.53,-9357.62 689,-9298 788.64,-9256.01 823.82,-9287.27 931,-9273 935.69,-9272.38 940.53,-9271.69 945.4,-9270.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.94,-9273 951.56,-9270.03 945.31,-9268.85 945.94,-9273"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Osm/OsmConnection.ts -->
<g id="edge255" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Osm/OsmConnection.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M396.61,-9562.17C414.82,-9575.35 446.29,-9601.56 459,-9633 468.54,-9656.59 448.93,-10531.09 467,-10549 540.23,-10621.59 856.76,-10620.56 931,-10549 948.45,-10532.18 930.43,-10353.67 939,-10331 948.14,-10306.81 967.73,-10284.52 983.12,-10269.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="990.38,-10265.81 993.37,-10260.2 987.53,-10262.72 990.38,-10265.81"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="988.96,-10264.27 986.75,-10266.3 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="984.99" cy="-10267.92" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/State/ElementsState.ts -->
<g id="edge259" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/State/ElementsState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.17,-9553C459.25,-9553 487.98,-9553 512.95,-9553"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="520.78,-9555.1 526.78,-9553 520.78,-9550.9 520.78,-9555.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="520.78,-9553 517.78,-9553 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="515.38" cy="-9553" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge258" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M382.89,-9543.81C382.97,-9506.63 388.65,-9366.18 467,-9301 546.84,-9234.58 828.24,-9260.07 931,-9245 938.58,-9243.89 946.57,-9242.55 954.37,-9241.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="954.77,-9243.2 960.3,-9240.05 954.01,-9239.07 954.77,-9243.2"/>
</g>
<!-- Logic/Web/MangroveReviews.ts -->
<g id="node112" class="node">
<title>Logic/Web/MangroveReviews.ts</title>
<g id="a_node112"><a xlink:href="Logic/Web/MangroveReviews.ts" xlink:title="MangroveReviews.ts">
<path fill="#ddfeff" stroke="black" d="M1053.5,-9210C1053.5,-9210 957.5,-9210 957.5,-9210 954.5,-9210 951.5,-9207 951.5,-9204 951.5,-9204 951.5,-9198 951.5,-9198 951.5,-9195 954.5,-9192 957.5,-9192 957.5,-9192 1053.5,-9192 1053.5,-9192 1056.5,-9192 1059.5,-9195 1059.5,-9198 1059.5,-9198 1059.5,-9204 1059.5,-9204 1059.5,-9207 1056.5,-9210 1053.5,-9210"/>
<text text-anchor="middle" x="1005.5" y="-9198.8" font-family="Helvetica,sans-Serif" font-size="9.00">MangroveReviews.ts</text>
</a>
</g>
</g>
<!-- Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/MangroveReviews.ts -->
<g id="edge257" class="edge">
<title>Logic/State/UserRelatedState.ts&#45;&gt;Logic/Web/MangroveReviews.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.15,-9543.76C390.13,-9497.32 419.22,-9290.14 467,-9251 506.99,-9218.24 879.84,-9224.41 931,-9217 940.95,-9215.56 951.57,-9213.54 961.55,-9211.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="962.25,-9213.41 967.67,-9210.08 961.36,-9209.31 962.25,-9213.41"/>
</g>
<!-- Logic/Web/MangroveReviews.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge282" class="edge">
<title>Logic/Web/MangroveReviews.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1059.62,-9193.88C1063.31,-9191.8 1066.68,-9189.21 1069.5,-9186 1106.34,-9144.02 1045.41,-9102.76 1082.5,-9061 1085.31,-9057.84 1088.66,-9055.31 1092.34,-9053.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.37,-9055.13 1097.92,-9050.7 1091.6,-9051.33 1093.37,-9055.13"/>
</g>
<!-- Logic/Tags/ComparingTag.ts -->
<g id="node114" class="node">
<title>Logic/Tags/ComparingTag.ts</title>
<g id="a_node114"><a xlink:href="Logic/Tags/ComparingTag.ts" xlink:title="ComparingTag.ts">
<path fill="#ddfeff" stroke="black" d="M1045.5,-9448C1045.5,-9448 965.5,-9448 965.5,-9448 962.5,-9448 959.5,-9445 959.5,-9442 959.5,-9442 959.5,-9436 959.5,-9436 959.5,-9433 962.5,-9430 965.5,-9430 965.5,-9430 1045.5,-9430 1045.5,-9430 1048.5,-9430 1051.5,-9433 1051.5,-9436 1051.5,-9436 1051.5,-9442 1051.5,-9442 1051.5,-9445 1048.5,-9448 1045.5,-9448"/>
<text text-anchor="middle" x="1005.5" y="-9436.8" font-family="Helvetica,sans-Serif" font-size="9.00">ComparingTag.ts</text>
</a>
</g>
</g>
<!-- Logic/Tags/RegexTag.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge262" class="edge">
<title>Logic/Tags/RegexTag.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1109.96,-9354.96C1090.8,-9355.62 1066.88,-9355.67 1046.86,-9355.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1038.85,-9352.74 1032.78,-9354.62 1038.7,-9356.94 1038.85,-9352.74"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1038.78,-9354.84 1041.78,-9354.95 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1044.17" cy="-9355.04" rx="2.4" ry="2.4"/>
</g>
<!-- Logic/Tags/RegexTag.ts&#45;&gt;Logic/Tags/TagsFilter.ts -->
<g id="edge263" class="edge">
<title>Logic/Tags/RegexTag.ts&#45;&gt;Logic/Tags/TagsFilter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1181.1,-9358.14C1192.4,-9360.54 1205,-9363.3 1216.5,-9366 1237.12,-9370.84 1259.98,-9376.62 1278.82,-9381.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1278.71,-9383.65 1285.04,-9383.13 1279.77,-9379.58 1278.71,-9383.65"/>
</g>
<!-- Logic/Tags/SubstitutingTag.ts -->
<g id="node116" class="node">
<title>Logic/Tags/SubstitutingTag.ts</title>
<g id="a_node116"><a xlink:href="Logic/Tags/SubstitutingTag.ts" xlink:title="SubstitutingTag.ts">
<path fill="#ddfeff" stroke="black" d="M1049,-9390C1049,-9390 962,-9390 962,-9390 959,-9390 956,-9387 956,-9384 956,-9384 956,-9378 956,-9378 956,-9375 959,-9372 962,-9372 962,-9372 1049,-9372 1049,-9372 1052,-9372 1055,-9375 1055,-9378 1055,-9378 1055,-9384 1055,-9384 1055,-9387 1052,-9390 1049,-9390"/>
<text text-anchor="middle" x="1005.5" y="-9378.8" font-family="Helvetica,sans-Serif" font-size="9.00">SubstitutingTag.ts</text>
</a>
</g>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Utils.ts -->
<g id="edge267" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M819.27,-9341.9C845.78,-9321.38 907.89,-9268.45 931,-9207 940.2,-9182.53 926.99,-8289.22 939,-8266 971.85,-8202.52 1036.82,-8235.57 1069.5,-8172 1082.93,-8145.88 1064.43,-3966.15 1082.5,-3943 1120.3,-3894.56 1177.46,-3956.45 1216.5,-3909 1226.82,-3896.45 1218.84,-3778.23 1224.5,-3763 1241.38,-3717.56 1281.49,-3675.3 1303.47,-3654.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.17,-3655.78 1308.12,-3650.15 1302.3,-3652.71 1305.17,-3655.78"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/Or.ts -->
<g id="edge270" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/Or.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.05,-9344.54C865.4,-9340.39 907.01,-9339.63 931,-9364 945.09,-9378.31 924.19,-9440.45 939,-9454 987.11,-9498.03 1071.29,-9478.67 1115.5,-9464"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1116.2,-9465.98 1121.21,-9462.06 1114.85,-9462 1116.2,-9465.98"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge268" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.07,-9345.01C865.01,-9341.32 905.98,-9341 931,-9364 944.99,-9376.86 924.36,-9393.89 939,-9406 961.34,-9424.49 1040.87,-9410.65 1069.5,-9406 1085.86,-9403.35 1103.47,-9397.63 1117.52,-9392.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1118.46,-9394.22 1123.3,-9390.1 1116.95,-9390.31 1118.46,-9394.22"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge273" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.43,-9351C873.94,-9351 934.91,-9351 972.23,-9351"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.46,-9353.1 978.46,-9351 972.46,-9348.9 972.46,-9353.1"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/ComparingTag.ts -->
<g id="edge269" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/ComparingTag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.05,-9344.78C865.19,-9340.86 906.48,-9340.32 931,-9364 949.4,-9381.77 922.11,-9401.78 939,-9421 943.03,-9425.58 948.11,-9429.05 953.64,-9431.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="952.96,-9433.65 959.31,-9434 954.56,-9429.77 952.96,-9433.65"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/RegexTag.ts -->
<g id="edge271" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/RegexTag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.04,-9345.3C864.78,-9341.87 905.42,-9341.79 931,-9364 942.07,-9373.61 927.44,-9386.98 939,-9396 961.86,-9413.85 1045.26,-9411.92 1069.5,-9396 1081.65,-9388.02 1071.38,-9375.36 1082.5,-9366 1088.58,-9360.89 1096.11,-9357.46 1103.82,-9355.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1104.44,-9357.19 1109.72,-9353.65 1103.38,-9353.12 1104.44,-9357.19"/>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/SubstitutingTag.ts -->
<g id="edge272" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;Logic/Tags/SubstitutingTag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M837.23,-9352.98C862.44,-9354.91 899.24,-9358.39 931,-9364 934.61,-9364.64 935.44,-9365.15 939,-9366 945.25,-9367.5 951.85,-9369.05 958.36,-9370.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="957.97,-9372.62 964.29,-9371.92 958.92,-9368.53 957.97,-9372.62"/>
</g>
<!-- util -->
<g id="node118" class="node">
<title>util</title>
<path fill="#ffffcc" stroke="grey" d="M1026.5,-8290C1026.5,-8290 984.5,-8290 984.5,-8290 981.5,-8290 978.5,-8287 978.5,-8284 978.5,-8284 978.5,-8278 978.5,-8278 978.5,-8275 981.5,-8272 984.5,-8272 984.5,-8272 1026.5,-8272 1026.5,-8272 1029.5,-8272 1032.5,-8275 1032.5,-8278 1032.5,-8278 1032.5,-8284 1032.5,-8284 1032.5,-8287 1029.5,-8290 1026.5,-8290"/>
<text text-anchor="middle" x="1005.5" y="-8278.8" font-family="Helvetica,sans-Serif" font-size="9.00" fill="grey">util</text>
</g>
<!-- Logic/Tags/TagUtils.ts&#45;&gt;util -->
<g id="edge274" class="edge">
<title>Logic/Tags/TagUtils.ts&#45;&gt;util</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M819.27,-9341.9C845.78,-9321.38 907.88,-9268.45 931,-9207 939.88,-9183.39 923.62,-8318.99 939,-8299 946.85,-8288.8 959.91,-8284.02 972.31,-8281.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="972.67,-8283.97 978.32,-8281.06 972.09,-8279.81 972.67,-8283.97"/>
</g>
<!-- Logic/Web/LiveQueryHandler.ts -->
<g id="node119" class="node">
<title>Logic/Web/LiveQueryHandler.ts</title>
<g id="a_node119"><a xlink:href="Logic/Web/LiveQueryHandler.ts" xlink:title="LiveQueryHandler.ts">
<path fill="#ddfeff" stroke="black" d="M1053,-9090C1053,-9090 958,-9090 958,-9090 955,-9090 952,-9087 952,-9084 952,-9084 952,-9078 952,-9078 952,-9075 955,-9072 958,-9072 958,-9072 1053,-9072 1053,-9072 1056,-9072 1059,-9075 1059,-9078 1059,-9078 1059,-9084 1059,-9084 1059,-9087 1056,-9090 1053,-9090"/>
<text text-anchor="middle" x="1005.5" y="-9078.8" font-family="Helvetica,sans-Serif" font-size="9.00">LiveQueryHandler.ts</text>
</a>
</g>
</g>
<!-- Logic/Web/LiveQueryHandler.ts&#45;&gt;Utils.ts -->
<g id="edge279" class="edge">
<title>Logic/Web/LiveQueryHandler.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1059.14,-9076.08C1063.04,-9074.03 1066.59,-9071.39 1069.5,-9068 1104.48,-9027.35 1051.02,-8870.42 1082.5,-8827 1119.99,-8775.28 1180.37,-8827.68 1216.5,-8775 1226.34,-8760.65 1218.88,-3779.47 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Web/LiveQueryHandler.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge280" class="edge">
<title>Logic/Web/LiveQueryHandler.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1057.07,-9071.93C1061.32,-9070.76 1065.51,-9069.45 1069.5,-9068 1075.67,-9065.76 1076.35,-9063.3 1082.5,-9061 1085.6,-9059.84 1088.83,-9058.76 1092.1,-9057.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1092.87,-9059.72 1098.05,-9056.03 1091.7,-9055.69 1092.87,-9059.72"/>
</g>
<!-- Logic/Web/Wikipedia.ts -->
<g id="node120" class="node">
<title>Logic/Web/Wikipedia.ts</title>
<g id="a_node120"><a xlink:href="Logic/Web/Wikipedia.ts" xlink:title="Wikipedia.ts">
<path fill="#ddfeff" stroke="black" d="M1035,-9150C1035,-9150 976,-9150 976,-9150 973,-9150 970,-9147 970,-9144 970,-9144 970,-9138 970,-9138 970,-9135 973,-9132 976,-9132 976,-9132 1035,-9132 1035,-9132 1038,-9132 1041,-9135 1041,-9138 1041,-9138 1041,-9144 1041,-9144 1041,-9147 1038,-9150 1035,-9150"/>
<text text-anchor="middle" x="1005.5" y="-9138.8" font-family="Helvetica,sans-Serif" font-size="9.00">Wikipedia.ts</text>
</a>
</g>
</g>
<!-- Logic/Web/Wikipedia.ts&#45;&gt;Utils.ts -->
<g id="edge289" class="edge">
<title>Logic/Web/Wikipedia.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1041.14,-9140.52C1051.78,-9138.56 1062.52,-9134.38 1069.5,-9126 1104.69,-9083.78 1048.07,-8921.84 1082.5,-8879 1121.2,-8830.84 1179.04,-8891.13 1216.5,-8842 1227.19,-8827.98 1218.8,-3779.69 1224.5,-3763 1240.23,-3716.93 1281.12,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.87,-3655.66 1307.9,-3650.07 1302.05,-3652.55 1304.87,-3655.66"/>
</g>
<!-- Logic/Web/Wikipedia.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge290" class="edge">
<title>Logic/Web/Wikipedia.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1041.11,-9139.79C1051.5,-9137.74 1062.09,-9133.69 1069.5,-9126 1089.95,-9104.79 1061.93,-9082.09 1082.5,-9061 1085.28,-9058.15 1088.51,-9055.82 1092.01,-9053.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.13,-9055.73 1097.69,-9051.3 1091.37,-9051.92 1093.13,-9055.73"/>
</g>
<!-- Models/Denomination.ts -->
<g id="node121" class="node">
<title>Models/Denomination.ts</title>
<g id="a_node121"><a xlink:href="Models/Denomination.ts" xlink:title="Denomination.ts">
<path fill="#ddfeff" stroke="black" d="M1185,-8428C1185,-8428 1106,-8428 1106,-8428 1103,-8428 1100,-8425 1100,-8422 1100,-8422 1100,-8416 1100,-8416 1100,-8413 1103,-8410 1106,-8410 1106,-8410 1185,-8410 1185,-8410 1188,-8410 1191,-8413 1191,-8416 1191,-8416 1191,-8422 1191,-8422 1191,-8425 1188,-8428 1185,-8428"/>
<text text-anchor="middle" x="1145.5" y="-8416.8" font-family="Helvetica,sans-Serif" font-size="9.00">Denomination.ts</text>
</a>
</g>
</g>
<!-- Models/Denomination.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge292" class="edge">
<title>Models/Denomination.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1138.69,-8409.85C1125.52,-8388.49 1093.68,-8333.27 1082.5,-8282 1078,-8261.35 1082.89,-5254.36 1069.5,-5238 1064.86,-5232.33 1058.46,-5228.71 1051.5,-5226.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1051.89,-5224.4 1045.56,-5224.89 1050.82,-5228.46 1051.89,-5224.4"/>
</g>
<!-- UI/Input/Toggle.ts -->
<g id="node122" class="node">
<title>UI/Input/Toggle.ts</title>
<g id="a_node122"><a xlink:href="UI/Input/Toggle.ts" xlink:title="Toggle.ts">
<path fill="#ddfeff" stroke="black" d="M1027.5,-6360C1027.5,-6360 983.5,-6360 983.5,-6360 980.5,-6360 977.5,-6357 977.5,-6354 977.5,-6354 977.5,-6348 977.5,-6348 977.5,-6345 980.5,-6342 983.5,-6342 983.5,-6342 1027.5,-6342 1027.5,-6342 1030.5,-6342 1033.5,-6345 1033.5,-6348 1033.5,-6348 1033.5,-6354 1033.5,-6354 1033.5,-6357 1030.5,-6360 1027.5,-6360"/>
<text text-anchor="middle" x="1005.5" y="-6348.8" font-family="Helvetica,sans-Serif" font-size="9.00">Toggle.ts</text>
</a>
</g>
</g>
<!-- Models/Denomination.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge293" class="edge">
<title>Models/Denomination.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1138.7,-8409.84C1125.56,-8388.48 1093.76,-8333.25 1082.5,-8282 1062.33,-8190.24 1081.88,-6684.13 1069.5,-6591 1057.96,-6504.21 1025.03,-6403.96 1011.95,-6366.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1013.86,-6365.4 1009.89,-6360.43 1009.89,-6366.79 1013.86,-6365.4"/>
</g>
<!-- UI/Input/Toggle.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge539" class="edge">
<title>UI/Input/Toggle.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1009.9,-6360.43C1021.17,-6392.31 1057.36,-6499.18 1069.5,-6591 1099.77,-6819.9 1063.03,-8438.93 1082.5,-8669 1094.55,-8811.37 1130.04,-8981.02 1141.14,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.15,-9032.59 1142.49,-9038 1143.25,-9031.69 1139.15,-9032.59"/>
</g>
<!-- UI/Input/Toggle.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge541" class="edge">
<title>UI/Input/Toggle.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1002.67,-6341.76C991.26,-6303.96 948.61,-6157.23 935,-6033 933.59,-6020.1 931.24,-5578.42 935,-5566 936.71,-5560.34 940.11,-5556.05 944.52,-5552.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.64,-5554.58 949.68,-5549.68 943.46,-5550.99 945.64,-5554.58"/>
</g>
<!-- UI/Base/Lazy.ts -->
<g id="node138" class="node">
<title>UI/Base/Lazy.ts</title>
<g id="a_node138"><a xlink:href="UI/Base/Lazy.ts" xlink:title="Lazy.ts">
<path fill="#ddfeff" stroke="black" d="M827,-5524C827,-5524 785,-5524 785,-5524 782,-5524 779,-5521 779,-5518 779,-5518 779,-5512 779,-5512 779,-5509 782,-5506 785,-5506 785,-5506 827,-5506 827,-5506 830,-5506 833,-5509 833,-5512 833,-5512 833,-5518 833,-5518 833,-5521 830,-5524 827,-5524"/>
<text text-anchor="middle" x="806" y="-5512.8" font-family="Helvetica,sans-Serif" font-size="9.00">Lazy.ts</text>
</a>
</g>
</g>
<!-- UI/Input/Toggle.ts&#45;&gt;UI/Base/Lazy.ts -->
<g id="edge540" class="edge">
<title>UI/Input/Toggle.ts&#45;&gt;UI/Base/Lazy.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1003.47,-6341.84C996.86,-6282.57 959.9,-5947.15 939,-5673 937.79,-5657.13 941.88,-5541.61 931,-5530 908.11,-5505.59 867.76,-5505.16 839.31,-5508.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="838.73,-5506.63 833.07,-5509.52 839.3,-5510.79 838.73,-5506.63"/>
</g>
<!-- Models/ThemeConfig/DeleteConfig.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge295" class="edge">
<title>Models/ThemeConfig/DeleteConfig.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M962.66,-8598.05C949.55,-8594.57 937.55,-8587.82 933.67,-8575 930.32,-8563.94 930.32,-5257.06 933.67,-5246 937.16,-5234.46 947.56,-5228.53 959.41,-5225.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.84,-5227.71 965.31,-5224.47 959.02,-5223.59 959.84,-5227.71"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M962.7,-8599.62C950.66,-8596.69 939.88,-8590.7 936.33,-8579 932.98,-8567.91 932.98,-5253.09 936.33,-5242 939.48,-5231.61 948.59,-5226.35 959.22,-5223.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.71,-5225.97 965.25,-5222.85 958.97,-5221.83 959.71,-5225.97"/>
</g>
<!-- Models/ThemeConfig/DeleteConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge294" class="edge">
<title>Models/ThemeConfig/DeleteConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M962.85,-8602.14C953.68,-8604.45 944.94,-8608.65 939,-8616 928.68,-8628.77 936.82,-9191.65 931,-9207 909.1,-9264.8 852.85,-9315.12 824.25,-9337.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="822.66,-9336.53 819.24,-9341.89 825.26,-9339.83 822.66,-9336.53"/>
</g>
<!-- Models/ThemeConfig/FilterConfig.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge297" class="edge">
<title>Models/ThemeConfig/FilterConfig.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M966.13,-8630.54C951.69,-8627.97 937.84,-8621.79 933.67,-8608 930.28,-8596.83 930.28,-5257.17 933.67,-5246 937.16,-5234.46 947.56,-5228.53 959.41,-5225.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.84,-5227.71 965.31,-5224.47 959.02,-5223.59 959.84,-5227.71"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M966.41,-8632.14C952.91,-8630.16 940.19,-8624.75 936.33,-8612 932.94,-8600.8 932.94,-5253.2 936.33,-5242 939.48,-5231.61 948.59,-5226.35 959.22,-5223.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.71,-5225.97 965.25,-5222.85 958.97,-5221.83 959.71,-5225.97"/>
</g>
<!-- Models/ThemeConfig/FilterConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge296" class="edge">
<title>Models/ThemeConfig/FilterConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M997.35,-8640.1C982.97,-8659.04 950.9,-8704.64 939,-8749 925.81,-8798.16 949.13,-9159.44 931,-9207 908.99,-9264.75 852.79,-9315.09 824.22,-9337.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="822.64,-9336.52 819.23,-9341.89 825.24,-9339.82 822.64,-9336.52"/>
</g>
<!-- Models/Unit.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge347" class="edge">
<title>Models/Unit.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M978.38,-8417.32C960.42,-8414.49 939.19,-8407.24 933.67,-8389 930.86,-8379.72 930.86,-5607.28 933.67,-5598 937.75,-5584.51 951.1,-5578.3 965.2,-5575.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5577.68 971.26,-5574.69 965.01,-5573.53 965.65,-5577.68"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M978.23,-8418.32C961.16,-8416.18 941.46,-8409.94 936.33,-8393 933.52,-8383.7 933.52,-5603.3 936.33,-5594 940.09,-5581.6 952.22,-5576.14 965.3,-5574.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5576.1 971.35,-5573.28 965.13,-5571.93 965.65,-5576.1"/>
</g>
<!-- Models/Unit.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge348" class="edge">
<title>Models/Unit.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.72,-8416.74C1045.98,-8414.12 1061.03,-8408.6 1069.5,-8397 1080.33,-8382.18 1139.05,-5869.3 1144.15,-5650.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.25,-5650.19 1144.29,-5644.14 1142.05,-5650.09 1146.25,-5650.19"/>
</g>
<!-- Models/Unit.ts&#45;&gt;Models/Denomination.ts -->
<g id="edge349" class="edge">
<title>Models/Unit.ts&#45;&gt;Models/Denomination.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1032.78,-8419C1050.01,-8419 1073.09,-8419 1093.8,-8419"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1093.85,-8421.1 1099.85,-8419 1093.85,-8416.9 1093.85,-8421.1"/>
</g>
<!-- Models/ThemeConfig/LineRenderingConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts -->
<g id="edge324" class="edge">
<title>Models/ThemeConfig/LineRenderingConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1057.51,-8547.9C1061.71,-8546.25 1065.77,-8544.3 1069.5,-8542 1096.89,-8525.13 1119.22,-8494.82 1132.19,-8474.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1138.17,-8468.45 1139.47,-8462.23 1134.57,-8466.29 1138.17,-8468.45"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1136.37,-8467.37 1134.82,-8469.94 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1133.58" cy="-8472" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/LineRenderingConfig.ts&#45;&gt;Utils.ts -->
<g id="edge323" class="edge">
<title>Models/ThemeConfig/LineRenderingConfig.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1062.77,-8547.97C1065.24,-8546.27 1067.51,-8544.29 1069.5,-8542 1079.95,-8529.94 1081.03,-8414.89 1082.5,-8399 1140.95,-7768.23 1185.9,-7612.73 1216.5,-6980 1217.58,-6957.69 1217.27,-3784.14 1224.5,-3763 1240.25,-3716.94 1281.14,-3674.69 1303.44,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.88,-3655.66 1307.91,-3650.08 1302.05,-3652.56 1304.88,-3655.66"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts -->
<g id="edge334" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Models/ThemeConfig/WithContextLoader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1057.15,-8517.97C1061.47,-8516.3 1065.65,-8514.33 1069.5,-8512 1077.04,-8507.42 1075.97,-8502.93 1082.5,-8497 1093.37,-8487.14 1106.49,-8477.55 1117.85,-8469.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.87,-8467.1 1129.73,-8462.05 1123.56,-8463.58 1125.87,-8467.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1124.71,-8465.34 1122.21,-8466.99 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1120.2" cy="-8468.3" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Utils.ts -->
<g id="edge332" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.15,-8517.87C1065.49,-8516.19 1067.63,-8514.25 1069.5,-8512 1075.82,-8504.41 1216.22,-5682.87 1216.5,-5673 1217.24,-5646.48 1215.9,-3788.09 1224.5,-3763 1240.29,-3716.95 1281.16,-3674.7 1303.45,-3654.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.89,-3655.67 1307.91,-3650.08 1302.06,-3652.56 1304.89,-3655.67"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Customizations/SharedTagRenderings.ts -->
<g id="edge325" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Customizations/SharedTagRenderings.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.29,-8517.98C1065.59,-8516.27 1067.68,-8514.29 1069.5,-8512 1087.41,-8489.4 1071.53,-4386.67 1082.5,-4360 1090,-4341.78 1105.57,-4325.99 1119.23,-4314.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1127.01,-4311.46 1130.49,-4306.15 1124.45,-4308.13 1127.01,-4311.46"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1125.73,-4309.8 1123.35,-4311.62 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1121.44" cy="-4313.08" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge328" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M943.61,-8517.82C939,-8514.39 935.45,-8509.89 933.67,-8504 930.74,-8494.34 930.74,-5607.66 933.67,-5598 937.75,-5584.51 951.1,-5578.3 965.2,-5575.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5577.68 971.26,-5574.69 965.01,-5573.53 965.65,-5577.68"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M942.93,-8518.53C939.93,-8515.75 937.63,-8512.29 936.33,-8508 933.4,-8498.32 933.4,-5603.68 936.33,-5594 940.09,-5581.6 952.22,-5576.14 965.3,-5574.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.65,-5576.1 971.35,-5573.28 965.13,-5571.93 965.65,-5576.1"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge333" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1044.76,-8517.93C1100.58,-8504.69 1204.49,-8480.04 1266.99,-8465.22"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1275.06,-8465.46 1280.42,-8462.03 1274.1,-8461.37 1275.06,-8465.46"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1274.58,-8463.42 1271.66,-8464.11 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1269.33" cy="-8464.66" rx="2.4" ry="2.4"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Svg.ts -->
<g id="edge327" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M942.79,-8517.82C939.22,-8514.76 936.48,-8510.89 935,-8506 926.5,-8477.93 934.2,-4312.32 935,-4283 949.32,-3757.03 996.31,-3112.14 1004.33,-3004.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1006.45,-3004.39 1004.8,-2998.25 1002.26,-3004.08 1006.45,-3004.39"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge330" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M943.61,-8517.82C939,-8514.39 935.45,-8509.89 933.67,-8504 930.68,-8494.14 930.68,-5547.86 933.67,-5538 938.74,-5521.26 955.91,-5512.05 972.19,-5507"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.92,-5508.98 978.12,-5505.33 971.78,-5504.94 972.92,-5508.98"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M942.93,-8518.53C939.93,-8515.75 937.63,-8512.29 936.33,-8508 933.34,-8498.12 933.34,-5543.88 936.33,-5534 941.03,-5518.49 956.92,-5510.26 972.29,-5505.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.05,-5507.88 978.35,-5504.37 972.02,-5503.81 973.05,-5507.88"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge329" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1063.22,-8517.93C1065.54,-8516.23 1067.66,-8514.27 1069.5,-8512 1075.53,-8504.57 1138.76,-5874.45 1144.14,-5650.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.24,-5650.06 1144.28,-5644.01 1142.04,-5649.96 1146.24,-5650.06"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge326" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M945.23,-8536.05C942.93,-8537.76 940.83,-8539.73 939,-8542 927.4,-8556.38 937.53,-9189.72 931,-9207 909.14,-9264.81 852.87,-9315.13 824.26,-9337.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="822.67,-9336.54 819.25,-9341.9 825.27,-9339.84 822.67,-9336.54"/>
</g>
<!-- Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge331" class="edge">
<title>Models/ThemeConfig/PointRenderingConfig.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M943.61,-8517.82C939,-8514.39 935.45,-8509.89 933.67,-8504 930.71,-8494.24 930.71,-5577.76 933.67,-5568 935.55,-5561.8 939.38,-5557.13 944.35,-5553.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.55,-5555.38 949.67,-5550.53 943.43,-5551.75 945.55,-5555.38"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M942.93,-8518.53C939.93,-8515.75 937.63,-8512.29 936.33,-8508 933.37,-8498.22 933.37,-5573.78 936.33,-5564 937.86,-5558.97 940.75,-5555.08 944.54,-5552.1"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.82,-5553.77 949.76,-5548.78 943.57,-5550.23 945.82,-5553.77"/>
</g>
<!-- Models/ThemeConfig/SourceConfig.ts&#45;&gt;Logic/Tags/RegexTag.ts -->
<g id="edge335" class="edge">
<title>Models/ThemeConfig/SourceConfig.ts&#45;&gt;Logic/Tags/RegexTag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1049.18,-8469.22C1057.03,-8471.63 1064.36,-8475.6 1069.5,-8482 1098.95,-8518.71 1055.06,-9290.77 1082.5,-9329 1087.75,-9336.31 1095.64,-9341.21 1104.05,-9344.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1103.58,-9346.54 1109.93,-9346.5 1104.94,-9342.56 1103.58,-9346.54"/>
</g>
<!-- UI/i18n/Translation.ts&#45;&gt;Utils.ts -->
<g id="edge854" class="edge">
<title>UI/i18n/Translation.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1147.66,-5215.9C1155.48,-5154.11 1200.66,-4789.48 1216.5,-4491 1217.57,-4470.8 1217.88,-3782.11 1224.5,-3763 1240.45,-3717.01 1281.25,-3674.73 1303.49,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.92,-3655.68 1307.94,-3650.09 1302.09,-3652.58 1304.92,-3655.68"/>
</g>
<!-- UI/i18n/Translation.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge856" class="edge">
<title>UI/i18n/Translation.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1183.82,-5225C1213.95,-5225 1255.96,-5225 1285.02,-5225"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1285.38,-5227.1 1291.38,-5225 1285.38,-5222.9 1285.38,-5227.1"/>
</g>
<!-- UI/i18n/Translation.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge855" class="edge">
<title>UI/i18n/Translation.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1183.56,-5224.64C1195.28,-5226.29 1207.5,-5230.07 1216.5,-5238 1225.25,-5245.71 1220.58,-5252.01 1224.5,-5263 1254.86,-5348.03 1296.26,-5448.06 1312.04,-5485.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1310.25,-5486.85 1314.51,-5491.56 1314.12,-5485.22 1310.25,-5486.85"/>
</g>
<!-- Models/ThemeConfig/TilesourceConfig.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge343" class="edge">
<title>Models/ThemeConfig/TilesourceConfig.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M856.31,-8462.01C882.4,-8463.71 912.72,-8460.24 931,-8440 945.9,-8423.5 924.87,-5255.17 939,-5238 944.17,-5231.72 951.42,-5227.91 959.22,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.28,-5224.27 958.95,-5223.59 959.91,-5227.68"/>
</g>
<!-- Models/ThemeConfig/LegacyJsonConvert.ts -->
<g id="node132" class="node">
<title>Models/ThemeConfig/LegacyJsonConvert.ts</title>
<g id="a_node132"><a xlink:href="Models/ThemeConfig/LegacyJsonConvert.ts" xlink:title="LegacyJsonConvert.ts">
<path fill="#ddfeff" stroke="black" d="M625,-8492C625,-8492 523,-8492 523,-8492 520,-8492 517,-8489 517,-8486 517,-8486 517,-8480 517,-8480 517,-8477 520,-8474 523,-8474 523,-8474 625,-8474 625,-8474 628,-8474 631,-8477 631,-8480 631,-8480 631,-8486 631,-8486 631,-8489 628,-8492 625,-8492"/>
<text text-anchor="middle" x="574" y="-8480.8" font-family="Helvetica,sans-Serif" font-size="9.00">LegacyJsonConvert.ts</text>
</a>
</g>
</g>
<!-- UI/Base/VariableUIElement.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge391" class="edge">
<title>UI/Base/VariableUIElement.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1061.2,-5537.29C1118.53,-5529.2 1208.02,-5516.58 1264.93,-5508.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1265.37,-5510.61 1271.02,-5507.7 1264.78,-5506.46 1265.37,-5510.61"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;Utils.ts -->
<g id="edge546" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.76,-6551.7C592.23,-6502.34 659.58,-6265.84 681,-6067 682.83,-6050.06 677.95,-3625.98 689,-3613 759.66,-3529.98 859.87,-3655.61 931,-3573 950.58,-3550.26 917.63,-3054.06 939,-3033 960.96,-3011.36 1192.96,-3013.08 1216.5,-3033 1310.46,-3112.51 1317.92,-3539.95 1318.46,-3625.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.36,-3625.95 1318.49,-3631.94 1320.56,-3625.93 1316.36,-3625.95"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge547" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.67,-6570.11C587.2,-6627.68 645.04,-6946.99 681,-7209 683.19,-7224.95 677,-7270.26 689,-7281 699.02,-7289.97 921.47,-7290.48 931,-7281 947.65,-7264.43 924.32,-5608.33 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.57 971.35,-5574.47 965.08,-5573.43 965.8,-5577.57"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge549" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.72,-6570.1C587.53,-6627.63 646.79,-6946.75 681,-7209 682.18,-7218.08 682.22,-7284.85 689,-7291 728.83,-7327.13 892.82,-7328.87 931,-7291 940.47,-7281.61 938.32,-6344.32 939,-6331 953.02,-6056.86 993.39,-5723.85 1002.61,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.7,-5650.22 1003.36,-5644.01 1000.53,-5649.7 1004.7,-5650.22"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts -->
<g id="edge542" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.04,-6570.07C589.82,-6627.39 658.99,-6945.45 681,-7209 682.02,-7221.21 680.89,-8964.81 689,-8974 701.91,-8988.62 721.47,-8994.38 740.86,-8995.87"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.76,-8997.97 746.87,-8996.2 740.99,-8993.78 740.76,-8997.97"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge544" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.76,-6551.7C592.23,-6502.34 659.57,-6265.84 681,-6067 682.79,-6050.36 677.15,-3668.81 689,-3657 718.97,-3627.13 1041.2,-3640.55 1069.5,-3672 1081.11,-3684.9 1081.07,-8651.71 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge543" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.76,-6551.7C592.23,-6502.34 659.57,-6265.84 681,-6067 682.76,-6050.64 677.34,-3708.62 689,-3697 727.09,-3659.04 888.01,-3664.7 931,-3697 1107.83,-3829.87 1038.19,-3956.04 1069.5,-4175 1075.77,-4218.82 1061.28,-10510.15 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.28,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge545" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.76,-6551.7C592.23,-6502.34 659.56,-6265.84 681,-6067 682.74,-6050.86 677.5,-3740.46 689,-3729 727.09,-3691.04 892.95,-3691 931,-3729 944.19,-3742.17 927.38,-9081.43 939,-9096 945.51,-9104.16 955.47,-9108.44 965.67,-9110.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.41,-9112.66 971.68,-9111.59 966.11,-9108.52 965.41,-9112.66"/>
</g>
<!-- UI/Base/Table.ts -->
<g id="node144" class="node">
<title>UI/Base/Table.ts</title>
<g id="a_node144"><a xlink:href="UI/Base/Table.ts" xlink:title="Table.ts">
<path fill="#ddfeff" stroke="black" d="M827,-5584C827,-5584 785,-5584 785,-5584 782,-5584 779,-5581 779,-5578 779,-5578 779,-5572 779,-5572 779,-5569 782,-5566 785,-5566 785,-5566 827,-5566 827,-5566 830,-5566 833,-5569 833,-5572 833,-5572 833,-5578 833,-5578 833,-5581 830,-5584 827,-5584"/>
<text text-anchor="middle" x="806" y="-5572.8" font-family="Helvetica,sans-Serif" font-size="9.00">Table.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Table.ts -->
<g id="edge548" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Base/Table.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.68,-6551.88C597.32,-6516.94 659.86,-6387.75 681,-6273 684.44,-6254.34 676.39,-5604.18 689,-5590 709.37,-5567.1 746.03,-5565.99 772.7,-5568.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.69,-5571.05 778.91,-5569.71 773.21,-5566.88 772.69,-5571.05"/>
</g>
<!-- UI/Input/DropDown.ts -->
<g id="node151" class="node">
<title>UI/Input/DropDown.ts</title>
<g id="a_node151"><a xlink:href="UI/Input/DropDown.ts" xlink:title="DropDown.ts">
<path fill="#ddfeff" stroke="black" d="M837.5,-6660C837.5,-6660 774.5,-6660 774.5,-6660 771.5,-6660 768.5,-6657 768.5,-6654 768.5,-6654 768.5,-6648 768.5,-6648 768.5,-6645 771.5,-6642 774.5,-6642 774.5,-6642 837.5,-6642 837.5,-6642 840.5,-6642 843.5,-6645 843.5,-6648 843.5,-6648 843.5,-6654 843.5,-6654 843.5,-6657 840.5,-6660 837.5,-6660"/>
<text text-anchor="middle" x="806" y="-6648.8" font-family="Helvetica,sans-Serif" font-size="9.00">DropDown.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/DropDown.ts -->
<g id="edge555" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/DropDown.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.11,-6570.01C604,-6586.26 646.58,-6620.26 689,-6636 712.32,-6644.65 739.88,-6648.46 762.28,-6650.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.33,-6652.18 768.46,-6650.48 762.61,-6647.99 762.33,-6652.18"/>
</g>
<!-- UI/Input/ColorPicker.ts -->
<g id="node164" class="node">
<title>UI/Input/ColorPicker.ts</title>
<g id="a_node164"><a xlink:href="UI/Input/ColorPicker.ts" xlink:title="ColorPicker.ts">
<path fill="#ddfeff" stroke="black" d="M838,-6690C838,-6690 774,-6690 774,-6690 771,-6690 768,-6687 768,-6684 768,-6684 768,-6678 768,-6678 768,-6675 771,-6672 774,-6672 774,-6672 838,-6672 838,-6672 841,-6672 844,-6675 844,-6678 844,-6678 844,-6684 844,-6684 844,-6687 841,-6690 838,-6690"/>
<text text-anchor="middle" x="806" y="-6678.8" font-family="Helvetica,sans-Serif" font-size="9.00">ColorPicker.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/ColorPicker.ts -->
<g id="edge552" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/ColorPicker.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M581.74,-6570.29C597.66,-6591.45 639.99,-6643.14 689,-6666 711.54,-6676.51 739.07,-6680.4 761.65,-6681.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="761.79,-6683.7 767.88,-6681.86 761.97,-6679.51 761.79,-6683.7"/>
</g>
<!-- UI/Input/CombinedInputElement.ts -->
<g id="node165" class="node">
<title>UI/Input/CombinedInputElement.ts</title>
<g id="a_node165"><a xlink:href="UI/Input/CombinedInputElement.ts" xlink:title="CombinedInputElement.ts">
<path fill="#ddfeff" stroke="black" d="M868,-6780C868,-6780 744,-6780 744,-6780 741,-6780 738,-6777 738,-6774 738,-6774 738,-6768 738,-6768 738,-6765 741,-6762 744,-6762 744,-6762 868,-6762 868,-6762 871,-6762 874,-6765 874,-6768 874,-6768 874,-6774 874,-6774 874,-6777 871,-6780 868,-6780"/>
<text text-anchor="middle" x="806" y="-6768.8" font-family="Helvetica,sans-Serif" font-size="9.00">CombinedInputElement.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/CombinedInputElement.ts -->
<g id="edge553" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/CombinedInputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.31,-6570.37C585.78,-6602.56 618.39,-6709.21 689,-6756 701.63,-6764.37 716.75,-6769.13 731.83,-6771.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="731.58,-6773.77 737.83,-6772.58 732.21,-6769.62 731.58,-6773.77"/>
</g>
<!-- UI/Input/DirectionInput.ts -->
<g id="node166" class="node">
<title>UI/Input/DirectionInput.ts</title>
<g id="a_node166"><a xlink:href="UI/Input/DirectionInput.ts" xlink:title="DirectionInput.ts">
<path fill="#ddfeff" stroke="black" d="M846.5,-6450C846.5,-6450 765.5,-6450 765.5,-6450 762.5,-6450 759.5,-6447 759.5,-6444 759.5,-6444 759.5,-6438 759.5,-6438 759.5,-6435 762.5,-6432 765.5,-6432 765.5,-6432 846.5,-6432 846.5,-6432 849.5,-6432 852.5,-6435 852.5,-6438 852.5,-6438 852.5,-6444 852.5,-6444 852.5,-6447 849.5,-6450 846.5,-6450"/>
<text text-anchor="middle" x="806" y="-6438.8" font-family="Helvetica,sans-Serif" font-size="9.00">DirectionInput.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/DirectionInput.ts -->
<g id="edge554" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/DirectionInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M581.74,-6551.71C597.66,-6530.55 639.99,-6478.86 689,-6456 708.85,-6446.74 732.56,-6442.62 753.36,-6440.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="753.59,-6443.04 759.43,-6440.53 753.3,-6438.85 753.59,-6443.04"/>
</g>
<!-- UI/Input/FixedInputElement.ts -->
<g id="node167" class="node">
<title>UI/Input/FixedInputElement.ts</title>
<g id="a_node167"><a xlink:href="UI/Input/FixedInputElement.ts" xlink:title="FixedInputElement.ts">
<path fill="#ddfeff" stroke="black" d="M856.5,-6480C856.5,-6480 755.5,-6480 755.5,-6480 752.5,-6480 749.5,-6477 749.5,-6474 749.5,-6474 749.5,-6468 749.5,-6468 749.5,-6465 752.5,-6462 755.5,-6462 755.5,-6462 856.5,-6462 856.5,-6462 859.5,-6462 862.5,-6465 862.5,-6468 862.5,-6468 862.5,-6474 862.5,-6474 862.5,-6477 859.5,-6480 856.5,-6480"/>
<text text-anchor="middle" x="806" y="-6468.8" font-family="Helvetica,sans-Serif" font-size="9.00">FixedInputElement.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/FixedInputElement.ts -->
<g id="edge556" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/FixedInputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.11,-6551.99C604,-6535.74 646.58,-6501.74 689,-6486 706.1,-6479.65 725.49,-6475.92 743.45,-6473.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="743.76,-6475.81 749.48,-6473.05 743.28,-6471.64 743.76,-6475.81"/>
</g>
<!-- UI/Input/LengthInput.ts -->
<g id="node170" class="node">
<title>UI/Input/LengthInput.ts</title>
<g id="a_node170"><a xlink:href="UI/Input/LengthInput.ts" xlink:title="LengthInput.ts">
<path fill="#ddfeff" stroke="black" d="M842.5,-6420C842.5,-6420 769.5,-6420 769.5,-6420 766.5,-6420 763.5,-6417 763.5,-6414 763.5,-6414 763.5,-6408 763.5,-6408 763.5,-6405 766.5,-6402 769.5,-6402 769.5,-6402 842.5,-6402 842.5,-6402 845.5,-6402 848.5,-6405 848.5,-6408 848.5,-6408 848.5,-6414 848.5,-6414 848.5,-6417 845.5,-6420 842.5,-6420"/>
<text text-anchor="middle" x="806" y="-6408.8" font-family="Helvetica,sans-Serif" font-size="9.00">LengthInput.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/LengthInput.ts -->
<g id="edge557" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/LengthInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.61,-6551.76C592.73,-6526.57 632.98,-6456.54 689,-6426 709.62,-6414.76 735.27,-6410.62 757.21,-6409.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="757.39,-6411.54 763.3,-6409.19 757.21,-6407.35 757.39,-6411.54"/>
</g>
<!-- UI/Input/SimpleDatePicker.ts -->
<g id="node173" class="node">
<title>UI/Input/SimpleDatePicker.ts</title>
<g id="a_node173"><a xlink:href="UI/Input/SimpleDatePicker.ts" xlink:title="SimpleDatePicker.ts">
<path fill="#ddfeff" stroke="black" d="M852.5,-6720C852.5,-6720 759.5,-6720 759.5,-6720 756.5,-6720 753.5,-6717 753.5,-6714 753.5,-6714 753.5,-6708 753.5,-6708 753.5,-6705 756.5,-6702 759.5,-6702 759.5,-6702 852.5,-6702 852.5,-6702 855.5,-6702 858.5,-6705 858.5,-6708 858.5,-6708 858.5,-6714 858.5,-6714 858.5,-6717 855.5,-6720 852.5,-6720"/>
<text text-anchor="middle" x="806" y="-6708.8" font-family="Helvetica,sans-Serif" font-size="9.00">SimpleDatePicker.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/SimpleDatePicker.ts -->
<g id="edge558" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/SimpleDatePicker.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.61,-6570.24C592.73,-6595.43 632.98,-6665.46 689,-6696 706.61,-6705.6 727.9,-6710.03 747.41,-6711.84"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="747.26,-6713.93 753.4,-6712.32 747.59,-6709.75 747.26,-6713.93"/>
</g>
<!-- UI/Input/TextField.ts -->
<g id="node174" class="node">
<title>UI/Input/TextField.ts</title>
<g id="a_node174"><a xlink:href="UI/Input/TextField.ts" xlink:title="TextField.ts">
<path fill="#ddfeff" stroke="black" d="M833,-6750C833,-6750 779,-6750 779,-6750 776,-6750 773,-6747 773,-6744 773,-6744 773,-6738 773,-6738 773,-6735 776,-6732 779,-6732 779,-6732 833,-6732 833,-6732 836,-6732 839,-6735 839,-6738 839,-6738 839,-6744 839,-6744 839,-6747 836,-6750 833,-6750"/>
<text text-anchor="middle" x="806" y="-6738.8" font-family="Helvetica,sans-Serif" font-size="9.00">TextField.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/TextField.ts -->
<g id="edge559" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Input/TextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.21,-6570.13C588.81,-6598.81 625.67,-6687.4 689,-6726 712.16,-6740.12 742.73,-6743.59 766.67,-6743.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.94,-6745.77 772.92,-6743.62 766.9,-6741.57 766.94,-6745.77"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts -->
<g id="node175" class="node">
<title>UI/OpeningHours/OpeningHoursInput.ts</title>
<g id="a_node175"><a xlink:href="UI/OpeningHours/OpeningHoursInput.ts" xlink:title="OpeningHoursInput.ts">
<path fill="#ddfeff" stroke="black" d="M280,-7552C280,-7552 175,-7552 175,-7552 172,-7552 169,-7549 169,-7546 169,-7546 169,-7540 169,-7540 169,-7537 172,-7534 175,-7534 175,-7534 280,-7534 280,-7534 283,-7534 286,-7537 286,-7540 286,-7540 286,-7546 286,-7546 286,-7549 283,-7552 280,-7552"/>
<text text-anchor="middle" x="227.5" y="-7540.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHoursInput.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/OpeningHours/OpeningHoursInput.ts -->
<g id="edge550" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/OpeningHours/OpeningHoursInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M571.33,-6570.11C560.8,-6627.68 502.96,-6946.99 467,-7209 462.62,-7240.9 472.01,-7251.55 459,-7281 457.32,-7284.81 288.44,-7475.4 240.85,-7529.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="239.05,-7527.94 236.64,-7533.83 242.19,-7530.73 239.05,-7527.94"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts -->
<g id="node176" class="node">
<title>UI/Wikipedia/WikidataSearchBox.ts</title>
<g id="a_node176"><a xlink:href="UI/Wikipedia/WikidataSearchBox.ts" xlink:title="WikidataSearchBox.ts">
<path fill="#ddfeff" stroke="black" d="M433,-7252C433,-7252 331,-7252 331,-7252 328,-7252 325,-7249 325,-7246 325,-7246 325,-7240 325,-7240 325,-7237 328,-7234 331,-7234 331,-7234 433,-7234 433,-7234 436,-7234 439,-7237 439,-7240 439,-7240 439,-7246 439,-7246 439,-7249 436,-7252 433,-7252"/>
<text text-anchor="middle" x="382" y="-7240.8" font-family="Helvetica,sans-Serif" font-size="9.00">WikidataSearchBox.ts</text>
</a>
</g>
</g>
<!-- UI/Input/ValidatedTextField.ts&#45;&gt;UI/Wikipedia/WikidataSearchBox.ts -->
<g id="edge551" class="edge">
<title>UI/Input/ValidatedTextField.ts&#45;&gt;UI/Wikipedia/WikidataSearchBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M570.4,-6570.33C549.8,-6644.28 413.05,-7135.15 387.21,-7227.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="385.13,-7227.53 385.54,-7233.87 389.18,-7228.66 385.13,-7227.53"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;Utils.ts -->
<g id="edge805" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.58,-4553.94C230.2,-4374.56 256.04,-1590.4 305,-1525 350.32,-1464.47 393.21,-1489.53 467,-1473 513.8,-1462.52 648.44,-1480.21 681,-1445 692.63,-1432.42 676.57,-1302.8 689,-1291 859.02,-1129.58 1047.17,-1128.86 1216.5,-1291 1306.32,-1377 1317.56,-3427.38 1318.44,-3625.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.34,-3625.9 1318.46,-3631.89 1320.54,-3625.88 1316.34,-3625.9"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge806" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M245.91,-4572.06C261.09,-4579.51 283.92,-4589.69 305,-4595 338.34,-4603.39 435.48,-4584.92 459,-4610 477.48,-4629.71 448.39,-4833.42 467,-4853 502.64,-4890.5 895.75,-4854.13 931,-4892 943.64,-4905.58 927.35,-5545.56 939,-5560 945.49,-5568.05 955.34,-5572.32 965.43,-5574.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.12,-5576.54 971.39,-5575.5 965.83,-5572.4 965.12,-5576.54"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge810" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M292.18,-4559.99C356.3,-4557.65 447.35,-4556.47 459,-4568 478.68,-4587.47 447.56,-4797.3 467,-4817 469.27,-4819.3 927.79,-4837.68 931,-4838 992.96,-4844.08 1016.81,-4825.83 1069.5,-4859 1211.96,-4948.7 1292.94,-5152.88 1313.34,-5209.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1311.45,-5210.9 1315.43,-5215.87 1315.42,-5209.51 1311.45,-5210.9"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;State.ts -->
<g id="edge804" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.49,-4553.85C228.35,-4388.46 227.72,-2034.13 305,-1915 383.02,-1794.73 829.08,-1658.17 931,-1759 938.31,-1766.23 937.64,-2488.81 939,-2499 950.52,-2585.39 981.84,-2684.58 996.6,-2728.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="997.21,-2736.56 1001.15,-2741.55 1001.19,-2735.2 997.21,-2736.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.2,-2735.88 998.23,-2733.04 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="997.45" cy="-2730.77" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge807" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M292.26,-4567.23C359.48,-4571.85 456.12,-4578.97 459,-4582 477.78,-4601.73 447.99,-4807.5 467,-4827 485.02,-4845.49 910.08,-4838.86 931,-4854 1066.85,-4952.33 1024.08,-5043.56 1069.5,-5205 1081.06,-5246.08 1130.33,-5547.73 1142.01,-5619.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.99,-5620.28 1143.02,-5625.87 1144.13,-5619.61 1139.99,-5620.28"/>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge808" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M263.76,-4572.09C276.68,-4575.21 291.44,-4578.53 305,-4581 338.95,-4587.18 435.79,-4575.46 459,-4601 476.94,-4620.75 448.51,-4821.76 467,-4841 502.82,-4878.27 895.57,-4837.36 931,-4875 943.2,-4887.97 929.19,-5501.14 939,-5516 943.95,-5523.51 951.33,-5529.09 959.38,-5533.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.7,-5535.23 965.03,-5535.87 960.48,-5531.43 958.7,-5535.23"/>
</g>
<!-- UI/SpecialVisualizations.ts -->
<g id="node149" class="node">
<title>UI/SpecialVisualizations.ts</title>
<g id="a_node149"><a xlink:href="UI/SpecialVisualizations.ts" xlink:title="SpecialVisualizations.ts">
<path fill="#ddfeff" stroke="black" d="M436,-5813C436,-5813 328,-5813 328,-5813 325,-5813 322,-5810 322,-5807 322,-5807 322,-5801 322,-5801 322,-5798 325,-5795 328,-5795 328,-5795 436,-5795 436,-5795 439,-5795 442,-5798 442,-5801 442,-5801 442,-5807 442,-5807 442,-5810 439,-5813 436,-5813"/>
<text text-anchor="middle" x="382" y="-5801.8" font-family="Helvetica,sans-Serif" font-size="9.00">SpecialVisualizations.ts</text>
</a>
</g>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/SpecialVisualizations.ts -->
<g id="edge811" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/SpecialVisualizations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M242.98,-4572.11C258.34,-4582.7 281.75,-4601.73 292,-4625 310.01,-4665.9 302.1,-4982.4 305,-5027 324.41,-5325.57 366.85,-5686.96 378.18,-5780.84"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="377.06,-5789.08 379.87,-5794.78 381.23,-5788.57 377.06,-5789.08"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="379.15,-5788.83 378.78,-5785.85 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="378.5" cy="-5783.47" rx="2.4" ry="2.4"/>
</g>
<!-- UI/DefaultGuiState.ts -->
<g id="node154" class="node">
<title>UI/DefaultGuiState.ts</title>
<g id="a_node154"><a xlink:href="UI/DefaultGuiState.ts" xlink:title="DefaultGuiState.ts">
<path fill="#ddfeff" stroke="black" d="M425.5,-4522C425.5,-4522 338.5,-4522 338.5,-4522 335.5,-4522 332.5,-4519 332.5,-4516 332.5,-4516 332.5,-4510 332.5,-4510 332.5,-4507 335.5,-4504 338.5,-4504 338.5,-4504 425.5,-4504 425.5,-4504 428.5,-4504 431.5,-4507 431.5,-4510 431.5,-4510 431.5,-4516 431.5,-4516 431.5,-4519 428.5,-4522 425.5,-4522"/>
<text text-anchor="middle" x="382" y="-4510.8" font-family="Helvetica,sans-Serif" font-size="9.00">DefaultGuiState.ts</text>
</a>
</g>
</g>
<!-- UI/SubstitutedTranslation.ts&#45;&gt;UI/DefaultGuiState.ts -->
<g id="edge809" class="edge">
<title>UI/SubstitutedTranslation.ts&#45;&gt;UI/DefaultGuiState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M247.66,-4553.95C262.94,-4546.99 285.01,-4537.5 305,-4531 313.38,-4528.27 322.41,-4525.77 331.21,-4523.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="331.93,-4525.54 337.25,-4522.07 330.93,-4521.46 331.93,-4525.54"/>
</g>
<!-- UI/Base/Button.ts -->
<g id="node136" class="node">
<title>UI/Base/Button.ts</title>
<g id="a_node136"><a xlink:href="UI/Base/Button.ts" xlink:title="Button.ts">
<path fill="#ddfeff" stroke="black" d="M829.5,-5434C829.5,-5434 782.5,-5434 782.5,-5434 779.5,-5434 776.5,-5431 776.5,-5428 776.5,-5428 776.5,-5422 776.5,-5422 776.5,-5419 779.5,-5416 782.5,-5416 782.5,-5416 829.5,-5416 829.5,-5416 832.5,-5416 835.5,-5419 835.5,-5422 835.5,-5422 835.5,-5428 835.5,-5428 835.5,-5431 832.5,-5434 829.5,-5434"/>
<text text-anchor="middle" x="806" y="-5422.8" font-family="Helvetica,sans-Serif" font-size="9.00">Button.ts</text>
</a>
</g>
</g>
<!-- UI/Base/Button.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge354" class="edge">
<title>UI/Base/Button.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M835.74,-5430.9C864.32,-5434.92 907.24,-5435.58 931,-5410 944.02,-5395.98 926.52,-5252.5 939,-5238 944.3,-5231.84 951.62,-5228.08 959.44,-5225.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.13,-5227.86 965.5,-5224.46 959.18,-5223.77 960.13,-5227.86"/>
</g>
<!-- UI/Base/Button.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge353" class="edge">
<title>UI/Base/Button.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M835.59,-5430.76C864.05,-5434.66 906.88,-5435.24 931,-5410 947.32,-5392.92 921.68,-5320.06 939,-5304 961.61,-5283.03 1190.16,-5287.98 1216.5,-5304 1284,-5345.06 1308.82,-5446.81 1316.01,-5485.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1313.98,-5486.16 1317.09,-5491.7 1318.11,-5485.43 1313.98,-5486.16"/>
</g>
<!-- UI/BaseUIElement.ts&#45;&gt;Utils.ts -->
<g id="edge392" class="edge">
<title>UI/BaseUIElement.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1314.14,-5491.65C1296.36,-5460 1239.33,-5353.47 1220.5,-5257 1216.54,-5236.72 1214.51,-3788.78 1220.5,-3769 1235.4,-3719.8 1279.58,-3675.54 1303.57,-3654.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1305.22,-3655.64 1308.36,-3650.11 1302.46,-3652.47 1305.22,-3655.64"/>
</g>
<!-- UI/Base/Lazy.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge361" class="edge">
<title>UI/Base/Lazy.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.13,-5520.53C861.65,-5524.87 906.53,-5526.4 931,-5500 944.53,-5485.4 924.61,-5334.76 939,-5321 961.28,-5299.69 1189.86,-5305.48 1216.5,-5321 1279.31,-5357.6 1306.56,-5448.85 1315.22,-5485.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1313.24,-5486.24 1316.62,-5491.62 1317.34,-5485.3 1313.24,-5486.24"/>
</g>
<!-- UI/Base/Loading.ts -->
<g id="node139" class="node">
<title>UI/Base/Loading.ts</title>
<g id="a_node139"><a xlink:href="UI/Base/Loading.ts" xlink:title="Loading.ts">
<path fill="#ddfeff" stroke="black" d="M832,-5554C832,-5554 780,-5554 780,-5554 777,-5554 774,-5551 774,-5548 774,-5548 774,-5542 774,-5542 774,-5539 777,-5536 780,-5536 780,-5536 832,-5536 832,-5536 835,-5536 838,-5539 838,-5542 838,-5542 838,-5548 838,-5548 838,-5551 835,-5554 832,-5554"/>
<text text-anchor="middle" x="806" y="-5542.8" font-family="Helvetica,sans-Serif" font-size="9.00">Loading.ts</text>
</a>
</g>
</g>
<!-- UI/Base/Loading.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge369" class="edge">
<title>UI/Base/Loading.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M838.18,-5548.07C863.32,-5550.71 899.53,-5554.89 931,-5560 942.17,-5561.81 954.23,-5564.12 965.28,-5566.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.01,-5568.47 971.31,-5567.63 965.86,-5564.36 965.01,-5568.47"/>
</g>
<!-- UI/Base/Loading.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge368" class="edge">
<title>UI/Base/Loading.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M838,-5551.3C866.63,-5555.11 908.07,-5555.17 931,-5530 952.86,-5506.01 918.06,-5262.8 939,-5238 944.24,-5231.79 951.53,-5228 959.35,-5225.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.03,-5227.78 965.4,-5224.38 959.08,-5223.69 960.03,-5227.78"/>
</g>
<!-- UI/Base/Loading.ts&#45;&gt;Svg.ts -->
<g id="edge367" class="edge">
<title>UI/Base/Loading.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M838.14,-5551.42C866.86,-5555.32 908.37,-5555.44 931,-5530 941.56,-5518.12 936.96,-3256.76 939,-3241 950.86,-3149.47 985.47,-3043.63 998.99,-3004.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.13,-3004.8 1001.12,-2998.44 997.16,-3003.42 1001.13,-3004.8"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts -->
<g id="node140" class="node">
<title>UI/Base/ScrollableFullScreen.ts</title>
<g id="a_node140"><a xlink:href="UI/Base/ScrollableFullScreen.ts" xlink:title="ScrollableFullScreen.ts">
<path fill="#ddfeff" stroke="black" d="M859,-5614C859,-5614 753,-5614 753,-5614 750,-5614 747,-5611 747,-5608 747,-5608 747,-5602 747,-5602 747,-5599 750,-5596 753,-5596 753,-5596 859,-5596 859,-5596 862,-5596 865,-5599 865,-5602 865,-5602 865,-5608 865,-5608 865,-5611 862,-5614 859,-5614"/>
<text text-anchor="middle" x="806" y="-5602.8" font-family="Helvetica,sans-Serif" font-size="9.00">ScrollableFullScreen.ts</text>
</a>
</g>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge374" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.17,-5598.95C885.99,-5596.52 909.6,-5593.47 931,-5590 942.17,-5588.19 954.23,-5585.88 965.28,-5583.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.86,-5585.64 971.31,-5582.37 965.01,-5581.53 965.86,-5585.64"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge370" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.23,-5613.32C889.1,-5613.28 914.85,-5608.14 931,-5590 947.17,-5571.84 921.76,-3856.16 939,-3839 980.11,-3798.08 1028.43,-3798.04 1069.5,-3839 1081.37,-3850.84 1081.12,-8652.29 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge371" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.23,-5613.32C889.09,-5613.27 914.85,-5608.13 931,-5590 945.74,-5573.46 923.3,-4010.63 939,-3995 980.11,-3954.09 1028.44,-3954.04 1069.5,-3995 1094.44,-4019.88 1060.26,-9040.68 1082.5,-9068 1089.65,-9076.78 1101.07,-9080.6 1112.18,-9082.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1112.12,-9084.13 1118.29,-9082.6 1112.5,-9079.95 1112.12,-9084.13"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;Svg.ts -->
<g id="edge372" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.24,-5613.33C889.11,-5613.29 914.86,-5608.15 931,-5590 941.6,-5578.08 937.28,-3308.86 939,-3293 951.19,-3180.45 987.35,-3048.32 1000.04,-3004.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.09,-3004.69 1001.74,-2998.34 998.05,-3003.52 1002.09,-3004.69"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge376" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.28,-5612.46C888.72,-5612.13 914.13,-5607.01 931,-5590 953.36,-5567.45 918.36,-5543.14 939,-5519 947.22,-5509.38 960.06,-5504.67 972.2,-5502.43"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.84,-5504.46 978.45,-5501.47 972.2,-5500.3 972.84,-5504.46"/>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge375" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.12,-5612.29C888.52,-5611.94 913.95,-5606.84 931,-5590 950.14,-5571.09 918.76,-5547.72 939,-5530 949.91,-5520.45 1058.55,-5520.49 1069.5,-5530 1100.68,-5557.08 1054.28,-5591.85 1082.5,-5622 1084.9,-5624.56 1087.66,-5626.68 1090.65,-5628.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1089.97,-5630.44 1096.27,-5631.22 1091.83,-5626.68 1089.97,-5630.44"/>
</g>
<!-- UI/UIElement.ts -->
<g id="node141" class="node">
<title>UI/UIElement.ts</title>
<g id="a_node141"><a xlink:href="UI/UIElement.ts" xlink:title="UIElement.ts">
<path fill="#ddfeff" stroke="black" d="M1037,-5370C1037,-5370 974,-5370 974,-5370 971,-5370 968,-5367 968,-5364 968,-5364 968,-5358 968,-5358 968,-5355 971,-5352 974,-5352 974,-5352 1037,-5352 1037,-5352 1040,-5352 1043,-5355 1043,-5358 1043,-5358 1043,-5364 1043,-5364 1043,-5367 1040,-5370 1037,-5370"/>
<text text-anchor="middle" x="1005.5" y="-5358.8" font-family="Helvetica,sans-Serif" font-size="9.00">UIElement.ts</text>
</a>
</g>
</g>
<!-- UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/UIElement.ts -->
<g id="edge373" class="edge">
<title>UI/Base/ScrollableFullScreen.ts&#45;&gt;UI/UIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.27,-5613.06C889,-5612.93 914.63,-5607.79 931,-5590 947.19,-5572.41 923.62,-5393.3 939,-5375 944.77,-5368.13 953.02,-5364.13 961.72,-5361.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="962.36,-5363.9 967.8,-5360.61 961.49,-5359.79 962.36,-5363.9"/>
</g>
<!-- UI/UIElement.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge812" class="edge">
<title>UI/UIElement.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1043.01,-5355C1086.85,-5349.61 1161.36,-5346.4 1216.5,-5375 1264.58,-5399.94 1298.01,-5458.58 1311.65,-5486.17"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1309.9,-5487.38 1314.4,-5491.87 1313.69,-5485.55 1309.9,-5487.38"/>
</g>
<!-- UI/Base/SubtleButton.ts -->
<g id="node142" class="node">
<title>UI/Base/SubtleButton.ts</title>
<g id="a_node142"><a xlink:href="UI/Base/SubtleButton.ts" xlink:title="SubtleButton.ts">
<path fill="#ddfeff" stroke="black" d="M844,-5494C844,-5494 768,-5494 768,-5494 765,-5494 762,-5491 762,-5488 762,-5488 762,-5482 762,-5482 762,-5479 765,-5476 768,-5476 768,-5476 844,-5476 844,-5476 847,-5476 850,-5479 850,-5482 850,-5482 850,-5488 850,-5488 850,-5491 847,-5494 844,-5494"/>
<text text-anchor="middle" x="806" y="-5482.8" font-family="Helvetica,sans-Serif" font-size="9.00">SubtleButton.ts</text>
</a>
</g>
</g>
<!-- UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge379" class="edge">
<title>UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M850.26,-5478.08C877.08,-5476.4 910.25,-5479.5 931,-5500 950.14,-5518.91 920.88,-5540.12 939,-5560 945.77,-5567.43 955.4,-5571.55 965.19,-5573.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.01,-5575.86 971.29,-5574.9 965.78,-5571.73 965.01,-5575.86"/>
</g>
<!-- UI/Base/SubtleButton.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge377" class="edge">
<title>UI/Base/SubtleButton.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M850.05,-5492.53C877.31,-5494.61 911.06,-5491.73 931,-5470 948.44,-5451 922.29,-5257.65 939,-5238 944.27,-5231.81 951.56,-5228.03 959.38,-5225.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.07,-5227.81 965.44,-5224.41 959.12,-5223.72 960.07,-5227.81"/>
</g>
<!-- UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge381" class="edge">
<title>UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M850.27,-5477.79C877.26,-5475.95 910.63,-5478.97 931,-5500 944.97,-5514.42 925.8,-5574.87 939,-5590 947.23,-5599.43 960.06,-5603.59 972.2,-5605.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.27,-5607.36 978.46,-5605.89 972.71,-5603.19 972.27,-5607.36"/>
</g>
<!-- UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge380" class="edge">
<title>UI/Base/SubtleButton.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M850.34,-5488.51C886.96,-5491.48 938.61,-5495.66 971.83,-5498.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.07,-5500.48 978.22,-5498.87 972.41,-5496.29 972.07,-5500.48"/>
</g>
<!-- UI/Base/SubtleButton.ts&#45;&gt;UI/UIElement.ts -->
<g id="edge378" class="edge">
<title>UI/Base/SubtleButton.ts&#45;&gt;UI/UIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M850,-5492.22C877.06,-5494.11 910.6,-5491.15 931,-5470 945.71,-5454.75 925,-5390.9 939,-5375 944.87,-5368.34 953.07,-5364.4 961.68,-5362.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="962.26,-5364.18 967.69,-5360.87 961.38,-5360.08 962.26,-5364.18"/>
</g>
<!-- UI/Base/TabbedComponent.ts -->
<g id="node143" class="node">
<title>UI/Base/TabbedComponent.ts</title>
<g id="a_node143"><a xlink:href="UI/Base/TabbedComponent.ts" xlink:title="TabbedComponent.ts">
<path fill="#ddfeff" stroke="black" d="M856.5,-5644C856.5,-5644 755.5,-5644 755.5,-5644 752.5,-5644 749.5,-5641 749.5,-5638 749.5,-5638 749.5,-5632 749.5,-5632 749.5,-5629 752.5,-5626 755.5,-5626 755.5,-5626 856.5,-5626 856.5,-5626 859.5,-5626 862.5,-5629 862.5,-5632 862.5,-5632 862.5,-5638 862.5,-5638 862.5,-5641 859.5,-5644 856.5,-5644"/>
<text text-anchor="middle" x="806" y="-5632.8" font-family="Helvetica,sans-Serif" font-size="9.00">TabbedComponent.ts</text>
</a>
</g>
</g>
<!-- UI/Base/TabbedComponent.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge384" class="edge">
<title>UI/Base/TabbedComponent.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.53,-5641.23C886.17,-5640.88 912.5,-5636.07 931,-5620 941.42,-5610.95 929.07,-5599.58 939,-5590 946.09,-5583.16 955.63,-5579.2 965.24,-5576.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.72,-5579.01 971.2,-5575.78 964.91,-5574.89 965.72,-5579.01"/>
</g>
<!-- UI/Base/TabbedComponent.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge382" class="edge">
<title>UI/Base/TabbedComponent.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.68,-5643.3C887.24,-5643.63 914.27,-5638.79 931,-5620 947.14,-5601.88 921.8,-3890.12 939,-3873 980.11,-3832.08 1028.43,-3832.04 1069.5,-3873 1081.29,-3884.76 1081.13,-8652.4 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Base/TabbedComponent.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge383" class="edge">
<title>UI/Base/TabbedComponent.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.55,-5643.18C887.08,-5643.48 914.12,-5638.65 931,-5620 945.25,-5604.26 925.36,-5254.26 939,-5238 944.22,-5231.77 951.5,-5227.98 959.31,-5225.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960,-5227.75 965.37,-5224.35 959.05,-5223.66 960,-5227.75"/>
</g>
<!-- UI/Base/TabbedComponent.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge385" class="edge">
<title>UI/Base/TabbedComponent.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.58,-5642.31C886.67,-5642.29 913.34,-5637.45 931,-5620 950.14,-5601.09 920.88,-5579.88 939,-5560 940.63,-5558.21 942.42,-5556.62 944.34,-5555.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.75,-5556.79 949.7,-5551.81 943.51,-5553.24 945.75,-5556.79"/>
</g>
<!-- UI/Base/Table.ts&#45;&gt;Utils.ts -->
<g id="edge386" class="edge">
<title>UI/Base/Table.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.07,-5580.67C861.77,-5585.21 907,-5586.98 931,-5560 951.93,-5536.47 916.7,-3315.22 939,-3293 1026.36,-3205.94 1117.78,-3219.07 1216.5,-3293 1272.29,-3334.79 1307.88,-3564.65 1316.47,-3625.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.4,-3626.32 1317.31,-3631.98 1318.56,-3625.75 1314.4,-3626.32"/>
</g>
<!-- UI/Base/Table.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge388" class="edge">
<title>UI/Base/Table.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.23,-5580.62C861.84,-5585.04 906.79,-5586.64 931,-5560 943.03,-5546.76 927.47,-5251.69 939,-5238 944.24,-5231.78 951.52,-5227.99 959.33,-5225.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="960.02,-5227.77 965.39,-5224.37 959.07,-5223.68 960.02,-5227.77"/>
</g>
<!-- UI/Base/Table.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge387" class="edge">
<title>UI/Base/Table.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M833.16,-5580.56C861.72,-5584.93 906.62,-5586.49 931,-5560 947.11,-5542.49 921.86,-5362.51 939,-5346 946.04,-5339.22 1208.8,-5343.81 1216.5,-5348 1272.24,-5378.32 1302.91,-5453.78 1313.84,-5486.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1311.89,-5486.82 1315.77,-5491.86 1315.88,-5485.5 1311.89,-5486.82"/>
</g>
<!-- UI/BigComponents/Histogram.ts -->
<g id="node145" class="node">
<title>UI/BigComponents/Histogram.ts</title>
<g id="a_node145"><a xlink:href="UI/BigComponents/Histogram.ts" xlink:title="Histogram.ts">
<path fill="#ddfeff" stroke="black" d="M605,-5978C605,-5978 543,-5978 543,-5978 540,-5978 537,-5975 537,-5972 537,-5972 537,-5966 537,-5966 537,-5963 540,-5960 543,-5960 543,-5960 605,-5960 605,-5960 608,-5960 611,-5963 611,-5966 611,-5966 611,-5972 611,-5972 611,-5975 608,-5978 605,-5978"/>
<text text-anchor="middle" x="574" y="-5966.8" font-family="Helvetica,sans-Serif" font-size="9.00">Histogram.ts</text>
</a>
</g>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;Utils.ts -->
<g id="edge399" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.06,-5974.7C634.66,-5976.19 664.15,-5973.34 681,-5954 692.07,-5941.29 683.38,-3542.89 689,-3527 746.28,-3365.19 871.84,-3387.14 931,-3226 936.77,-3210.3 927.02,-2936.67 939,-2925 983.18,-2881.98 1169.92,-2884.59 1216.5,-2925 1271.66,-2972.86 1310.81,-3525.09 1317.49,-3625.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1315.4,-3625.76 1317.9,-3631.6 1319.59,-3625.48 1315.4,-3625.76"/>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge400" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611,-5963.79C634.27,-5962.61 663.39,-5965.61 681,-5984 693.66,-5997.22 675.44,-6053.7 689,-6066 768.66,-6138.27 854.31,-6141.41 931,-6066 949.86,-6047.46 922.34,-5610.54 939,-5590 945.51,-5581.97 955.36,-5577.7 965.46,-5575.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.86,-5577.62 971.41,-5574.52 965.14,-5573.48 965.86,-5577.62"/>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge404" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.16,-5970.12C693.14,-5971.82 889.27,-5970.78 931,-5924 943.69,-5909.78 926.82,-5252.66 939,-5238 944.2,-5231.75 951.46,-5227.94 959.27,-5225.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.95,-5227.72 965.32,-5224.31 959,-5223.62 959.95,-5227.72"/>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge401" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.03,-5963.32C634.62,-5961.85 664.11,-5964.7 681,-5984 699.72,-6005.38 668.83,-6986.98 689,-7007 749.03,-7066.56 1009.15,-7061.23 1069.5,-7002 1120.33,-6952.12 1141.72,-5797.23 1144.24,-5650.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.35,-5650.13 1144.35,-5644.1 1142.15,-5650.06 1146.35,-5650.13"/>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge403" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.15,-5964.38C634.03,-5963.56 662.65,-5966.75 681,-5984 693.89,-5996.12 675.29,-6011.82 689,-6023 730.67,-6056.99 892.65,-6060.7 931,-6023 949.35,-6004.97 922.79,-5579.98 939,-5560 940.69,-5557.91 942.62,-5556.08 944.71,-5554.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.99,-5556.14 949.88,-5551.11 943.7,-5552.62 945.99,-5556.14"/>
</g>
<!-- UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/Table.ts -->
<g id="edge402" class="edge">
<title>UI/BigComponents/Histogram.ts&#45;&gt;UI/Base/Table.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.2,-5974.62C634.71,-5976.02 664.03,-5973.11 681,-5954 694.43,-5938.87 675.48,-5605.04 689,-5590 709.48,-5567.21 746.12,-5566.07 772.76,-5568.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.74,-5571.1 778.96,-5569.75 773.26,-5566.93 772.74,-5571.1"/>
</g>
<!-- UI/BigComponents/ImportButton.ts -->
<g id="node146" class="node">
<title>UI/BigComponents/ImportButton.ts</title>
<g id="a_node146"><a xlink:href="UI/BigComponents/ImportButton.ts" xlink:title="ImportButton.ts">
<path fill="#ddfeff" stroke="black" d="M612.5,-5948C612.5,-5948 535.5,-5948 535.5,-5948 532.5,-5948 529.5,-5945 529.5,-5942 529.5,-5942 529.5,-5936 529.5,-5936 529.5,-5933 532.5,-5930 535.5,-5930 535.5,-5930 612.5,-5930 612.5,-5930 615.5,-5930 618.5,-5933 618.5,-5936 618.5,-5936 618.5,-5942 618.5,-5942 618.5,-5945 615.5,-5948 612.5,-5948"/>
<text text-anchor="middle" x="574" y="-5936.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImportButton.ts</text>
</a>
</g>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Customizations/AllKnownLayers.ts -->
<g id="edge405" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Customizations/AllKnownLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.67,-5945.01C640.72,-5945.4 665.92,-5941.3 681,-5924 701.45,-5900.54 666.95,-3704.97 689,-3683 765.19,-3607.08 850.55,-3611.61 931,-3683 976.11,-3723.03 998.66,-4165.91 1003.5,-4273.53"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.75,-4281.69 1004.11,-4287.59 1005.95,-4281.5 1001.75,-4281.69"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1003.85,-4281.59 1003.72,-4278.6 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1003.61" cy="-4276.2" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Utils.ts -->
<g id="edge415" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.68,-5945.01C640.72,-5945.41 665.92,-5941.31 681,-5924 692.79,-5910.47 682.19,-3356.6 689,-3340 747.31,-3197.8 869.99,-3234.06 931,-3093 939.56,-3073.2 924.83,-2915.27 939,-2899 1020.34,-2805.58 1123.32,-2791.38 1216.5,-2873 1275.65,-2924.82 1311.85,-3522.89 1317.67,-3625.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1315.58,-3626.12 1318.01,-3631.99 1319.77,-3625.88 1315.58,-3626.12"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge416" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.66,-5933.48C640.42,-5933.31 665.36,-5937.45 681,-5954 695.55,-5969.4 673.4,-6034.66 689,-6049 728.59,-6085.4 892.64,-6086.69 931,-6049 949.19,-6031.12 922.93,-5609.81 939,-5590 945.51,-5581.97 955.36,-5577.7 965.46,-5575.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.86,-5577.62 971.41,-5574.52 965.14,-5573.48 965.86,-5577.62"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge412" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.67,-5945.01C640.72,-5945.4 665.92,-5941.3 681,-5924 701.99,-5899.92 666.37,-3646.55 689,-3624 808.92,-3504.5 957.6,-3514.95 1069.5,-3642 1081.04,-3655.1 1081.06,-8651.6 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Models/Constants.ts -->
<g id="edge413" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.67,-5933C640.71,-5932.61 665.91,-5936.7 681,-5954 688.76,-5962.89 688.09,-7641.24 689,-7653 712.65,-7957.6 785.66,-8324.72 801.81,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.85,-8404.5 803.12,-8409.95 803.97,-8403.65 799.85,-8404.5"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge424" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.75,-5940.92C704.58,-5943.64 890.26,-5944.02 931,-5899 943.32,-5885.38 927.26,-5252.12 939,-5238 944.2,-5231.75 951.46,-5227.95 959.27,-5225.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.96,-5227.72 965.32,-5224.31 959,-5223.63 959.96,-5227.72"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge406" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.68,-5932.98C640.73,-5932.59 665.93,-5936.69 681,-5954 697.84,-5973.35 671.88,-9628.9 689,-9648 701.76,-9662.24 720.87,-9667.75 739.91,-9669.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.27,-9671.15 746.36,-9669.31 740.45,-9666.95 740.27,-9671.15"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Svg.ts -->
<g id="edge414" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.68,-5945.01C640.72,-5945.41 665.92,-5941.31 681,-5924 704.29,-5897.26 665.59,-3397.63 689,-3371 760.64,-3289.52 858.51,-3419.72 931,-3339 943.33,-3325.27 927.64,-3021.54 939,-3007 946.93,-2996.86 960,-2992.09 972.39,-2989.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.74,-2992.03 978.39,-2989.12 972.16,-2987.87 972.74,-2992.03"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge407" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.66,-5945C640.71,-5945.39 665.91,-5941.29 681,-5924 696.04,-5906.77 672.79,-4293.14 689,-4277 708.06,-4258.03 911.97,-4258 931,-4277 946.11,-4292.09 925.68,-10409.31 939,-10426 939.45,-10426.57 939.93,-10427.12 940.41,-10427.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="939.33,-10429.51 945.2,-10431.97 942.15,-10426.39 939.33,-10429.51"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/CreateWayWithPointReuseAction.ts -->
<g id="edge408" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/CreateWayWithPointReuseAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M529.39,-5931.72C502.03,-5930.08 470.79,-5934.28 463,-5960 458.57,-5974.62 458.57,-10345.38 463,-10360 478.65,-10411.7 528.55,-10455.34 555.81,-10476.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="554.88,-10478 560.94,-10479.91 557.39,-10474.64 554.88,-10478"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge411" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.67,-5945C640.71,-5945.4 665.91,-5941.3 681,-5924 696.95,-5905.72 671.8,-4194.12 689,-4177 765.23,-4101.12 854.89,-4101.01 931,-4177 943.66,-4189.64 928.55,-9314.48 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.34 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/ReplaceGeometryAction.ts -->
<g id="edge409" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/Actions/ReplaceGeometryAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.69,-5932.98C640.73,-5932.58 665.93,-5936.68 681,-5954 701.25,-5977.27 668.61,-10372.85 689,-10396 700,-10408.49 715.84,-10414.52 732.29,-10416.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="732.17,-10419.04 738.38,-10417.68 732.67,-10414.88 732.17,-10419.04"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/OsmConnection.ts -->
<g id="edge410" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;Logic/Osm/OsmConnection.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.66,-5945C640.71,-5945.39 665.91,-5941.29 681,-5924 696.24,-5906.53 672.57,-4271.35 689,-4255 765.24,-4179.13 854.89,-4179 931,-4255 937.43,-4261.42 938.6,-9481.92 939,-9491 951.77,-9782.76 991.14,-10135.8 1001.81,-10228.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.65,-10236.27 1003.43,-10241.99 1004.82,-10235.78 1000.65,-10236.27"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.74,-10236.03 1002.39,-10233.05 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1002.11" cy="-10230.66" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge418" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.53,-5935.02C639.6,-5935.42 663.95,-5939.62 681,-5954 689.92,-5961.52 679.58,-5972.12 689,-5979 710.72,-5994.85 911.82,-5997.84 931,-5979 948.8,-5961.52 925.2,-5550.79 939,-5530 946.63,-5518.5 959.96,-5511.52 972.61,-5507.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.22,-5509.31 978.35,-5505.55 972,-5505.29 973.22,-5509.31"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge417" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.64,-5933.02C640.68,-5932.63 665.88,-5936.73 681,-5954 699.39,-5975.01 669.18,-6939.34 689,-6959 809.05,-7078.1 946.59,-7075.15 1069.5,-6959 1119.59,-6911.67 1141.59,-5794.54 1144.23,-5650.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.33,-5650.2 1144.34,-5644.17 1142.13,-5650.13 1146.33,-5650.2"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge427" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.64,-5933.02C640.68,-5932.63 665.88,-5936.73 681,-5954 698.97,-5974.52 669.63,-6916.79 689,-6936 765.17,-7011.55 909.19,-6962.86 972.86,-6935.71"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="980.87,-6934.47 985.52,-6930.13 979.18,-6930.63 980.87,-6934.47"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="980.03,-6932.55 977.28,-6933.76 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="975.09" cy="-6934.73" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge421" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.58,-5944.93C640.59,-5945.29 665.8,-5941.2 681,-5924 697.71,-5905.1 672.18,-5488.8 689,-5470 707.93,-5448.84 740.77,-5446.32 766.69,-5448.39"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.61,-5450.49 772.78,-5448.97 767.01,-5446.31 766.61,-5450.49"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge425" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.74,-5933.4C640.53,-5933.2 665.47,-5937.35 681,-5954 698.02,-5972.24 678.06,-6043.57 689,-6066 756.07,-6203.54 921.42,-6305.22 981.88,-6338.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="981.13,-6340.9 987.4,-6341.97 983.16,-6337.23 981.13,-6340.9"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge423" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.67,-5934.26C640.04,-5934.4 664.61,-5938.6 681,-5954 693.89,-5966.12 675.29,-5981.82 689,-5993 772.34,-6060.98 854.25,-6068.35 931,-5993 948.17,-5976.15 923.83,-5578.68 939,-5560 940.7,-5557.91 942.62,-5556.08 944.71,-5554.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.99,-5556.14 949.88,-5551.11 943.71,-5552.62 945.99,-5556.14"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Lazy.ts -->
<g id="edge419" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Lazy.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.56,-5944.91C640.57,-5945.27 665.77,-5941.18 681,-5924 695.52,-5907.62 674.38,-5546.3 689,-5530 709.46,-5507.19 746.11,-5506.06 772.75,-5508.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.73,-5511.09 778.95,-5509.75 773.25,-5506.92 772.73,-5511.09"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Loading.ts -->
<g id="edge420" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/Loading.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.55,-5944.9C640.55,-5945.26 665.76,-5941.16 681,-5924 694.43,-5908.87 675.48,-5575.04 689,-5560 708.23,-5538.61 741.69,-5536.29 767.75,-5538.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="767.68,-5540.6 773.86,-5539.11 768.1,-5536.42 767.68,-5540.6"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge422" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.57,-5944.92C640.58,-5945.28 665.79,-5941.19 681,-5924 696.62,-5906.36 673.28,-5517.55 689,-5500 705.29,-5481.81 731.88,-5477.4 755.49,-5477.84"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.66,-5479.95 761.73,-5478.06 755.81,-5475.75 755.66,-5479.95"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts -->
<g id="node147" class="node">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts</title>
<g id="a_node147"><a xlink:href="UI/NewPoint/ConfirmLocationOfPoint.ts" xlink:title="ConfirmLocationOfPoint.ts">
<path fill="#ddfeff" stroke="black" d="M635,-5738C635,-5738 513,-5738 513,-5738 510,-5738 507,-5735 507,-5732 507,-5732 507,-5726 507,-5726 507,-5723 510,-5720 513,-5720 513,-5720 635,-5720 635,-5720 638,-5720 641,-5723 641,-5726 641,-5726 641,-5732 641,-5732 641,-5735 638,-5738 635,-5738"/>
<text text-anchor="middle" x="574" y="-5726.8" font-family="Helvetica,sans-Serif" font-size="9.00">ConfirmLocationOfPoint.ts</text>
</a>
</g>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/NewPoint/ConfirmLocationOfPoint.ts -->
<g id="edge426" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/NewPoint/ConfirmLocationOfPoint.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M529.48,-5945.6C501.65,-5946.92 469.63,-5942.29 461.67,-5916 459.43,-5908.61 459.43,-5784.39 461.67,-5777 462.9,-5772.91 463.65,-5771.65 467,-5769 484.26,-5755.32 506.67,-5745.98 526.53,-5739.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="527.18,-5741.79 532.33,-5738.05 525.98,-5737.77 527.18,-5741.79"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M529.32,-5946.97C502.42,-5948.94 471.95,-5945.15 464.33,-5920 461.97,-5912.18 461.97,-5780.82 464.33,-5773 464.95,-5770.96 465.33,-5770.33 467,-5769 484.26,-5755.32 506.67,-5745.98 526.53,-5739.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="527.18,-5741.79 532.33,-5738.05 525.98,-5737.77 527.18,-5741.79"/>
</g>
<!-- UI/ShowDataLayer/ShowDataMultiLayer.ts -->
<g id="node148" class="node">
<title>UI/ShowDataLayer/ShowDataMultiLayer.ts</title>
<g id="a_node148"><a xlink:href="UI/ShowDataLayer/ShowDataMultiLayer.ts" xlink:title="ShowDataMultiLayer.ts">
<path fill="#ddfeff" stroke="black" d="M859.5,-6930C859.5,-6930 752.5,-6930 752.5,-6930 749.5,-6930 746.5,-6927 746.5,-6924 746.5,-6924 746.5,-6918 746.5,-6918 746.5,-6915 749.5,-6912 752.5,-6912 752.5,-6912 859.5,-6912 859.5,-6912 862.5,-6912 865.5,-6915 865.5,-6918 865.5,-6918 865.5,-6924 865.5,-6924 865.5,-6927 862.5,-6930 859.5,-6930"/>
<text text-anchor="middle" x="806" y="-6918.8" font-family="Helvetica,sans-Serif" font-size="9.00">ShowDataMultiLayer.ts</text>
</a>
</g>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts -->
<g id="edge428" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.64,-5933.02C640.68,-5932.63 665.88,-5936.73 681,-5954 698.42,-5973.89 671.46,-6886.21 689,-6906 700.05,-6918.46 715.93,-6924.48 732.41,-6926.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.13,-6929.71 746.3,-6928.15 740.51,-6925.52 740.13,-6929.71"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.32,-6927.62 737.33,-6927.35 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="734.94" cy="-6927.13" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/ImportButton.ts&#45;&gt;UI/SpecialVisualizations.ts -->
<g id="edge429" class="edge">
<title>UI/BigComponents/ImportButton.ts&#45;&gt;UI/SpecialVisualizations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M529.32,-5935.14C509.07,-5933.45 485.46,-5929.32 467,-5918 431.15,-5896.01 406.57,-5852.35 393.65,-5825.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="392.13,-5817.62 387.68,-5813.08 388.33,-5819.41 392.13,-5817.62"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="390.23,-5818.51 391.5,-5821.23 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="392.52" cy="-5823.4" rx="2.4" ry="2.4"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge566" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M607.2,-5738.03C677.29,-5755.51 844.34,-5784.97 931,-5697 947.73,-5680.01 923.45,-5608.08 939,-5590 945.61,-5582.31 955.29,-5578.11 965.19,-5575.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.82,-5577.94 971.35,-5574.81 965.07,-5573.81 965.82,-5577.94"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts -->
<g id="edge562" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M634.57,-5738.07C652.46,-5743.88 670.19,-5753.4 681,-5769 693.68,-5787.29 674.28,-8957.3 689,-8974 701.9,-8988.64 721.45,-8994.4 740.84,-8995.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.75,-8997.99 746.85,-8996.22 740.98,-8993.79 740.75,-8997.99"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge564" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.88,-5719.95C589.22,-5659.98 658.91,-5313.34 681,-5027 682.04,-5013.52 681.52,-3091.26 689,-3080 753.67,-2982.63 863.52,-3072.45 931,-2977 947.45,-2953.73 918.23,-2868.51 939,-2849 981.27,-2809.29 1028.44,-2808.03 1069.5,-2849 1083.81,-2863.27 1080.84,-8648.86 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge569" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M603.28,-5719.93C626.17,-5712.92 659.36,-5703.52 689,-5698 742.15,-5688.1 894.42,-5712.81 931,-5673 947.35,-5655.2 923.49,-5256.54 939,-5238 944.22,-5231.76 951.49,-5227.97 959.3,-5225.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.99,-5227.74 965.36,-5224.34 959.04,-5223.65 959.99,-5227.74"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Svg.ts -->
<g id="edge565" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.88,-5719.95C589.22,-5659.98 658.89,-5313.34 681,-5027 682.01,-5013.91 680.85,-3147.29 689,-3137 757.67,-3050.3 857.81,-3161.92 931,-3079 952.31,-3054.86 918.1,-3031.49 939,-3007 947.22,-2997.38 960.05,-2992.66 972.19,-2990.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.83,-2992.45 978.45,-2989.47 972.2,-2988.3 972.83,-2992.45"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge563" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M634.58,-5738.07C652.46,-5743.88 670.19,-5753.4 681,-5769 694.6,-5788.62 681.03,-9184.49 689,-9207 709.07,-9263.69 761.89,-9314.53 788.77,-9337.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="787.55,-9339.43 793.48,-9341.72 790.27,-9336.23 787.55,-9339.43"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge571" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M611.48,-5738.05C633.74,-5743.24 662.85,-5749.4 689,-5753 715.7,-5756.67 911.39,-5750.52 931,-5769 973.63,-5809.16 998.99,-6246.97 1003.7,-6335.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.61,-6335.77 1004.03,-6341.65 1005.81,-6335.55 1001.61,-6335.77"/>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge567" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.49,-5719.57C582.67,-5683.89 609.77,-5556.41 689,-5500 708.05,-5486.43 733.44,-5482.04 755.61,-5481.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.8,-5483.41 761.77,-5481.19 755.73,-5479.21 755.8,-5483.41"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts -->
<g id="node153" class="node">
<title>UI/BigComponents/SimpleAddUI.ts</title>
<g id="a_node153"><a xlink:href="UI/BigComponents/SimpleAddUI.ts" xlink:title="SimpleAddUI.ts">
<path fill="#ddfeff" stroke="black" d="M611,-5918C611,-5918 537,-5918 537,-5918 534,-5918 531,-5915 531,-5912 531,-5912 531,-5906 531,-5906 531,-5903 534,-5900 537,-5900 537,-5900 611,-5900 611,-5900 614,-5900 617,-5903 617,-5906 617,-5906 617,-5912 617,-5912 617,-5915 614,-5918 611,-5918"/>
<text text-anchor="middle" x="574" y="-5906.8" font-family="Helvetica,sans-Serif" font-size="9.00">SimpleAddUI.ts</text>
</a>
</g>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/BigComponents/SimpleAddUI.ts -->
<g id="edge568" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/BigComponents/SimpleAddUI.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M532.33,-5738.05C511.15,-5744.18 485.96,-5753.97 467,-5769 463.23,-5771.99 462.39,-5773.4 461,-5778 459.28,-5783.69 459.28,-5879.31 461,-5885 467.86,-5907.65 492.4,-5914.52 516.87,-5915.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.76,-5917.37 530.74,-5915.22 524.72,-5913.17 524.76,-5917.37"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.74,-5915.27 521.74,-5915.3 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="519.34" cy="-5915.32" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/LocationInput.ts -->
<g id="node171" class="node">
<title>UI/Input/LocationInput.ts</title>
<g id="a_node171"><a xlink:href="UI/Input/LocationInput.ts" xlink:title="LocationInput.ts">
<path fill="#ddfeff" stroke="black" d="M845.5,-6510C845.5,-6510 766.5,-6510 766.5,-6510 763.5,-6510 760.5,-6507 760.5,-6504 760.5,-6504 760.5,-6498 760.5,-6498 760.5,-6495 763.5,-6492 766.5,-6492 766.5,-6492 845.5,-6492 845.5,-6492 848.5,-6492 851.5,-6495 851.5,-6498 851.5,-6498 851.5,-6504 851.5,-6504 851.5,-6507 848.5,-6510 845.5,-6510"/>
<text text-anchor="middle" x="806" y="-6498.8" font-family="Helvetica,sans-Serif" font-size="9.00">LocationInput.ts</text>
</a>
</g>
</g>
<!-- UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Input/LocationInput.ts -->
<g id="edge570" class="edge">
<title>UI/NewPoint/ConfirmLocationOfPoint.ts&#45;&gt;UI/Input/LocationInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M634.22,-5738.03C652.19,-5743.84 670.06,-5753.37 681,-5769 692.42,-5785.32 675.77,-6471.11 689,-6486 703.15,-6501.92 725.19,-6507.31 746.27,-6508.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="754.25,-6510.19 760.24,-6508.06 754.23,-6505.99 754.25,-6510.19"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="754.24,-6508.09 751.24,-6508.1 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="748.84" cy="-6508.12" rx="2.4" ry="2.4"/>
</g>
<!-- UI/ShowDataLayer/ShowDataMultiLayer.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts -->
<g id="edge756" class="edge">
<title>UI/ShowDataLayer/ShowDataMultiLayer.ts&#45;&gt;Logic/FeatureSource/PerLayerFeatureSourceSplitter.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M799.85,-6930.05C780.44,-6964.74 711.65,-7093.15 689,-7209 682.45,-7242.52 694.35,-9636.56 681,-9668 663.59,-9709.01 621.03,-9741.78 595.44,-9758.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="594.16,-9756.94 590.26,-9761.96 596.44,-9760.47 594.16,-9756.94"/>
</g>
<!-- UI/ShowDataLayer/ShowDataMultiLayer.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge757" class="edge">
<title>UI/ShowDataLayer/ShowDataMultiLayer.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M865.72,-6921C890.05,-6921 918.29,-6921 942.92,-6921"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="950.94,-6923.1 956.94,-6921 950.94,-6918.9 950.94,-6923.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="950.94,-6921 947.94,-6921 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="945.54" cy="-6921" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Customizations/AllKnownLayers.ts -->
<g id="edge768" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Customizations/AllKnownLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.73,-5730.63 442.89,-5343.75 459,-5027 460.37,-5000.06 459.96,-3111.04 467,-3085 516.62,-2901.63 625.88,-2896.8 681,-2715 685.01,-2701.79 678.93,-2600.44 689,-2591 767.46,-2517.44 854.21,-2515.69 931,-2591 939.19,-2599.03 938.6,-2992.53 939,-3004 956.99,-3517.8 995.12,-4145.67 1003.04,-4273.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.45,-4281.9 1003.92,-4287.75 1005.64,-4281.64 1001.45,-4281.9"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1003.55,-4281.77 1003.36,-4278.77 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1003.21" cy="-4276.38" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Utils.ts -->
<g id="edge782" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.76,-5730.63 443.04,-5343.76 459,-5027 459.88,-5009.53 460.02,-2524.04 467,-2508 520.96,-2384.03 563.84,-2351.14 689,-2300 906.06,-2211.32 1044.57,-2131.57 1216.5,-2291 1319.57,-2386.57 1319.08,-3482.2 1318.57,-3625.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.47,-3625.65 1318.55,-3631.66 1320.67,-3625.67 1316.47,-3625.65"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge783" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.41,-5813.09C386.12,-5868.58 403.33,-6161.15 467,-6217 502.84,-6248.44 648.32,-6197.3 681,-6232 696.1,-6248.04 673.34,-7009.5 689,-7025 727.22,-7062.83 892.87,-7062.92 931,-7025 945.13,-7010.95 926.54,-5605.55 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.57 971.35,-5574.48 965.08,-5573.43 965.8,-5577.57"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge788" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.36,-5813.01C385.82,-5869.29 401.98,-6172.24 467,-6231 502.44,-6263.02 648.66,-6215.85 681,-6251 696.08,-6267.4 673.17,-7037.33 689,-7053 765.43,-7128.67 854.53,-7128.63 931,-7053 938.13,-7045.95 938.47,-6341.01 939,-6331 953.39,-6056.88 993.48,-5723.86 1002.63,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.71,-5650.22 1003.37,-5644.01 1000.54,-5649.7 1004.71,-5650.22"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge776" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.76,-5730.63 443.03,-5343.76 459,-5027 459.86,-5009.92 456.59,-2578.56 467,-2565 527,-2486.83 619.06,-2583.64 681,-2507 691.49,-2494.02 676.89,-2368.48 689,-2357 767.05,-2283 847.48,-2289.23 931,-2357 944.4,-2367.87 930.94,-2379.74 939,-2395 978.14,-2469.07 1038.16,-2453.31 1069.5,-2531 1085.45,-2570.53 1078.99,-8626.52 1082.5,-8669 1094.25,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/SimpleMetaTagger.ts -->
<g id="edge773" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/SimpleMetaTagger.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.73,-5730.63 442.87,-5343.75 459,-5027 460.33,-5000.78 457.26,-3161.38 467,-3137 518.44,-3008.24 627.7,-3038 681,-2910 686.15,-2897.63 679.37,-2678.31 689,-2669 766.3,-2594.22 854.9,-2593 931,-2669 946.4,-2684.38 931.27,-8916.65 939,-8937 947.49,-8959.37 966.17,-8979.33 981.42,-8992.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="986.23,-8999.64 992.18,-9001.89 988.93,-8996.43 986.23,-8999.64"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="987.58,-8998.04 985.28,-8996.11 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="983.45" cy="-8994.57" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge770" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.75,-5730.63 443.01,-5343.76 459,-5027 459.83,-5010.61 457.04,-2677.04 467,-2664 526.91,-2585.61 617.73,-2680.7 681,-2605 693.59,-2589.93 674.5,-2530.24 689,-2517 768.42,-2444.47 852.7,-2443.27 931,-2517 941.78,-2527.15 931.59,-2637.18 939,-2650 973.76,-2710.14 1036.51,-2674.87 1069.5,-2736 1095.27,-2783.75 1056.5,-10501.38 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.27,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge793" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.72,-5813.31C387.94,-5865.26 411.21,-6118.75 467,-6168 502.84,-6199.64 648.79,-6154.68 681,-6190 695.39,-6205.78 673.82,-6943.97 689,-6959 727.22,-6996.83 892.89,-6996.94 931,-6959 947.94,-6942.14 923.79,-5256.44 939,-5238 944.17,-5231.73 951.43,-5227.92 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.29,-5224.28 958.97,-5223.6 959.92,-5227.69"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;State.ts -->
<g id="edge780" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.75,-5730.63 443.01,-5343.76 459,-5027 459.83,-5010.51 456.37,-2661.64 467,-2649 529.17,-2575.07 615.87,-2682.34 681,-2611 695.14,-2595.52 673.56,-2531.18 689,-2517 768.21,-2444.24 853.12,-2442.82 931,-2517 944.21,-2529.58 931.89,-2664.2 939,-2681 947.81,-2701.8 965.68,-2720.22 980.54,-2732.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="985.59,-2739.71 991.58,-2741.85 988.23,-2736.45 985.59,-2739.71"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="986.91,-2738.08 984.57,-2736.2 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="982.71" cy="-2734.69" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge777" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.76,-5730.63 443.02,-5343.76 459,-5027 459.85,-5010.1 456.32,-2604.12 467,-2591 528.37,-2515.64 617.92,-2619.94 681,-2546 692.77,-2532.2 675.87,-2395.5 689,-2383 727.95,-2345.92 891.33,-2346.7 931,-2383 945.81,-2396.55 932.16,-2454.12 939,-2473 973.66,-2568.63 1039.01,-2563.96 1069.5,-2661 1082.84,-2703.45 1054.42,-9033.49 1082.5,-9068 1089.65,-9076.78 1101.07,-9080.6 1112.17,-9082.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1112.12,-9084.14 1118.28,-9082.6 1112.5,-9079.95 1112.12,-9084.14"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge769" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.18,-5794.79C392.3,-5730.61 440.39,-5343.62 459,-5027 459.66,-5015.85 459.02,-4632.82 467,-4625 534.92,-4558.42 613.69,-4557.8 681,-4625 693.34,-4637.32 677.36,-9635.01 689,-9648 701.75,-9662.24 720.86,-9667.75 739.91,-9669.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.27,-9671.15 746.35,-9669.31 740.45,-9666.95 740.27,-9671.15"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/ImageProviders/AllImageProviders.ts -->
<g id="edge771" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/ImageProviders/AllImageProviders.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M379.74,-5813.14C368.13,-5860.64 315.05,-6084.36 298.5,-6271 291.75,-6347.15 295.76,-7570.6 298.5,-7647 315.37,-8117.66 370.54,-8693.4 380.46,-8794.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="378.4,-8794.94 381.08,-8800.7 382.58,-8794.52 378.4,-8794.94"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Svg.ts -->
<g id="edge781" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.75,-5730.63 443,-5343.76 459,-5027 459.81,-5010.97 457.39,-2728.86 467,-2716 526.43,-2636.48 619.05,-2729.57 681,-2652 697.4,-2631.46 669.8,-2551.94 689,-2534 708.65,-2515.64 911.66,-2515.32 931,-2534 940.28,-2542.96 936.94,-2753.27 939,-2766 951.96,-2846.25 985.09,-2938.3 998.61,-2973.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.79,-2975 1000.9,-2979.85 1000.71,-2973.49 996.79,-2975"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge772" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.18,-5794.79C392.37,-5730.61 440.77,-5343.64 459,-5027 461.91,-4976.41 453.72,-4619.9 467,-4571 517.81,-4383.95 622.99,-4375.95 681,-4191 686.61,-4173.11 675.13,-4119.61 689,-4107 768.58,-4034.64 854.9,-4031 931,-4107 946.45,-4122.43 925.38,-10378.93 939,-10396 941.44,-10399.05 944.35,-10401.56 947.59,-10403.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.62,-10405.49 952.9,-10406.5 948.62,-10401.79 946.62,-10405.49"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge774" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.75,-5730.63 443.02,-5343.76 459,-5027 459.85,-5010.25 456.09,-2624.74 467,-2612 529.65,-2538.86 616.07,-2649.12 681,-2578 699.02,-2558.26 669.48,-2476.26 689,-2458 767.54,-2384.52 852.44,-2384.54 931,-2458 940.68,-2467.05 933.42,-2564.98 939,-2577 972.98,-2650.11 1037.92,-2628.82 1069.5,-2703 1087.62,-2745.57 1053.85,-9329.67 1082.5,-9366 1089.56,-9374.95 1100.96,-9379.13 1112.08,-9380.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1111.98,-9383.03 1118.2,-9381.69 1112.51,-9378.86 1111.98,-9383.03"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge775" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.2,-5794.79C392.51,-5730.62 441.62,-5343.69 459,-5027 461.01,-4990.39 457,-4402.28 467,-4367 538.95,-4113.24 744.35,-3810.63 931,-3997 944.1,-4010.08 928.18,-9313.98 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.34 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge784" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.13,-5813.1C384.18,-5874.25 393.39,-6225.19 467,-6294 501.92,-6326.65 648.8,-6280.66 681,-6316 696.59,-6333.1 672.56,-7132.72 689,-7149 765.42,-7224.69 825.3,-7168.88 931,-7149 995.93,-7136.79 1030.83,-7148.57 1069.5,-7095 1114.09,-7033.21 1141.03,-5802.24 1144.19,-5650.33"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.29,-5650.32 1144.31,-5644.28 1142.09,-5650.23 1146.29,-5650.32"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge801" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.25,-5813.04C385.05,-5872.36 398.19,-6205.53 467,-6273 535.76,-6340.42 618.11,-6234.06 681,-6307 695.69,-6324.04 673.01,-7101.17 689,-7117 765.43,-7192.68 853.08,-7191.14 931,-7117 943.98,-7104.65 929.41,-6971.13 939,-6956 944.3,-6947.64 952.32,-6941.14 960.94,-6936.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="968.87,-6934.58 973.32,-6930.04 967.01,-6930.81 968.87,-6934.58"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="967.94,-6932.7 965.25,-6934.02 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="963.09" cy="-6935.08" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge785" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M382.51,-5813.1C381.01,-5851.87 380.88,-6004.1 467,-6067 505.4,-6095.05 647.15,-6100.4 681,-6067 692.81,-6055.35 677.97,-5482.38 689,-5470 707.88,-5448.81 740.73,-5446.28 766.67,-5448.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.59,-5450.47 772.76,-5448.95 766.99,-5446.29 766.59,-5450.47"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/MangroveReviews.ts -->
<g id="edge779" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/MangroveReviews.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.71,-5730.63 442.75,-5343.75 459,-5027 459.57,-5015.88 459.1,-3430.86 467,-3423 613.18,-3277.54 785.08,-3277.28 931,-3423 945.16,-3437.14 926.52,-9170.36 939,-9186 940.99,-9188.49 943.3,-9190.62 945.84,-9192.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.12,-9194.46 951.34,-9195.75 947.28,-9190.86 945.12,-9194.46"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/LiveQueryHandler.ts -->
<g id="edge778" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;Logic/Web/LiveQueryHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.23,-5794.79C392.72,-5730.63 442.81,-5343.75 459,-5027 459.61,-5014.97 458.47,-3301.5 467,-3293 534.41,-3225.9 602.58,-3239.17 681,-3293 935.84,-3467.93 874.26,-3638.15 931,-3942 934.27,-3959.5 927.7,-9054.25 939,-9068 941.16,-9070.63 943.69,-9072.83 946.47,-9074.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.47,-9076.5 951.73,-9077.57 947.5,-9072.83 945.47,-9076.5"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge796" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.42,-5813.19C386.22,-5870.63 404.12,-6180.04 467,-6245 534.8,-6315.03 619.7,-6217.21 681,-6293 694.84,-6310.11 673.36,-7069.52 689,-7085 765.44,-7160.67 854.33,-7160.44 931,-7085 940.78,-7075.37 937.07,-6604.59 939,-6591 951.36,-6504.09 985.38,-6403.91 998.88,-6366.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.94,-6366.78 1001,-6360.42 996.99,-6365.35 1000.94,-6366.78"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge789" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.61,-5813.11C387.36,-5866.23 409.06,-6135.53 467,-6189 537.53,-6254.1 617.47,-6146.06 681,-6218 694.81,-6233.64 674.17,-6954.33 689,-6969 765.46,-7044.65 854.73,-7044.84 931,-6969 944.88,-6955.2 926.76,-5575.27 939,-5560 940.68,-5557.9 942.59,-5556.06 944.68,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.83,-5551.07 943.66,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge786" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M384.21,-5813.15C390.4,-5858.21 419.95,-6055.74 467,-6091 505.06,-6119.52 647.15,-6124.4 681,-6091 692.69,-6079.47 678.08,-5512.26 689,-5500 705.31,-5481.7 732.03,-5477.32 755.72,-5477.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.91,-5479.92 761.98,-5478.05 756.07,-5475.72 755.91,-5479.92"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Table.ts -->
<g id="edge787" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Base/Table.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.86,-5813.14C388.65,-5862.01 413.81,-6091.68 467,-6133 504.56,-6162.17 647.13,-6166.38 681,-6133 702.49,-6111.82 668.92,-5612.51 689,-5590 709.4,-5567.13 746.06,-5566.01 772.71,-5568.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.71,-5571.06 778.92,-5569.72 773.23,-5566.89 772.71,-5571.06"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/Histogram.ts -->
<g id="edge790" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/Histogram.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M385.15,-5813.36C391.89,-5840.34 415.28,-5918.59 467,-5954 485.42,-5966.62 509.9,-5970.69 530.69,-5971.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="530.68,-5973.57 536.73,-5971.61 530.78,-5969.37 530.68,-5973.57"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/ImportButton.ts -->
<g id="edge791" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/ImportButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M385.41,-5813.17C393.34,-5837.41 420.83,-5901.67 467,-5930 481.35,-5938.8 498.81,-5943.25 515.38,-5945.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="523.19,-5947.7 529.32,-5946.01 523.47,-5943.51 523.19,-5947.7"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="523.33,-5945.61 520.34,-5945.4 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="517.94" cy="-5945.24" rx="2.4" ry="2.4"/>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts -->
<g id="edge802" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.87,-5813.08C388.84,-5862.7 415.12,-6100.42 467,-6148 537.93,-6213.04 617.95,-6108.3 681,-6181 694.2,-6196.22 675.62,-6890.95 689,-6906 700.07,-6918.45 715.95,-6924.46 732.43,-6926.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.16,-6929.69 746.32,-6928.13 740.53,-6925.5 740.16,-6929.69"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.34,-6927.6 737.36,-6927.33 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="734.97" cy="-6927.11" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/ShareButton.ts -->
<g id="node152" class="node">
<title>UI/BigComponents/ShareButton.ts</title>
<g id="a_node152"><a xlink:href="UI/BigComponents/ShareButton.ts" xlink:title="ShareButton.ts">
<path fill="#ddfeff" stroke="black" d="M610.5,-6038C610.5,-6038 537.5,-6038 537.5,-6038 534.5,-6038 531.5,-6035 531.5,-6032 531.5,-6032 531.5,-6026 531.5,-6026 531.5,-6023 534.5,-6020 537.5,-6020 537.5,-6020 610.5,-6020 610.5,-6020 613.5,-6020 616.5,-6023 616.5,-6026 616.5,-6026 616.5,-6032 616.5,-6032 616.5,-6035 613.5,-6038 610.5,-6038"/>
<text text-anchor="middle" x="574" y="-6026.8" font-family="Helvetica,sans-Serif" font-size="9.00">ShareButton.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/ShareButton.ts -->
<g id="edge792" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/BigComponents/ShareButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.55,-5813.01C386.1,-5846.03 399.66,-5961.15 467,-6014 483.3,-6026.79 505.5,-6031.29 525.37,-6032.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.39,-6034.39 531.46,-6032.49 525.53,-6030.19 525.39,-6034.39"/>
</g>
<!-- UI/Image/ImageCarousel.ts -->
<g id="node158" class="node">
<title>UI/Image/ImageCarousel.ts</title>
<g id="a_node158"><a xlink:href="UI/Image/ImageCarousel.ts" xlink:title="ImageCarousel.ts">
<path fill="#ddfeff" stroke="black" d="M423.5,-4968C423.5,-4968 340.5,-4968 340.5,-4968 337.5,-4968 334.5,-4965 334.5,-4962 334.5,-4962 334.5,-4956 334.5,-4956 334.5,-4953 337.5,-4950 340.5,-4950 340.5,-4950 423.5,-4950 423.5,-4950 426.5,-4950 429.5,-4953 429.5,-4956 429.5,-4956 429.5,-4962 429.5,-4962 429.5,-4965 426.5,-4968 423.5,-4968"/>
<text text-anchor="middle" x="382" y="-4956.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImageCarousel.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Image/ImageCarousel.ts -->
<g id="edge794" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Image/ImageCarousel.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M380.63,-5794.72C371.18,-5730.11 315.48,-5340.45 298.5,-5021 297.38,-4999.94 286.19,-4983.53 305,-4974 309.92,-4971.51 315.2,-4969.43 320.62,-4967.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="328.96,-4967.64 334.21,-4964.06 327.88,-4963.58 328.96,-4967.64"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="328.42,-4965.61 325.52,-4966.39 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="323.2" cy="-4967.01" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts -->
<g id="node160" class="node">
<title>UI/Image/ImageUploadFlow.ts</title>
<g id="a_node160"><a xlink:href="UI/Image/ImageUploadFlow.ts" xlink:title="ImageUploadFlow.ts">
<path fill="#ddfeff" stroke="black" d="M429.5,-4998C429.5,-4998 334.5,-4998 334.5,-4998 331.5,-4998 328.5,-4995 328.5,-4992 328.5,-4992 328.5,-4986 328.5,-4986 328.5,-4983 331.5,-4980 334.5,-4980 334.5,-4980 429.5,-4980 429.5,-4980 432.5,-4980 435.5,-4983 435.5,-4986 435.5,-4986 435.5,-4992 435.5,-4992 435.5,-4995 432.5,-4998 429.5,-4998"/>
<text text-anchor="middle" x="382" y="-4986.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImageUploadFlow.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Image/ImageUploadFlow.ts -->
<g id="edge795" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Image/ImageUploadFlow.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M382,-5794.95C382,-5534.02 382,-5273.09 382,-5012.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="384.1,-5004.15 382,-4998.15 379.9,-5004.15 384.1,-5004.15"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="382,-5004.15 382,-5007.15 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="382" cy="-5009.55" rx="2.4" ry="2.4"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts -->
<g id="node183" class="node">
<title>UI/OpeningHours/OpeningHoursVisualization.ts</title>
<g id="a_node183"><a xlink:href="UI/OpeningHours/OpeningHoursVisualization.ts" xlink:title="OpeningHoursVisualization.ts">
<path fill="#ddfeff" stroke="black" d="M874,-7552C874,-7552 738,-7552 738,-7552 735,-7552 732,-7549 732,-7546 732,-7546 732,-7540 732,-7540 732,-7537 735,-7534 738,-7534 738,-7534 874,-7534 874,-7534 877,-7534 880,-7537 880,-7540 880,-7540 880,-7546 880,-7546 880,-7549 877,-7552 874,-7552"/>
<text text-anchor="middle" x="806" y="-7540.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHoursVisualization.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/OpeningHours/OpeningHoursVisualization.ts -->
<g id="edge797" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/OpeningHours/OpeningHoursVisualization.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.04,-5813.1C383.48,-5875.85 389.41,-6243.97 467,-6315 502.18,-6347.2 648.41,-6296.18 681,-6331 690.02,-6340.63 686.22,-7268.1 689,-7281 709.55,-7376.21 766.53,-7479.05 792.19,-7522.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="794.43,-7529.91 799.33,-7533.96 798.02,-7527.74 794.43,-7529.91"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="796.22,-7528.82 794.67,-7526.26 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="793.43" cy="-7524.2" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/MultiApply.ts -->
<g id="node191" class="node">
<title>UI/Popup/MultiApply.ts</title>
<g id="a_node191"><a xlink:href="UI/Popup/MultiApply.ts" xlink:title="MultiApply.ts">
<path fill="#ddfeff" stroke="black" d="M258.5,-4788C258.5,-4788 196.5,-4788 196.5,-4788 193.5,-4788 190.5,-4785 190.5,-4782 190.5,-4782 190.5,-4776 190.5,-4776 190.5,-4773 193.5,-4770 196.5,-4770 196.5,-4770 258.5,-4770 258.5,-4770 261.5,-4770 264.5,-4773 264.5,-4776 264.5,-4776 264.5,-4782 264.5,-4782 264.5,-4785 261.5,-4788 258.5,-4788"/>
<text text-anchor="middle" x="227.5" y="-4776.8" font-family="Helvetica,sans-Serif" font-size="9.00">MultiApply.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Popup/MultiApply.ts -->
<g id="edge798" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Popup/MultiApply.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M379.65,-5794.93C365.74,-5701.44 248.58,-4913.99 230.77,-4794.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="232.83,-4793.8 229.86,-4788.17 228.67,-4794.42 232.83,-4793.8"/>
</g>
<!-- UI/Reviews/ReviewElement.ts -->
<g id="node194" class="node">
<title>UI/Reviews/ReviewElement.ts</title>
<g id="a_node194"><a xlink:href="UI/Reviews/ReviewElement.ts" xlink:title="ReviewElement.ts">
<path fill="#ddfeff" stroke="black" d="M616.5,-5828C616.5,-5828 531.5,-5828 531.5,-5828 528.5,-5828 525.5,-5825 525.5,-5822 525.5,-5822 525.5,-5816 525.5,-5816 525.5,-5813 528.5,-5810 531.5,-5810 531.5,-5810 616.5,-5810 616.5,-5810 619.5,-5810 622.5,-5813 622.5,-5816 622.5,-5816 622.5,-5822 622.5,-5822 622.5,-5825 619.5,-5828 616.5,-5828"/>
<text text-anchor="middle" x="574" y="-5816.8" font-family="Helvetica,sans-Serif" font-size="9.00">ReviewElement.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Reviews/ReviewElement.ts -->
<g id="edge799" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Reviews/ReviewElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M442.08,-5808.66C466.78,-5810.61 495.29,-5812.86 519.38,-5814.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="519.26,-5816.86 525.4,-5815.24 519.59,-5812.68 519.26,-5816.86"/>
</g>
<!-- UI/Reviews/ReviewForm.ts -->
<g id="node196" class="node">
<title>UI/Reviews/ReviewForm.ts</title>
<g id="a_node196"><a xlink:href="UI/Reviews/ReviewForm.ts" xlink:title="ReviewForm.ts">
<path fill="#ddfeff" stroke="black" d="M609.5,-5798C609.5,-5798 538.5,-5798 538.5,-5798 535.5,-5798 532.5,-5795 532.5,-5792 532.5,-5792 532.5,-5786 532.5,-5786 532.5,-5783 535.5,-5780 538.5,-5780 538.5,-5780 609.5,-5780 609.5,-5780 612.5,-5780 615.5,-5783 615.5,-5786 615.5,-5786 615.5,-5792 615.5,-5792 615.5,-5795 612.5,-5798 609.5,-5798"/>
<text text-anchor="middle" x="574" y="-5786.8" font-family="Helvetica,sans-Serif" font-size="9.00">ReviewForm.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Reviews/ReviewForm.ts -->
<g id="edge800" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Reviews/ReviewForm.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M442.08,-5799.34C469.2,-5797.19 500.92,-5794.69 526.34,-5792.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="526.51,-5794.78 532.32,-5792.21 526.18,-5790.59 526.51,-5794.78"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts -->
<g id="node198" class="node">
<title>UI/Wikipedia/WikipediaBox.ts</title>
<g id="a_node198"><a xlink:href="UI/Wikipedia/WikipediaBox.ts" xlink:title="WikipediaBox.ts">
<path fill="#ddfeff" stroke="black" d="M612,-7238C612,-7238 536,-7238 536,-7238 533,-7238 530,-7235 530,-7232 530,-7232 530,-7226 530,-7226 530,-7223 533,-7220 536,-7220 536,-7220 612,-7220 612,-7220 615,-7220 618,-7223 618,-7226 618,-7226 618,-7232 618,-7232 618,-7235 615,-7238 612,-7238"/>
<text text-anchor="middle" x="574" y="-7226.8" font-family="Helvetica,sans-Serif" font-size="9.00">WikipediaBox.ts</text>
</a>
</g>
</g>
<!-- UI/SpecialVisualizations.ts&#45;&gt;UI/Wikipedia/WikipediaBox.ts -->
<g id="edge803" class="edge">
<title>UI/SpecialVisualizations.ts&#45;&gt;UI/Wikipedia/WikipediaBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.19,-5813.02C384.87,-5886.89 398.72,-6399.7 467,-6809 493.87,-6970.09 551.44,-7160.12 568.28,-7214.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="566.33,-7214.86 570.13,-7219.96 570.34,-7213.6 566.33,-7214.86"/>
</g>
<!-- UI/BigComponents/LicensePicker.ts -->
<g id="node150" class="node">
<title>UI/BigComponents/LicensePicker.ts</title>
<g id="a_node150"><a xlink:href="UI/BigComponents/LicensePicker.ts" xlink:title="LicensePicker.ts">
<path fill="#ddfeff" stroke="black" d="M611.5,-5888C611.5,-5888 536.5,-5888 536.5,-5888 533.5,-5888 530.5,-5885 530.5,-5882 530.5,-5882 530.5,-5876 530.5,-5876 530.5,-5873 533.5,-5870 536.5,-5870 536.5,-5870 611.5,-5870 611.5,-5870 614.5,-5870 617.5,-5873 617.5,-5876 617.5,-5876 617.5,-5882 617.5,-5882 617.5,-5885 614.5,-5888 611.5,-5888"/>
<text text-anchor="middle" x="574" y="-5876.8" font-family="Helvetica,sans-Serif" font-size="9.00">LicensePicker.ts</text>
</a>
</g>
</g>
<!-- UI/BigComponents/LicensePicker.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge430" class="edge">
<title>UI/BigComponents/LicensePicker.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.66,-5881.93C640.11,-5880.96 666.02,-5875.35 681,-5857 692.62,-5842.76 679.21,-3225.56 689,-3210 752.63,-3108.89 865.24,-3192.74 931,-3093 941.78,-3076.66 924.85,-2930.52 939,-2917 980.93,-2876.93 1028.44,-2876.03 1069.5,-2917 1083.64,-2931.11 1080.86,-8649.1 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/BigComponents/LicensePicker.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge432" class="edge">
<title>UI/BigComponents/LicensePicker.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.6,-5883.18C702.7,-5890.5 889.15,-5900.94 931,-5857 942.86,-5844.55 928,-5251.22 939,-5238 944.2,-5231.75 951.47,-5227.95 959.27,-5225.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.96,-5227.72 965.33,-5224.31 959.01,-5223.63 959.96,-5227.72"/>
</g>
<!-- UI/BigComponents/LicensePicker.ts&#45;&gt;State.ts -->
<g id="edge431" class="edge">
<title>UI/BigComponents/LicensePicker.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.66,-5881.93C640.11,-5880.96 666.03,-5875.35 681,-5857 692.72,-5842.65 681.32,-3205.86 689,-3189 748.24,-3058.86 868.64,-3105.67 931,-2977 946.14,-2945.76 925.43,-2852.95 939,-2821 947.83,-2800.21 965.71,-2781.79 980.56,-2769.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="988.24,-2765.56 991.59,-2760.15 985.6,-2762.29 988.24,-2765.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="986.92,-2763.93 984.59,-2765.81 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="982.72" cy="-2767.32" rx="2.4" ry="2.4"/>
</g>
<!-- UI/BigComponents/LicensePicker.ts&#45;&gt;UI/Input/DropDown.ts -->
<g id="edge433" class="edge">
<title>UI/BigComponents/LicensePicker.ts&#45;&gt;UI/Input/DropDown.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.56,-5873.05C639.84,-5872.52 665.61,-5876.47 681,-5894 694.6,-5909.49 675.31,-6620.59 689,-6636 706.78,-6656.01 737.01,-6659.39 762.15,-6657.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.59,-6660.03 768.42,-6657.5 762.29,-6655.84 762.59,-6660.03"/>
</g>
<!-- UI/Input/DropDown.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge499" class="edge">
<title>UI/Input/DropDown.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M843.78,-6658.11C872.08,-6661.23 909.82,-6659.82 931,-6636 942.56,-6622.99 926.67,-4142.29 939,-4130 980.08,-4089.05 1028.43,-4089.05 1069.5,-4130 1080.66,-4141.13 1081.2,-8653.29 1082.5,-8669 1094.31,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/DropDown.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge500" class="edge">
<title>UI/Input/DropDown.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M843.76,-6658.1C872.05,-6661.21 909.79,-6659.79 931,-6636 943.92,-6621.51 926.64,-5252.97 939,-5238 944.18,-5231.73 951.43,-5227.92 959.24,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.29,-5224.28 958.97,-5223.6 959.92,-5227.69"/>
</g>
<!-- UI/Input/InputElement.ts -->
<g id="node163" class="node">
<title>UI/Input/InputElement.ts</title>
<g id="a_node163"><a xlink:href="UI/Input/InputElement.ts" xlink:title="InputElement.ts">
<path fill="#ddfeff" stroke="black" d="M1044.5,-6615C1044.5,-6615 966.5,-6615 966.5,-6615 963.5,-6615 960.5,-6612 960.5,-6609 960.5,-6609 960.5,-6603 960.5,-6603 960.5,-6600 963.5,-6597 966.5,-6597 966.5,-6597 1044.5,-6597 1044.5,-6597 1047.5,-6597 1050.5,-6600 1050.5,-6603 1050.5,-6603 1050.5,-6609 1050.5,-6609 1050.5,-6612 1047.5,-6615 1044.5,-6615"/>
<text text-anchor="middle" x="1005.5" y="-6603.8" font-family="Helvetica,sans-Serif" font-size="9.00">InputElement.ts</text>
</a>
</g>
</g>
<!-- UI/Input/DropDown.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge501" class="edge">
<title>UI/Input/DropDown.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M843.56,-6649.15C868.51,-6647.26 902.14,-6643.49 931,-6636 948.04,-6631.58 966.38,-6624.1 980.47,-6617.71"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="981.67,-6619.48 986.24,-6615.06 979.91,-6615.66 981.67,-6619.48"/>
</g>
<!-- UI/BigComponents/ShareButton.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge434" class="edge">
<title>UI/BigComponents/ShareButton.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.68,-6022.19C639.12,-6021.09 665.33,-6024.43 681,-6042 699.31,-6062.52 669.48,-7012.63 689,-7032 809.07,-7151.11 942.64,-7138.85 1069.5,-7027 1310.82,-6814.25 1318.53,-5662.09 1318.54,-5516.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1320.64,-5516.01 1318.53,-5510.01 1316.44,-5516.02 1320.64,-5516.01"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge441" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.09,-5904.85C638.54,-5905.02 663.69,-5909.07 681,-5924 690.48,-5932.17 678.97,-5943.51 689,-5951 775.18,-6015.35 854.11,-6026.21 931,-5951 945.34,-5936.97 926.33,-5605.55 939,-5590 945.53,-5581.99 955.39,-5577.72 965.49,-5575.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.88,-5577.64 971.44,-5574.54 965.17,-5573.5 965.88,-5577.64"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge438" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.08,-5914.98C639.49,-5915.6 665.56,-5911.73 681,-5894 693.1,-5880.11 676.84,-3254.84 689,-3241 760.63,-3159.52 858.23,-3289.47 931,-3209 950.24,-3187.73 918.41,-2970.96 939,-2951 980.64,-2910.63 1028.44,-2910.03 1069.5,-2951 1083.56,-2965.02 1080.87,-8649.21 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Models/Constants.ts -->
<g id="edge439" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.07,-5903.03C639.48,-5902.41 665.54,-5906.28 681,-5924 688.89,-5933.05 688.07,-7641.03 689,-7653 712.64,-7957.6 785.65,-8324.72 801.81,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.85,-8404.5 803.12,-8409.95 803.97,-8403.65 799.85,-8404.5"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge436" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.08,-5914.98C639.49,-5915.6 665.56,-5911.73 681,-5894 693.01,-5880.22 676.79,-3275.6 689,-3262 725.14,-3221.73 894.31,-3274.77 931,-3235 950.67,-3213.68 918.17,-2994.2 939,-2974 959.82,-2953.81 1048.98,-2953.51 1069.5,-2974 1105.49,-3009.92 1051.02,-10256.07 1082.5,-10296 1087.16,-10301.91 1093.72,-10305.74 1100.83,-10308.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.57,-10310.29 1106.91,-10309.91 1101.72,-10306.25 1100.57,-10310.29"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge444" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.04,-5911.87C702,-5916.65 889.58,-5921.74 931,-5877 943.06,-5863.97 927.65,-5251.65 939,-5238 944.2,-5231.75 951.46,-5227.95 959.27,-5225.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.96,-5227.72 965.33,-5224.31 959.01,-5223.63 959.96,-5227.72"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Svg.ts -->
<g id="edge440" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.08,-5914.98C639.49,-5915.6 665.56,-5911.73 681,-5894 692.63,-5880.65 678.72,-3359.41 689,-3345 755.14,-3252.33 863.55,-3352.72 931,-3261 947.73,-3238.25 921.53,-3029.18 939,-3007 946.96,-2996.89 960.04,-2992.13 972.43,-2989.99"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.78,-2992.06 978.42,-2989.14 972.19,-2987.9 972.78,-2992.06"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts -->
<g id="edge435" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Osm/Actions/CreateNewNodeAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.06,-5914.97C639.48,-5915.58 665.54,-5911.71 681,-5894 695.93,-5876.89 672.9,-4275.02 689,-4259 727.12,-4221.07 892.95,-4221 931,-4259 946.15,-4274.13 925.64,-10409.26 939,-10426 939.45,-10426.57 939.93,-10427.12 940.41,-10427.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="939.33,-10429.51 945.2,-10431.97 942.15,-10426.39 939.33,-10429.51"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge437" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.08,-5903.02C639.5,-5902.4 665.56,-5906.27 681,-5924 695.97,-5941.2 681.39,-9185.51 689,-9207 709.07,-9263.69 761.89,-9314.53 788.77,-9337.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="787.55,-9339.43 793.48,-9341.72 790.27,-9336.23 787.55,-9339.43"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge445" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.07,-5903.49C639.21,-5903.1 664.99,-5907.03 681,-5924 695.84,-5939.73 674.41,-6005.04 689,-6021 762.66,-6101.57 850.86,-5988.88 931,-6063 972.14,-6101.05 996.38,-6281.87 1002.78,-6335.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.73,-6336.27 1003.51,-6341.99 1004.9,-6335.79 1000.73,-6336.27"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge443" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.17,-5906.86C637.89,-5907.72 662.34,-5911.78 681,-5924 686.68,-5927.72 683.08,-5933.69 689,-5937 712.47,-5950.12 911.79,-5955.81 931,-5937 945.97,-5922.34 925.77,-5576.24 939,-5560 940.7,-5557.91 942.62,-5556.08 944.72,-5554.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946,-5556.15 949.89,-5551.12 943.72,-5552.62 946,-5556.15"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge442" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M617.22,-5914.88C639.54,-5915.43 665.47,-5911.52 681,-5894 695.52,-5877.62 674.38,-5516.3 689,-5500 705.31,-5481.82 731.89,-5477.41 755.5,-5477.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.67,-5479.96 761.74,-5478.07 755.82,-5475.76 755.67,-5479.96"/>
</g>
<!-- UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/NewPoint/ConfirmLocationOfPoint.ts -->
<g id="edge446" class="edge">
<title>UI/BigComponents/SimpleAddUI.ts&#45;&gt;UI/NewPoint/ConfirmLocationOfPoint.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M530.89,-5916.18C503.18,-5918.07 470.93,-5914.19 463,-5888 461.18,-5881.99 461.18,-5781.01 463,-5775 463.93,-5771.93 464.49,-5770.99 467,-5769 482.11,-5757.02 501.17,-5748.37 519.01,-5742.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="527.24,-5741.86 532.33,-5738.05 525.97,-5737.85 527.24,-5741.86"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="526.6,-5739.86 523.74,-5740.76 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="521.45" cy="-5741.48" rx="2.4" ry="2.4"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M530.76,-5917.2C503.74,-5919.58 472.67,-5916.33 465,-5891 463.08,-5884.67 463.08,-5778.33 465,-5772 465.46,-5770.47 465.74,-5770 467,-5769 482.11,-5757.02 501.17,-5748.37 519.01,-5742.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="527.24,-5741.86 532.33,-5738.05 525.97,-5737.85 527.24,-5741.86"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="526.6,-5739.86 523.74,-5740.76 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="521.45" cy="-5741.48" rx="2.4" ry="2.4"/>
</g>
<!-- UI/DefaultGuiState.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge447" class="edge">
<title>UI/DefaultGuiState.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.37,-4503.82C388.04,-4388.25 435.5,-3204.2 459,-2247 459.35,-2232.72 457.6,-1743.75 467,-1733 530.34,-1660.63 615.91,-1771.8 681,-1701 699.69,-1680.67 668.86,-1595.89 689,-1577 728.23,-1540.22 881,-1557.21 931,-1577 1009.5,-1608.07 1035.89,-1629.55 1069.5,-1707 1088.75,-1751.35 1078.53,-8620.82 1082.5,-8669 1094.23,-8811.4 1129.94,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/DefaultGuiState.ts&#45;&gt;Logic/Web/Hash.ts -->
<g id="edge448" class="edge">
<title>UI/DefaultGuiState.ts&#45;&gt;Logic/Web/Hash.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.35,-4503.82C387.72,-4388.24 432.26,-3204.12 459,-2247 459.56,-2227.11 457.94,-1906.71 467,-1889 521.3,-1782.78 608.65,-1821.84 681,-1727 686.81,-1719.39 681.07,-1712.37 689,-1707 778.06,-1646.7 838.79,-1651.64 931,-1707 1043.25,-1774.39 1037.66,-1840 1069.5,-1967 1075.5,-1990.92 1066.94,-9048.87 1082.5,-9068 1089.64,-9076.78 1101.07,-9080.6 1112.17,-9082.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1112.11,-9084.14 1118.28,-9082.6 1112.5,-9079.95 1112.11,-9084.14"/>
</g>
<!-- UI/DefaultGuiState.ts&#45;&gt;Logic/Web/QueryParameters.ts -->
<g id="edge449" class="edge">
<title>UI/DefaultGuiState.ts&#45;&gt;Logic/Web/QueryParameters.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.28,-4503.83C388.01,-4359.46 456.55,-2566.17 931,-3040 946.17,-3055.15 925.62,-9199.24 939,-9216 941.23,-9218.79 943.86,-9221.13 946.77,-9223.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.02,-9225.07 952.27,-9226.2 948.09,-9221.42 946.02,-9225.07"/>
</g>
<!-- UI/Image/AttributedImage.ts -->
<g id="node155" class="node">
<title>UI/Image/AttributedImage.ts</title>
<g id="a_node155"><a xlink:href="UI/Image/AttributedImage.ts" xlink:title="AttributedImage.ts">
<path fill="#ddfeff" stroke="black" d="M619.5,-4998C619.5,-4998 528.5,-4998 528.5,-4998 525.5,-4998 522.5,-4995 522.5,-4992 522.5,-4992 522.5,-4986 522.5,-4986 522.5,-4983 525.5,-4980 528.5,-4980 528.5,-4980 619.5,-4980 619.5,-4980 622.5,-4980 625.5,-4983 625.5,-4986 625.5,-4986 625.5,-4992 625.5,-4992 625.5,-4995 622.5,-4998 619.5,-4998"/>
<text text-anchor="middle" x="574" y="-4986.8" font-family="Helvetica,sans-Serif" font-size="9.00">AttributedImage.ts</text>
</a>
</g>
</g>
<!-- UI/Image/AttributedImage.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge451" class="edge">
<title>UI/Image/AttributedImage.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M586.96,-4998.29C615.15,-5020.18 683.78,-5073.4 689,-5077 792.83,-5148.51 868.04,-5115.77 931,-5225 940.3,-5241.13 927.23,-5545.58 939,-5560 945.54,-5568.01 955.4,-5572.27 965.5,-5574.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.17,-5576.49 971.45,-5575.45 965.89,-5572.35 965.17,-5576.49"/>
</g>
<!-- UI/Image/AttributedImage.ts&#45;&gt;Logic/ImageProviders/Mapillary.ts -->
<g id="edge450" class="edge">
<title>UI/Image/AttributedImage.ts&#45;&gt;Logic/ImageProviders/Mapillary.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M576.88,-4998.28C589.26,-5059.81 659.11,-5415.43 681,-5709 682.53,-5729.5 681.58,-8649.83 689,-8669 708.8,-8720.13 759.48,-8763.51 786.83,-8784.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="785.91,-8786.06 791.98,-8787.95 788.41,-8782.69 785.91,-8786.06"/>
</g>
<!-- UI/Image/AttributedImage.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge452" class="edge">
<title>UI/Image/AttributedImage.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M625.55,-4993.79C706,-5004.43 861.2,-5037.91 931,-5141 941.81,-5156.97 926.59,-5473.24 939,-5488 947,-5497.52 959.8,-5501.35 971.98,-5502.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.13,-5504.69 978.25,-5503 972.41,-5500.5 972.13,-5504.69"/>
</g>
<!-- UI/Image/Attribution.ts -->
<g id="node156" class="node">
<title>UI/Image/Attribution.ts</title>
<g id="a_node156"><a xlink:href="UI/Image/Attribution.ts" xlink:title="Attribution.ts">
<path fill="#ddfeff" stroke="black" d="M838.5,-4998C838.5,-4998 773.5,-4998 773.5,-4998 770.5,-4998 767.5,-4995 767.5,-4992 767.5,-4992 767.5,-4986 767.5,-4986 767.5,-4983 770.5,-4980 773.5,-4980 773.5,-4980 838.5,-4980 838.5,-4980 841.5,-4980 844.5,-4983 844.5,-4986 844.5,-4986 844.5,-4992 844.5,-4992 844.5,-4995 841.5,-4998 838.5,-4998"/>
<text text-anchor="middle" x="806" y="-4986.8" font-family="Helvetica,sans-Serif" font-size="9.00">Attribution.ts</text>
</a>
</g>
</g>
<!-- UI/Image/AttributedImage.ts&#45;&gt;UI/Image/Attribution.ts -->
<g id="edge453" class="edge">
<title>UI/Image/AttributedImage.ts&#45;&gt;UI/Image/Attribution.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M625.76,-4989C666.32,-4989 722.58,-4989 761.19,-4989"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="761.23,-4991.1 767.23,-4989 761.23,-4986.9 761.23,-4991.1"/>
</g>
<!-- UI/Image/Attribution.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge454" class="edge">
<title>UI/Image/Attribution.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.59,-4994.35C873.56,-5000.64 911.8,-5014.18 931,-5043 946.93,-5066.9 920.92,-5537.67 939,-5560 945.5,-5568.03 955.35,-5572.3 965.45,-5574.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.13,-5576.53 971.4,-5575.48 965.85,-5572.39 965.13,-5576.53"/>
</g>
<!-- UI/Image/Attribution.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge456" class="edge">
<title>UI/Image/Attribution.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.63,-4990.23C873.21,-4993.35 910.91,-5002.64 931,-5029 943.34,-5045.19 925.74,-5196.56 939,-5212 944.29,-5218.17 951.6,-5221.93 959.43,-5224.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.16,-5226.24 965.48,-5225.55 960.11,-5222.15 959.16,-5226.24"/>
</g>
<!-- UI/Image/Attribution.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge455" class="edge">
<title>UI/Image/Attribution.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.58,-4994.35C873.54,-5000.65 911.77,-5014.19 931,-5043 945.59,-5064.86 924.48,-5494.1 939,-5516 944.03,-5523.58 951.52,-5529.2 959.67,-5533.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.07,-5535.38 965.4,-5536 960.83,-5531.57 959.07,-5535.38"/>
</g>
<!-- UI/Image/DeleteImage.ts -->
<g id="node157" class="node">
<title>UI/Image/DeleteImage.ts</title>
<g id="a_node157"><a xlink:href="UI/Image/DeleteImage.ts" xlink:title="DeleteImage.ts">
<path fill="#ddfeff" stroke="black" d="M610.5,-4968C610.5,-4968 537.5,-4968 537.5,-4968 534.5,-4968 531.5,-4965 531.5,-4962 531.5,-4962 531.5,-4956 531.5,-4956 531.5,-4953 534.5,-4950 537.5,-4950 537.5,-4950 610.5,-4950 610.5,-4950 613.5,-4950 616.5,-4953 616.5,-4956 616.5,-4956 616.5,-4962 616.5,-4962 616.5,-4965 613.5,-4968 610.5,-4968"/>
<text text-anchor="middle" x="574" y="-4956.8" font-family="Helvetica,sans-Serif" font-size="9.00">DeleteImage.ts</text>
</a>
</g>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge461" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.67,-4953.63C638.82,-4953.24 664.75,-4957.14 681,-4974 692.94,-4986.39 676.93,-5038.74 689,-5051 764.99,-5128.2 858.43,-4999.58 931,-5080 948.87,-5099.8 922.21,-5539.28 939,-5560 945.51,-5568.03 955.36,-5572.3 965.46,-5574.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.14,-5576.52 971.41,-5575.48 965.86,-5572.38 965.14,-5576.52"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge462" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.82,-4954.06C701.36,-4945.1 888.21,-4930.84 931,-4974 949.63,-4992.79 921.87,-5191.84 939,-5212 944.26,-5218.2 951.56,-5221.97 959.38,-5224.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.11,-5226.29 965.43,-5225.6 960.06,-5222.19 959.11,-5226.29"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;State.ts -->
<g id="edge459" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.54,-4964.96C639.07,-4965.65 665.43,-4961.86 681,-4944 698.88,-4923.49 671.19,-3005.57 689,-2985 760.18,-2902.79 858.18,-3029.76 931,-2949 944.41,-2934.13 926.51,-2784.65 939,-2769 945.35,-2761.04 954.86,-2756.41 964.69,-2753.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.97,-2754.35 978.48,-2751.19 972.2,-2750.22 972.97,-2754.35"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.58,-2752.28 969.63,-2752.83 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="967.27" cy="-2753.27" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;Svg.ts -->
<g id="edge460" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.54,-4964.95C639.07,-4965.65 665.42,-4961.86 681,-4944 697.97,-4924.54 673.66,-3105.77 689,-3085 755.91,-2994.44 906.2,-2986.37 972.28,-2987.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.37,-2989.59 978.41,-2987.62 972.46,-2985.39 972.37,-2989.59"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge457" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.76,-4964.92C639.21,-4965.57 665.42,-4961.74 681,-4944 694.14,-4929.03 674.84,-4241.01 689,-4227 765.48,-4151.37 854.9,-4151 931,-4227 946.16,-4242.14 925.64,-10379.26 939,-10396 941.44,-10399.05 944.35,-10401.56 947.59,-10403.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.63,-10405.49 952.9,-10406.5 948.62,-10401.79 946.63,-10405.49"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge458" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.5,-4964.92C639.02,-4965.61 665.38,-4961.82 681,-4944 696.15,-4926.73 672.68,-4133.17 689,-4117 765.42,-4041.32 854.89,-4041.01 931,-4117 943.81,-4129.79 928.42,-9314.31 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.34 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/Image/DeleteImage.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge463" class="edge">
<title>UI/Image/DeleteImage.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M616.53,-4953.51C638.78,-4953.05 664.85,-4956.91 681,-4974 695.55,-4989.4 681.05,-5049.36 689,-5069 752.77,-5226.51 871.83,-5205.71 931,-5365 942.92,-5397.09 936.91,-5638.83 939,-5673 955.27,-5938.86 993.61,-6261.73 1002.59,-6335.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-6336.15 1003.37,-6341.85 1004.73,-6335.64 1000.56,-6336.15"/>
</g>
<!-- UI/Image/ImageCarousel.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge464" class="edge">
<title>UI/Image/ImageCarousel.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M429.56,-4958.45C440.77,-4960.68 451.62,-4965.27 459,-4974 480.59,-4999.56 445,-5249.79 467,-5275 535.7,-5353.72 861.84,-5272.68 931,-5351 946.38,-5368.42 924.17,-5542.11 939,-5560 945.47,-5567.81 955.1,-5572.05 965,-5574.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="964.9,-5576.35 971.18,-5575.34 965.64,-5572.21 964.9,-5576.35"/>
</g>
<!-- UI/Image/ImageCarousel.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge465" class="edge">
<title>UI/Image/ImageCarousel.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M391.78,-4949.97C406.02,-4936.04 435.73,-4909.88 467,-4900 491.59,-4892.23 913.07,-4892.46 931,-4911 938.36,-4918.61 938.44,-5662.43 939,-5673 953.22,-5938.97 993.12,-6261.76 1002.51,-6335.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.47,-6336.16 1003.32,-6341.85 1004.64,-6335.63 1000.47,-6336.16"/>
</g>
<!-- UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/AttributedImage.ts -->
<g id="edge466" class="edge">
<title>UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/AttributedImage.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M429.6,-4967.63C441.76,-4969.8 454.86,-4972.06 467,-4974 482.88,-4976.54 500.13,-4979.08 516.01,-4981.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="516.03,-4983.44 522.26,-4982.2 516.61,-4979.29 516.03,-4983.44"/>
</g>
<!-- UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/DeleteImage.ts -->
<g id="edge467" class="edge">
<title>UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/DeleteImage.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M429.97,-4959C456.45,-4959 489.69,-4959 517.46,-4959"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.42,-4961.1 531.42,-4959 525.42,-4956.9 525.42,-4961.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="525.42,-4959 522.42,-4959 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="520.02" cy="-4959" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Image/SlideShow.ts -->
<g id="node159" class="node">
<title>UI/Image/SlideShow.ts</title>
<g id="a_node159"><a xlink:href="UI/Image/SlideShow.ts" xlink:title="SlideShow.ts">
<path fill="#ddfeff" stroke="black" d="M604.5,-4938C604.5,-4938 543.5,-4938 543.5,-4938 540.5,-4938 537.5,-4935 537.5,-4932 537.5,-4932 537.5,-4926 537.5,-4926 537.5,-4923 540.5,-4920 543.5,-4920 543.5,-4920 604.5,-4920 604.5,-4920 607.5,-4920 610.5,-4923 610.5,-4926 610.5,-4926 610.5,-4932 610.5,-4932 610.5,-4935 607.5,-4938 604.5,-4938"/>
<text text-anchor="middle" x="574" y="-4926.8" font-family="Helvetica,sans-Serif" font-size="9.00">SlideShow.ts</text>
</a>
</g>
</g>
<!-- UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/SlideShow.ts -->
<g id="edge468" class="edge">
<title>UI/Image/ImageCarousel.ts&#45;&gt;UI/Image/SlideShow.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M429.6,-4950.37C441.76,-4948.2 454.86,-4945.94 467,-4944 488.03,-4940.64 511.48,-4937.28 530.96,-4934.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="531.47,-4936.64 537.13,-4933.75 530.9,-4932.48 531.47,-4936.64"/>
</g>
<!-- UI/Image/SlideShow.ts&#45;&gt;Utils.ts -->
<g id="edge482" class="edge">
<title>UI/Image/SlideShow.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M588.73,-4919.92C612.86,-4903.04 662.08,-4864.22 681,-4817 700.29,-4768.86 667.21,-2997.06 689,-2950 750.44,-2817.27 801.81,-2786.7 939,-2736 1059.99,-2691.29 1145.26,-2713.47 1216.5,-2821 1308.67,-2960.12 1317.56,-3523.63 1318.41,-3625.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.31,-3625.53 1318.46,-3631.52 1320.51,-3625.5 1316.31,-3625.53"/>
</g>
<!-- UI/Image/SlideShow.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge483" class="edge">
<title>UI/Image/SlideShow.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M610.54,-4924C633.76,-4922.88 663,-4925.86 681,-4944 699.95,-4963.1 670.59,-4984.38 689,-5004 764.04,-5083.95 860.75,-4967.81 931,-5052 949.08,-5073.67 921.24,-5538.07 939,-5560 945.51,-5568.03 955.35,-5572.3 965.45,-5574.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.13,-5576.53 971.41,-5575.48 965.85,-5572.39 965.13,-5576.53"/>
</g>
<!-- UI/Image/SlideShow.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge484" class="edge">
<title>UI/Image/SlideShow.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M610.8,-4927.93C692.5,-4926.32 888.85,-4927.5 931,-4974 952.57,-4997.8 916.42,-5240.15 939,-5263 960.69,-5284.95 1190.93,-5256.73 1216.5,-5274 1291.27,-5324.5 1311.93,-5443.66 1317,-5485.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.93,-5486.22 1317.69,-5491.95 1319.1,-5485.75 1314.93,-5486.22"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge475" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.77,-4988.47C444.68,-4990.83 452.97,-4995 459,-5002 473.46,-5018.8 451.17,-5385.48 467,-5401 534.92,-5467.58 602.68,-5454.97 681,-5401 689.22,-5395.33 680.78,-5385.67 689,-5380 733.28,-5349.48 892.14,-5342.83 931,-5380 945.47,-5393.84 926.18,-5544.62 939,-5560 945.5,-5567.79 955.14,-5572.02 965.03,-5574.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="964.93,-5576.32 971.21,-5575.32 965.67,-5572.19 964.93,-5576.32"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge472" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.58,-4988.25C444.61,-4985.68 453.01,-4981.26 459,-4974 481.25,-4947.02 446.96,-2484.66 467,-2456 525.09,-2372.91 610.9,-2450.25 681,-2377 689.07,-2368.57 679.58,-2358.88 689,-2352 775.87,-2288.59 824.71,-2335.52 931,-2352 994.82,-2361.89 1031.31,-2343.91 1069.5,-2396 1082.38,-2413.57 1080.71,-8647.29 1082.5,-8669 1094.25,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge479" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.62,-4988.59C444.55,-4990.94 452.89,-4995.08 459,-5002 471.89,-5016.59 453.01,-5163.46 467,-5177 504.05,-5212.86 890.18,-5151.5 931,-5183 941.58,-5191.17 929.21,-5202.9 939,-5212 944.57,-5217.18 951.59,-5220.56 958.95,-5222.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.86,-5224.86 965.19,-5224.26 959.87,-5220.78 958.86,-5224.86"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;State.ts -->
<g id="edge473" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.57,-4988.25C444.61,-4985.68 453.01,-4981.26 459,-4974 469.41,-4961.37 459.69,-2631.64 467,-2617 520.29,-2510.28 618.9,-2556.85 681,-2455 691.8,-2437.28 673.12,-2422.36 689,-2409 771.31,-2339.77 853.4,-2334.53 931,-2409 938.78,-2416.47 936.55,-2592.49 939,-2603 950.07,-2650.52 976.26,-2701.68 991.97,-2729.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="994.09,-2737.58 998.9,-2741.74 997.74,-2735.49 994.09,-2737.58"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="995.92,-2736.54 994.42,-2733.94 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="993.23" cy="-2731.85" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/ImageProviders/ImgurUploader.ts -->
<g id="edge469" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/ImageProviders/ImgurUploader.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.87,-4988.38C444.77,-4990.75 453.04,-4994.95 459,-5002 476.27,-5022.43 449.44,-8833.82 467,-8854 480.05,-8868.99 500.69,-8874.08 520.31,-8874.92"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="520.31,-8877.02 526.35,-8875.05 520.4,-8872.82 520.31,-8877.02"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;Svg.ts -->
<g id="edge474" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.57,-4988.25C444.61,-4985.67 453.01,-4981.26 459,-4974 479.14,-4949.58 450.26,-2721.87 467,-2695 523.13,-2604.92 620.38,-2676.13 681,-2589 690.7,-2575.06 676.38,-2524.36 689,-2513 708.98,-2495.01 911.69,-2494.29 931,-2513 941.1,-2522.79 936.78,-2752.11 939,-2766 951.84,-2846.27 985.04,-2938.31 998.6,-2973.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.78,-2975 1000.89,-2979.85 1000.7,-2973.49 996.78,-2975"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge470" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.54,-4988.22C444.58,-4985.65 452.99,-4981.24 459,-4974 472.95,-4957.2 456.36,-4207.06 467,-4188 572,-3999.92 778.59,-3895.78 931,-4048 946.6,-4063.58 925.25,-10378.77 939,-10396 941.44,-10399.05 944.35,-10401.56 947.59,-10403.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.62,-10405.49 952.9,-10406.5 948.62,-10401.79 946.62,-10405.49"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge471" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.57,-4988.25C444.61,-4985.67 453.01,-4981.26 459,-4974 476.16,-4953.21 447.9,-3052.02 467,-3033 534.39,-2965.89 605.3,-2975.41 681,-3033 1012.42,-3285.13 874.63,-3523.4 931,-3936 933.53,-3954.55 928.06,-9313.8 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.34 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge476" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.64,-4988.58C444.56,-4990.93 452.89,-4995.07 459,-5002 472.53,-5017.35 453.83,-5170.33 467,-5186 602.85,-5347.64 785.03,-5135.43 931,-5288 945.35,-5302.99 923.64,-5320.05 939,-5334 960.53,-5353.56 1049.24,-5323.13 1069.5,-5344 1091.04,-5366.19 1062.45,-5598.46 1082.5,-5622 1084.82,-5624.72 1087.55,-5626.96 1090.54,-5628.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1089.9,-5630.83 1096.2,-5631.69 1091.81,-5627.09 1089.9,-5630.83"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge481" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.63,-4987.4C444.44,-4984.85 452.74,-4980.67 459,-4974 477.42,-4954.39 446.76,-4931.72 467,-4914 506.11,-4879.76 898.58,-4933.36 931,-4974 937.05,-4981.59 938.48,-5663.31 939,-5673 953.34,-5938.97 993.15,-6261.76 1002.51,-6335.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.48,-6336.16 1003.32,-6341.85 1004.64,-6335.63 1000.48,-6336.16"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge477" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.71,-4988.52C444.62,-4990.88 452.94,-4995.03 459,-5002 477.9,-5023.72 448.34,-5239.07 467,-5261 603.14,-5420.98 793.46,-5192.22 931,-5351 943.02,-5364.87 928.62,-5500.86 939,-5516 944.14,-5523.5 951.69,-5529.08 959.85,-5533.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.25,-5535.26 965.58,-5535.88 961.02,-5531.45 959.25,-5535.26"/>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/BigComponents/LicensePicker.ts -->
<g id="edge478" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/BigComponents/LicensePicker.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.83,-4988.42C444.73,-4990.78 453.01,-4994.97 459,-5002 474.4,-5020.08 451.92,-5838.65 467,-5857 478.98,-5871.58 497.87,-5878.11 516.4,-5880.66"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.23,-5883.46 530.39,-5881.9 524.6,-5879.28 524.23,-5883.46"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.41,-5881.37 521.42,-5881.1 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="519.03" cy="-5880.89" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/FileSelectorButton.ts -->
<g id="node161" class="node">
<title>UI/Input/FileSelectorButton.ts</title>
<g id="a_node161"><a xlink:href="UI/Input/FileSelectorButton.ts" xlink:title="FileSelectorButton.ts">
<path fill="#ddfeff" stroke="black" d="M855,-6630C855,-6630 757,-6630 757,-6630 754,-6630 751,-6627 751,-6624 751,-6624 751,-6618 751,-6618 751,-6615 754,-6612 757,-6612 757,-6612 855,-6612 855,-6612 858,-6612 861,-6615 861,-6618 861,-6618 861,-6624 861,-6624 861,-6627 858,-6630 855,-6630"/>
<text text-anchor="middle" x="806" y="-6618.8" font-family="Helvetica,sans-Serif" font-size="9.00">FileSelectorButton.ts</text>
</a>
</g>
</g>
<!-- UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Input/FileSelectorButton.ts -->
<g id="edge480" class="edge">
<title>UI/Image/ImageUploadFlow.ts&#45;&gt;UI/Input/FileSelectorButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.84,-4988.41C444.74,-4990.77 453.02,-4994.96 459,-5002 478.34,-5024.75 447.27,-6054.58 467,-6077 530.42,-6149.05 617.28,-6034.23 681,-6106 699.44,-6126.77 670.49,-6585.28 689,-6606 702.85,-6621.51 724.18,-6627.01 744.79,-6628.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="744.8,-6630.13 750.86,-6628.2 744.93,-6625.93 744.8,-6630.13"/>
</g>
<!-- UI/Input/FileSelectorButton.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge502" class="edge">
<title>UI/Input/FileSelectorButton.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M861.11,-6629.29C886.09,-6629.84 913.93,-6625.2 931,-6606 942.58,-6592.97 926.66,-4108.31 939,-4096 959.54,-4075.53 1048.96,-4075.52 1069.5,-4096 1080.74,-4107.21 1081.19,-8653.18 1082.5,-8669 1094.3,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/FileSelectorButton.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge503" class="edge">
<title>UI/Input/FileSelectorButton.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M861.23,-6616.88C890.21,-6614.68 925.67,-6611.99 954.05,-6609.83"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="954.55,-6611.9 960.37,-6609.35 954.23,-6607.71 954.55,-6611.9"/>
</g>
<!-- UI/Input/Checkboxes.ts -->
<g id="node162" class="node">
<title>UI/Input/Checkboxes.ts</title>
<g id="a_node162"><a xlink:href="UI/Input/Checkboxes.ts" xlink:title="Checkboxes.ts">
<path fill="#ddfeff" stroke="black" d="M841,-6390C841,-6390 771,-6390 771,-6390 768,-6390 765,-6387 765,-6384 765,-6384 765,-6378 765,-6378 765,-6375 768,-6372 771,-6372 771,-6372 841,-6372 841,-6372 844,-6372 847,-6375 847,-6378 847,-6378 847,-6384 847,-6384 847,-6387 844,-6390 841,-6390"/>
<text text-anchor="middle" x="806" y="-6378.8" font-family="Helvetica,sans-Serif" font-size="9.00">Checkboxes.ts</text>
</a>
</g>
</g>
<!-- UI/Input/Checkboxes.ts&#45;&gt;Utils.ts -->
<g id="edge486" class="edge">
<title>UI/Input/Checkboxes.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M847.29,-6388.47C875.13,-6391.08 910.68,-6388.85 931,-6366 942.35,-6353.24 936.35,-3923.87 939,-3907 968.66,-3718.08 1023.85,-3682.7 1069.5,-3497 1073.49,-3480.79 1069.71,-3433.74 1082.5,-3423 1128.11,-3384.7 1166.25,-3391.03 1216.5,-3423 1289.79,-3469.62 1311.31,-3584.27 1316.81,-3625.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.73,-3626.04 1317.56,-3631.73 1318.9,-3625.52 1314.73,-3626.04"/>
</g>
<!-- UI/Input/Checkboxes.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge485" class="edge">
<title>UI/Input/Checkboxes.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M847.29,-6388.47C875.13,-6391.08 910.68,-6388.85 931,-6366 942.19,-6353.42 927.07,-3952.89 939,-3941 980.08,-3900.06 1028.43,-3900.04 1069.5,-3941 1081.12,-3952.59 1081.14,-8652.64 1082.5,-8669 1094.3,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/Checkboxes.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge487" class="edge">
<title>UI/Input/Checkboxes.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M847.17,-6375.66C873.72,-6374.37 907.76,-6377.32 931,-6396 993.03,-6445.88 1002.82,-6551.54 1004.28,-6590.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.19,-6591.04 1004.46,-6596.98 1006.38,-6590.92 1002.19,-6591.04"/>
</g>
<!-- UI/Input/InputElement.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge507" class="edge">
<title>UI/Input/InputElement.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1009.1,-6596.78C1036.92,-6498.27 1278.92,-5641.17 1314.21,-5516.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.3,-5516.53 1315.91,-5510.18 1312.26,-5515.39 1316.3,-5516.53"/>
</g>
<!-- UI/Input/ColorPicker.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge488" class="edge">
<title>UI/Input/ColorPicker.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.07,-6688.15C872.33,-6691.22 909.89,-6689.74 931,-6666 942.55,-6653.02 926.69,-4176.27 939,-4164 980.08,-4123.05 1028.43,-4123.05 1069.5,-4164 1080.58,-4175.04 1081.21,-8653.41 1082.5,-8669 1094.31,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/ColorPicker.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge489" class="edge">
<title>UI/Input/ColorPicker.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M844.2,-6681.85C869.58,-6681.17 903.47,-6677.72 931,-6666 955.78,-6655.45 978.89,-6633.9 992.36,-6619.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="994,-6621.02 996.54,-6615.2 990.92,-6618.17 994,-6621.02"/>
</g>
<!-- UI/Input/CombinedInputElement.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge490" class="edge">
<title>UI/Input/CombinedInputElement.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M874.23,-6779.03C895.36,-6777.77 916.85,-6771.86 931,-6756 952.57,-6731.83 918.73,-5615.26 939,-5590 945.47,-5581.94 955.31,-5577.66 965.41,-5575.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.81,-5577.57 971.36,-5574.48 965.09,-5573.44 965.81,-5577.57"/>
</g>
<!-- UI/Input/CombinedInputElement.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge491" class="edge">
<title>UI/Input/CombinedInputElement.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M874.12,-6774.68C893.93,-6772.8 914.65,-6767.62 931,-6756 977.35,-6723.07 995.81,-6652.6 1001.92,-6621.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.01,-6621.65 1003.04,-6615.37 999.88,-6620.89 1004.01,-6621.65"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;Utils.ts -->
<g id="edge494" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.71,-6448.91C879.61,-6450.71 911.98,-6447.39 931,-6426 943.66,-6411.76 927.11,-3697.88 939,-3683 976.14,-3636.5 1030.76,-3698.18 1069.5,-3653 1095.32,-3622.89 1053.45,-3502 1082.5,-3475 1126.12,-3434.45 1164.52,-3445.93 1216.5,-3475 1275.73,-3508.12 1304.77,-3591.28 1314.56,-3625.71"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.65,-3626.69 1316.27,-3631.91 1316.7,-3625.57 1312.65,-3626.69"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge495" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.66,-6448.86C879.54,-6450.65 911.91,-6447.33 931,-6426 946.49,-6408.69 924.44,-5608.09 939,-5590 945.48,-5581.95 955.32,-5577.67 965.42,-5575.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.82,-5577.59 971.37,-5574.49 965.1,-5573.45 965.82,-5577.59"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge492" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.71,-6448.91C879.61,-6450.71 911.98,-6447.39 931,-6426 942.15,-6413.46 927.11,-4020.85 939,-4009 980.08,-3968.06 1028.43,-3968.05 1069.5,-4009 1080.96,-4020.43 1081.16,-8652.87 1082.5,-8669 1094.3,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;Svg.ts -->
<g id="edge493" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.71,-6448.91C879.61,-6450.71 911.98,-6447.39 931,-6426 937.39,-6418.81 938.52,-3666.6 939,-3657 952.2,-3394.87 992.88,-3076.91 1002.46,-3004.27"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.58,-3004.24 1003.29,-2998.01 1000.42,-3003.69 1004.58,-3004.24"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge496" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.68,-6448.36C879.23,-6449.85 911.23,-6446.4 931,-6426 944.97,-6411.58 935.27,-6355.73 939,-6336 992.19,-6054.76 1111.31,-5724.58 1138.78,-5650.33"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.89,-5650.67 1141.01,-5644.31 1136.95,-5649.21 1140.89,-5650.67"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge497" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M759.31,-6449.57C729.03,-6452.17 693.65,-6448.57 685,-6420 681.2,-6407.45 681.2,-5488.55 685,-5476 694.35,-5445.1 734.97,-5443.41 766.59,-5447.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.56,-5449.29 772.79,-5448 767.12,-5445.13 766.56,-5449.29"/>
</g>
<!-- UI/Input/DirectionInput.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge498" class="edge">
<title>UI/Input/DirectionInput.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M852.63,-6436.44C877.86,-6436.23 908.55,-6440.05 931,-6456 977.35,-6488.93 995.81,-6559.4 1001.92,-6590.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.88,-6591.11 1003.04,-6596.63 1004.01,-6590.35 999.88,-6591.11"/>
</g>
<!-- UI/Input/FixedInputElement.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge504" class="edge">
<title>UI/Input/FixedInputElement.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.7,-6479.31C887.26,-6479.64 914.28,-6474.8 931,-6456 942.14,-6443.48 927.13,-4054.83 939,-4043 980.08,-4002.06 1028.43,-4002.05 1069.5,-4043 1080.87,-4054.34 1081.17,-8652.99 1082.5,-8669 1094.3,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/FixedInputElement.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge505" class="edge">
<title>UI/Input/FixedInputElement.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.67,-6479.29C887.22,-6479.61 914.25,-6474.77 931,-6456 953.52,-6430.75 917.44,-5264.08 939,-5238 944.18,-5231.73 951.44,-5227.92 959.24,-5225.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.93,-5227.69 965.3,-5224.29 958.98,-5223.6 959.93,-5227.69"/>
</g>
<!-- UI/Input/FixedInputElement.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge506" class="edge">
<title>UI/Input/FixedInputElement.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M862.72,-6467.51C885.45,-6468.57 911.02,-6473.17 931,-6486 970.02,-6511.05 991.58,-6564.91 1000.12,-6591.1"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.12,-6591.74 1001.93,-6596.83 1002.13,-6590.48 998.12,-6591.74"/>
</g>
<!-- UI/Input/InputElementMap.ts -->
<g id="node168" class="node">
<title>UI/Input/InputElementMap.ts</title>
<g id="a_node168"><a xlink:href="UI/Input/InputElementMap.ts" xlink:title="InputElementMap.ts">
<path fill="#ddfeff" stroke="black" d="M854.5,-6570C854.5,-6570 757.5,-6570 757.5,-6570 754.5,-6570 751.5,-6567 751.5,-6564 751.5,-6564 751.5,-6558 751.5,-6558 751.5,-6555 754.5,-6552 757.5,-6552 757.5,-6552 854.5,-6552 854.5,-6552 857.5,-6552 860.5,-6555 860.5,-6558 860.5,-6558 860.5,-6564 860.5,-6564 860.5,-6567 857.5,-6570 854.5,-6570"/>
<text text-anchor="middle" x="806" y="-6558.8" font-family="Helvetica,sans-Serif" font-size="9.00">InputElementMap.ts</text>
</a>
</g>
</g>
<!-- UI/Input/InputElementMap.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge508" class="edge">
<title>UI/Input/InputElementMap.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M860.68,-6564.34C882.72,-6566.53 908.33,-6570.12 931,-6576 948.04,-6580.42 966.38,-6587.9 980.47,-6594.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="979.91,-6596.34 986.24,-6596.94 981.67,-6592.52 979.91,-6596.34"/>
</g>
<!-- UI/Input/InputElementWrapper.ts -->
<g id="node169" class="node">
<title>UI/Input/InputElementWrapper.ts</title>
<g id="a_node169"><a xlink:href="UI/Input/InputElementWrapper.ts" xlink:title="InputElementWrapper.ts">
<path fill="#ddfeff" stroke="black" d="M864,-6600C864,-6600 748,-6600 748,-6600 745,-6600 742,-6597 742,-6594 742,-6594 742,-6588 742,-6588 742,-6585 745,-6582 748,-6582 748,-6582 864,-6582 864,-6582 867,-6582 870,-6585 870,-6588 870,-6588 870,-6594 870,-6594 870,-6597 867,-6600 864,-6600"/>
<text text-anchor="middle" x="806" y="-6588.8" font-family="Helvetica,sans-Serif" font-size="9.00">InputElementWrapper.ts</text>
</a>
</g>
</g>
<!-- UI/Input/InputElementWrapper.ts&#45;&gt;UI/SubstitutedTranslation.ts -->
<g id="edge509" class="edge">
<title>UI/Input/InputElementWrapper.ts&#45;&gt;UI/SubstitutedTranslation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M741.74,-6597.94C722.06,-6596.55 702.11,-6590.84 689,-6576 673.67,-6558.65 695.83,-4926.78 681,-4909 619.01,-4834.71 530.03,-4942.42 467,-4869 449.33,-4848.42 477.49,-4644.85 459,-4625 435.55,-4599.83 337.63,-4619.9 305,-4609 285.56,-4602.5 265.79,-4590.44 251.22,-4580.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="245.98,-4573.9 239.89,-4572.07 243.51,-4577.29 245.98,-4573.9"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="244.74,-4575.6 247.17,-4577.36 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="249.11" cy="-4578.77" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/InputElementWrapper.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge510" class="edge">
<title>UI/Input/InputElementWrapper.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M870.03,-6595.79C897.31,-6597.86 928.79,-6600.25 954.43,-6602.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="954.34,-6604.3 960.48,-6602.66 954.66,-6600.11 954.34,-6604.3"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;Utils.ts -->
<g id="edge514" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.78,-6418.61C876.39,-6421 911.05,-6418.45 931,-6396 943.64,-6381.78 926.97,-3671.73 939,-3657 976.47,-3611.13 1030.48,-3674.56 1069.5,-3630 1096.07,-3599.66 1052.98,-3476.47 1082.5,-3449 1126.09,-3408.42 1165.46,-3418.32 1216.5,-3449 1282.86,-3488.89 1308.36,-3588.13 1315.88,-3626"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1313.82,-3626.43 1317.01,-3631.93 1317.95,-3625.64 1313.82,-3626.43"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge515" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.73,-6418.56C876.32,-6420.93 910.97,-6418.38 931,-6396 945.93,-6379.32 924.96,-5607.44 939,-5590 945.48,-5581.95 955.32,-5577.67 965.42,-5575.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.82,-5577.59 971.38,-5574.49 965.11,-5573.45 965.82,-5577.59"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge512" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.77,-6418.6C876.38,-6420.99 911.04,-6418.44 931,-6396 942.17,-6383.44 927.09,-3986.87 939,-3975 980.08,-3934.06 1028.43,-3934.04 1069.5,-3975 1081.04,-3986.51 1081.15,-8652.76 1082.5,-8669 1094.3,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge511" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.77,-6418.6C876.38,-6420.99 911.04,-6418.44 931,-6396 951.19,-6373.31 917.48,-4230.44 939,-4209 980.09,-4168.06 1028.45,-4168.03 1069.5,-4209 1100.66,-4240.1 1061.39,-10510.36 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.28,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;Svg.ts -->
<g id="edge513" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.78,-6418.61C876.39,-6421 911.05,-6418.45 931,-6396 937.38,-6388.82 938.5,-3640.59 939,-3631 952.16,-3379.54 992.7,-3074.78 1002.4,-3004.12"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.5,-3004.26 1003.24,-2998.03 1000.34,-3003.68 1004.5,-3004.26"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge516" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M763.49,-6419.17C732.37,-6422.45 694.05,-6419.89 685,-6390 681.32,-6377.85 681.32,-5488.15 685,-5476 694.35,-5445.1 734.97,-5443.41 766.59,-5447.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.56,-5449.29 772.79,-5448 767.12,-5445.13 766.56,-5449.29"/>
</g>
<!-- UI/Input/LengthInput.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge517" class="edge">
<title>UI/Input/LengthInput.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M848.61,-6405.97C874.76,-6405.07 907.81,-6408.31 931,-6426 985.06,-6467.25 999.55,-6555.05 1003.27,-6590.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.19,-6590.82 1003.85,-6596.59 1005.37,-6590.42 1001.19,-6590.82"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge521" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M760.28,-6492.52C729.79,-6489.75 693.74,-6493.13 685,-6522 681.1,-6534.89 681.1,-8449.11 685,-8462 692.9,-8488.1 723.11,-8493.36 751.36,-8492.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.58,-8493.54 765.4,-8490.96 759.25,-8489.35 759.58,-8493.54"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.42,-8491.44 756.42,-8491.68 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="754.03" cy="-8491.88" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge524" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.75,-6508.81C878.81,-6510.73 911.7,-6507.58 931,-6486 947.59,-6467.45 923.4,-5609.4 939,-5590 945.48,-5581.94 955.32,-5577.67 965.42,-5575.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.82,-5577.58 971.37,-5574.49 965.1,-5573.44 965.82,-5577.58"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge520" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.79,-6508.84C878.87,-6510.78 911.76,-6507.63 931,-6486 942.12,-6473.5 927.15,-4088.81 939,-4077 980.08,-4036.06 1028.43,-4036.05 1069.5,-4077 1080.79,-4088.26 1081.18,-8653.11 1082.5,-8669 1094.3,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge519" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.79,-6508.84C878.87,-6510.78 911.76,-6507.63 931,-6486 951.71,-6462.72 916.93,-4264.99 939,-4243 980.09,-4202.06 1028.45,-4202.03 1069.5,-4243 1100.5,-4273.93 1061.51,-10510.57 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.28,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;State.ts -->
<g id="edge522" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.8,-6508.85C878.88,-6510.79 911.77,-6507.64 931,-6486 939.1,-6476.88 937.25,-2986.07 939,-2974 949.96,-2898.39 980.54,-2812.64 995.72,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-2766.49 1000.79,-2760.14 996.65,-2764.96 1000.56,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.61,-2765.73 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.64" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge518" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M760.28,-6492.52C729.79,-6489.75 693.74,-6493.13 685,-6522 681.86,-6532.37 681.86,-9631.63 685,-9642 693.34,-9669.55 726.7,-9673.28 756.28,-9670.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="756.77,-9672.73 762.52,-9670.03 756.34,-9668.55 756.77,-9672.73"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;Svg.ts -->
<g id="edge523" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.79,-6508.85C878.87,-6510.79 911.77,-6507.64 931,-6486 937.47,-6478.73 938.53,-3692.72 939,-3683 952.24,-3410.19 993.04,-3079.01 1002.52,-3004.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.61,-3004.58 1003.29,-2998.37 1000.45,-3004.05 1004.61,-3004.58"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge525" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.56,-6493.63C878.37,-6491.92 911.06,-6495.16 931,-6516 947.18,-6532.91 921.84,-6605.09 939,-6621 981.54,-6660.42 1026.96,-6660.43 1069.5,-6621 1143.95,-6551.99 1144.85,-5768.79 1144.56,-5650.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.66,-5650.03 1144.54,-5644.03 1142.46,-5650.04 1146.66,-5650.03"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge527" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.61,-6493.32C878.62,-6491.44 911.5,-6494.6 931,-6516 941.97,-6528.04 934.53,-6793.34 939,-6809 948.99,-6843.96 972.42,-6879.36 988.37,-6900.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="991.62,-6908.4 996.95,-6911.87 994.95,-6905.83 991.62,-6908.4"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.28,-6907.12 991.45,-6904.74 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="989.99" cy="-6902.84" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge526" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M760.28,-6509.48C729.79,-6512.25 693.74,-6508.87 685,-6480 680.96,-6466.65 680.96,-5489.35 685,-5476 694.35,-5445.1 734.97,-5443.41 766.59,-5447.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.56,-5449.29 772.79,-5448 767.12,-5445.13 766.56,-5449.29"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge530" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.78,-6505.19C877.03,-6505.34 908.03,-6501.59 931,-6486 973.7,-6457.02 993.83,-6394.79 1001.12,-6366.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1003.18,-6366.5 1002.56,-6360.17 999.1,-6365.5 1003.18,-6366.5"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts -->
<g id="edge528" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M761.41,-6491.97C731.11,-6488.67 695.02,-6491.31 686.33,-6520 683.26,-6530.16 683.26,-6891.84 686.33,-6902 693.73,-6926.43 721,-6931.97 747.65,-6931.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.58,-6932.56 761.41,-6930.03 755.27,-6928.37 755.58,-6932.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.43,-6930.47 752.44,-6930.69 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="750.04" cy="-6930.86" rx="2.4" ry="2.4"/>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M760.44,-6493.17C729.48,-6490.74 692.59,-6494.53 683.67,-6524 680.66,-6533.94 680.66,-6888.06 683.67,-6898 689.97,-6918.81 710.21,-6926.82 732.47,-6928.87"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.4,-6931.29 746.48,-6929.44 740.57,-6927.09 740.4,-6931.29"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.48,-6929.19 737.49,-6929.07 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="735.09" cy="-6928.97" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Input/LocationInput.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge529" class="edge">
<title>UI/Input/LocationInput.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M851.64,-6498.48C876.41,-6498.95 906.97,-6502.77 931,-6516 962.82,-6533.52 986.24,-6570.92 997.34,-6591.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="995.49,-6592.57 1000.14,-6596.92 999.21,-6590.63 995.49,-6592.57"/>
</g>
<!-- UI/Input/RadioButton.ts -->
<g id="node172" class="node">
<title>UI/Input/RadioButton.ts</title>
<g id="a_node172"><a xlink:href="UI/Input/RadioButton.ts" xlink:title="RadioButton.ts">
<path fill="#ddfeff" stroke="black" d="M841.5,-6360C841.5,-6360 770.5,-6360 770.5,-6360 767.5,-6360 764.5,-6357 764.5,-6354 764.5,-6354 764.5,-6348 764.5,-6348 764.5,-6345 767.5,-6342 770.5,-6342 770.5,-6342 841.5,-6342 841.5,-6342 844.5,-6342 847.5,-6345 847.5,-6348 847.5,-6348 847.5,-6354 847.5,-6354 847.5,-6357 844.5,-6360 841.5,-6360"/>
<text text-anchor="middle" x="806" y="-6348.8" font-family="Helvetica,sans-Serif" font-size="9.00">RadioButton.ts</text>
</a>
</g>
</g>
<!-- UI/Input/RadioButton.ts&#45;&gt;Utils.ts -->
<g id="edge532" class="edge">
<title>UI/Input/RadioButton.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M810.23,-6341.74C827.16,-6292.61 905.92,-6057.04 931,-5857 934.98,-5825.25 926.79,-3582.58 939,-3553 970.48,-3476.75 1020.36,-3487.27 1069.5,-3421 1076.73,-3411.26 1072.08,-3403.21 1082.5,-3397 1133.67,-3366.52 1166.93,-3363.99 1216.5,-3397 1297.02,-3450.61 1314.09,-3581.24 1317.61,-3625.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1315.53,-3626.14 1318.05,-3631.97 1319.72,-3625.84 1315.53,-3626.14"/>
</g>
<!-- UI/Input/RadioButton.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge531" class="edge">
<title>UI/Input/RadioButton.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M810.22,-6341.74C827.14,-6292.6 905.86,-6057.03 931,-5857 932.69,-5843.56 929.4,-3916.56 939,-3907 980.1,-3866.07 1028.43,-3866.04 1069.5,-3907 1081.21,-3918.68 1081.13,-8652.52 1082.5,-8669 1094.3,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/RadioButton.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge533" class="edge">
<title>UI/Input/RadioButton.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M847.71,-6345.35C874.31,-6343.97 908.22,-6346.93 931,-6366 1000.78,-6424.42 1005.62,-6547.23 1005.04,-6590.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.94,-6590.7 1004.91,-6596.75 1007.13,-6590.79 1002.94,-6590.7"/>
</g>
<!-- UI/Input/SimpleDatePicker.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge534" class="edge">
<title>UI/Input/SimpleDatePicker.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M858.59,-6719.21C884.2,-6720.14 913.35,-6715.85 931,-6696 942.53,-6683.04 926.71,-4210.25 939,-4198 980.08,-4157.05 1028.43,-4157.05 1069.5,-4198 1080.49,-4208.96 1081.22,-8653.53 1082.5,-8669 1094.31,-8811.39 1129.97,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/SimpleDatePicker.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge535" class="edge">
<title>UI/Input/SimpleDatePicker.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M858.53,-6713.31C881.91,-6712.27 909.15,-6708.03 931,-6696 962.82,-6678.48 986.24,-6641.08 997.34,-6620.43"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.21,-6621.37 1000.14,-6615.08 995.49,-6619.43 999.21,-6621.37"/>
</g>
<!-- UI/Input/TextField.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge536" class="edge">
<title>UI/Input/TextField.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.24,-6747.57C867.92,-6751.32 908.67,-6751.12 931,-6726 942.52,-6713.04 926.72,-4241.24 939,-4229 980.08,-4188.05 1028.43,-4188.05 1069.5,-4229 1080.42,-4239.89 1081.23,-8653.64 1082.5,-8669 1094.31,-8811.39 1129.97,-8981.03 1141.13,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.48,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Input/TextField.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge537" class="edge">
<title>UI/Input/TextField.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.23,-6747.56C867.9,-6751.3 908.64,-6751.09 931,-6726 944.75,-6710.57 925.84,-5253.94 939,-5238 944.18,-5231.73 951.43,-5227.92 959.24,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.29,-5224.28 958.97,-5223.6 959.92,-5227.69"/>
</g>
<!-- UI/Input/TextField.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge538" class="edge">
<title>UI/Input/TextField.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M839.1,-6744.45C865.76,-6745.7 903.63,-6743.57 931,-6726 970.02,-6700.95 991.58,-6647.09 1000.12,-6620.9"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.13,-6621.52 1001.93,-6615.17 998.12,-6620.26 1002.13,-6621.52"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;Utils.ts -->
<g id="edge574" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.68,-7533.9C231.81,-7373.75 275.67,-5145.83 305,-4493 352.5,-3435.85 414.57,-3174.28 459,-2117 459.48,-2105.48 459.95,-1711.12 467,-1702 527.43,-1623.87 617.89,-1717.99 681,-1642 693.83,-1626.55 674.19,-1565.55 689,-1552 814.05,-1437.57 947.03,-1460.81 1069.5,-1578 1276.92,-1776.49 1173.51,-1923.15 1216.5,-2207 1304.44,-2787.69 1316.89,-3512.45 1318.33,-3625.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.23,-3625.86 1318.41,-3631.84 1320.43,-3625.81 1316.23,-3625.86"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge575" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M241.86,-7533.86C256.58,-7524.37 281.32,-7510.08 305,-7504 344.78,-7493.79 680.17,-7498.2 681,-7499 699.24,-7516.61 670.76,-7709.39 689,-7727 727.69,-7764.35 892.9,-7764.96 931,-7727 952.03,-7706.05 920.46,-5613.18 939,-5590 945.46,-5581.93 955.29,-5577.65 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.35,-5574.47 965.08,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge573" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.77,-7534C232.61,-7407.57 275.62,-5974.33 292,-4817 292.51,-4781.03 294.79,-2261.49 305,-2227 340.97,-2105.47 421.75,-2108.14 459,-1987 464,-1970.75 457.6,-1695.17 467,-1681 524.72,-1593.98 614.12,-1664.2 681,-1584 690.39,-1572.74 677.44,-1561.02 689,-1552 773.78,-1485.81 823.91,-1542.03 931,-1552 993.36,-1557.8 1029.46,-1529.84 1069.5,-1578 1085.24,-1596.93 1080.48,-8644.46 1082.5,-8669 1094.23,-8811.4 1129.94,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge578" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M234.07,-7533.98C245.15,-7517 271.73,-7480.69 305,-7466 342.09,-7449.62 676.87,-7455.12 681,-7459 701.93,-7478.67 668.07,-7568.33 689,-7588 767.37,-7661.66 854.82,-7663.92 931,-7588 942.56,-7576.48 928.62,-5250.6 939,-5238 944.17,-5231.73 951.42,-5227.91 959.23,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.28,-5224.27 958.96,-5223.59 959.91,-5227.68"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge576" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M286.34,-7537.3C396.01,-7527.91 627.95,-7515.25 681,-7570 700.73,-7590.36 668.64,-7805.27 689,-7825 813.72,-7945.87 985.78,-7888.17 1069.5,-7736 1097.16,-7685.72 1053.41,-5719.47 1082.5,-5670 1088.64,-5659.57 1099.15,-5651.99 1109.8,-5646.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1110.82,-5648.46 1115.35,-5644.01 1109.03,-5644.66 1110.82,-5648.46"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge577" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M238.44,-7533.92C252.19,-7522.04 278.36,-7501.8 305,-7494 385.19,-7470.52 620.75,-7436.1 681,-7494 697.12,-7509.49 672.88,-7679.51 689,-7695 727.78,-7732.26 892.9,-7732.96 931,-7695 952.01,-7674.07 920.48,-5583.16 939,-5560 940.68,-5557.9 942.59,-5556.05 944.67,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.82,-5551.07 943.65,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge579" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M274.33,-7533.97C377.66,-7514.8 624.25,-7476.08 681,-7531 700.49,-7549.86 669.51,-7756.14 689,-7775 727.64,-7812.4 892.82,-7812.87 931,-7775 940.51,-7765.57 936.88,-6824.22 939,-6811 950.79,-6737.37 984.01,-6653.95 998.08,-6620.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.04,-6621.5 1000.47,-6615.15 996.18,-6619.85 1000.04,-6621.5"/>
</g>
<!-- UI/OpeningHours/OpeningHours.ts -->
<g id="node178" class="node">
<title>UI/OpeningHours/OpeningHours.ts</title>
<g id="a_node178"><a xlink:href="UI/OpeningHours/OpeningHours.ts" xlink:title="OpeningHours.ts">
<path fill="#ddfeff" stroke="black" d="M1045.5,-7552C1045.5,-7552 965.5,-7552 965.5,-7552 962.5,-7552 959.5,-7549 959.5,-7546 959.5,-7546 959.5,-7540 959.5,-7540 959.5,-7537 962.5,-7534 965.5,-7534 965.5,-7534 1045.5,-7534 1045.5,-7534 1048.5,-7534 1051.5,-7537 1051.5,-7540 1051.5,-7540 1051.5,-7546 1051.5,-7546 1051.5,-7549 1048.5,-7552 1045.5,-7552"/>
<text text-anchor="middle" x="1005.5" y="-7540.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHours.ts</text>
</a>
</g>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge580" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M254.4,-7533.95C329.94,-7509.36 552.74,-7449.85 681,-7554 693.05,-7563.79 676.83,-7578.36 689,-7588 710.08,-7604.69 905.12,-7595.29 931,-7588 953.06,-7581.78 975.04,-7566.89 989.13,-7555.94"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="990.57,-7557.48 993.95,-7552.1 987.95,-7554.19 990.57,-7557.48"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPicker.ts -->
<g id="node179" class="node">
<title>UI/OpeningHours/OpeningHoursPicker.ts</title>
<g id="a_node179"><a xlink:href="UI/OpeningHours/OpeningHoursPicker.ts" xlink:title="OpeningHoursPicker.ts">
<path fill="#ddfeff" stroke="black" d="M435,-7580C435,-7580 329,-7580 329,-7580 326,-7580 323,-7577 323,-7574 323,-7574 323,-7568 323,-7568 323,-7565 326,-7562 329,-7562 329,-7562 435,-7562 435,-7562 438,-7562 441,-7565 441,-7568 441,-7568 441,-7574 441,-7574 441,-7577 438,-7580 435,-7580"/>
<text text-anchor="middle" x="382" y="-7568.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHoursPicker.ts</text>
</a>
</g>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/OpeningHoursPicker.ts -->
<g id="edge581" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/OpeningHoursPicker.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M277.59,-7552.01C292.89,-7554.82 309.86,-7557.94 325.56,-7560.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="325.46,-7562.94 331.74,-7561.96 326.22,-7558.81 325.46,-7562.94"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts -->
<g id="node180" class="node">
<title>UI/OpeningHours/PublicHolidayInput.ts</title>
<g id="a_node180"><a xlink:href="UI/OpeningHours/PublicHolidayInput.ts" xlink:title="PublicHolidayInput.ts">
<path fill="#ddfeff" stroke="black" d="M624.5,-7594C624.5,-7594 523.5,-7594 523.5,-7594 520.5,-7594 517.5,-7591 517.5,-7588 517.5,-7588 517.5,-7582 517.5,-7582 517.5,-7579 520.5,-7576 523.5,-7576 523.5,-7576 624.5,-7576 624.5,-7576 627.5,-7576 630.5,-7579 630.5,-7582 630.5,-7582 630.5,-7588 630.5,-7588 630.5,-7591 627.5,-7594 624.5,-7594"/>
<text text-anchor="middle" x="574" y="-7582.8" font-family="Helvetica,sans-Serif" font-size="9.00">PublicHolidayInput.ts</text>
</a>
</g>
</g>
<!-- UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/PublicHolidayInput.ts -->
<g id="edge582" class="edge">
<title>UI/OpeningHours/OpeningHoursInput.ts&#45;&gt;UI/OpeningHours/PublicHolidayInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.12,-7552.08C254.43,-7562.63 279.94,-7579.44 305,-7586 373.8,-7604.01 455.99,-7600.16 511.05,-7594.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="511.57,-7596.18 517.29,-7593.42 511.1,-7592.01 511.57,-7596.18"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge828" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M397.82,-7252.17C414.11,-7261.74 441.38,-7276.26 467,-7283 513.1,-7295.13 642.72,-7269.59 681,-7298 689.02,-7303.95 680.78,-7313.33 689,-7319 733.28,-7349.52 892.89,-7356.94 931,-7319 948.02,-7302.06 923.99,-5608.75 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.56 971.35,-5574.47 965.08,-5573.43 965.8,-5577.56"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge829" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M393.58,-7252.01C408.74,-7264.39 438.04,-7286.33 467,-7297 557.06,-7330.18 610.15,-7261.25 681,-7326 692.78,-7336.76 676.52,-7351.05 689,-7361 731.05,-7394.52 892.83,-7398.88 931,-7361 941.16,-7350.92 938.27,-6345.29 939,-6331 952.94,-6056.85 993.37,-5723.85 1002.61,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.69,-5650.22 1003.36,-5644.01 1000.53,-5649.7 1004.69,-5650.22"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge825" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.32,-7242.59C446.89,-7240.11 453.82,-7236.13 459,-7230 468.07,-7219.27 464.17,-3197.76 467,-3184 517.6,-2937.86 490.94,-2818.66 689,-2664 823.02,-2559.34 949.13,-2503.89 1069.5,-2624 1084.36,-2638.83 1080.77,-8648.08 1082.5,-8669 1094.25,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge831" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M387.14,-7252.19C397.32,-7273.68 425.8,-7327.33 467,-7353 694.33,-7494.62 893.68,-7568.05 1069.5,-7366 1081.14,-7352.63 1080.26,-7224.58 1082.5,-7207 1126.53,-6861.11 1185.45,-6781.29 1216.5,-6434 1217.98,-6417.45 1213.55,-5250.49 1224.5,-5238 1239.23,-5221.2 1264.73,-5218.55 1285.46,-5219.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1285.3,-5221.87 1291.45,-5220.24 1285.63,-5217.68 1285.3,-5221.87"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge832" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.38,-7247.54C572.39,-7257.62 897.13,-7278.41 931,-7244 950.54,-7224.14 921.28,-5259.5 939,-5238 944.17,-5231.73 951.42,-5227.92 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.68 965.28,-5224.28 958.96,-5223.59 959.92,-5227.68"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Svg.ts -->
<g id="edge827" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.31,-7242.59C446.88,-7240.11 453.81,-7236.13 459,-7230 473.48,-7212.87 462.04,-4021.87 467,-4000 575.11,-3523.46 564.51,-3320.91 939,-3007 948.31,-2999.19 960.74,-2994.76 972.27,-2992.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.7,-2994.29 978.19,-2991.09 971.9,-2990.17 972.7,-2994.29"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge826" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.31,-7242.59C446.88,-7240.1 453.81,-7236.13 459,-7230 470.9,-7215.93 463.62,-4595.11 467,-4577 517.58,-4305.66 461.6,-4153.45 689,-3997 777.61,-3936.04 854.89,-3921.01 931,-3997 943.53,-4009.51 927.96,-9082.16 939,-9096 945.51,-9104.16 955.47,-9108.44 965.67,-9110.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.41,-9112.66 971.68,-9111.59 966.11,-9108.52 965.41,-9112.66"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge830" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M406.89,-7252.01C423.5,-7257.87 446.29,-7265.12 467,-7269 490.43,-7273.39 661.86,-7269.8 681,-7284 689.02,-7289.95 680.78,-7299.33 689,-7305 711.14,-7320.26 911.94,-7323.97 931,-7305 948.18,-7287.9 923.85,-5578.92 939,-5560 940.68,-5557.9 942.59,-5556.06 944.68,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.83,-5551.07 943.66,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge833" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M389.48,-7252.05C402.24,-7269.16 432.43,-7306.25 467,-7325 552.68,-7371.47 586.16,-7350.51 681,-7373 684.57,-7373.85 685.36,-7374.55 689,-7375 795.75,-7388.14 854.41,-7450.51 931,-7375 942.16,-7364 936.48,-6826.46 939,-6811 951.01,-6737.41 984.1,-6653.96 998.11,-6620.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.07,-6621.5 1000.49,-6615.16 996.21,-6619.86 1000.07,-6621.5"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Input/TextField.ts -->
<g id="edge834" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Input/TextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M385.52,-7233.9C401.5,-7178.09 494.29,-6880.59 689,-6756 711.92,-6741.33 742.64,-6737.91 766.7,-6737.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.95,-6740.08 772.99,-6738.08 767.02,-6735.89 766.95,-6740.08"/>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Wikipedia/WikipediaBox.ts -->
<g id="edge836" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Wikipedia/WikipediaBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.24,-7238.86C466.08,-7236.88 497.91,-7234.53 523.79,-7232.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="524.06,-7234.71 529.89,-7232.18 523.75,-7230.52 524.06,-7234.71"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts -->
<g id="node199" class="node">
<title>UI/Wikipedia/WikidataPreviewBox.ts</title>
<g id="a_node199"><a xlink:href="UI/Wikipedia/WikidataPreviewBox.ts" xlink:title="WikidataPreviewBox.ts">
<path fill="#ddfeff" stroke="black" d="M859,-7238C859,-7238 753,-7238 753,-7238 750,-7238 747,-7235 747,-7232 747,-7232 747,-7226 747,-7226 747,-7223 750,-7220 753,-7220 753,-7220 859,-7220 859,-7220 862,-7220 865,-7223 865,-7226 865,-7226 865,-7232 865,-7232 865,-7235 862,-7238 859,-7238"/>
<text text-anchor="middle" x="806" y="-7226.8" font-family="Helvetica,sans-Serif" font-size="9.00">WikidataPreviewBox.ts</text>
</a>
</g>
</g>
<!-- UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Wikipedia/WikidataPreviewBox.ts -->
<g id="edge835" class="edge">
<title>UI/Wikipedia/WikidataSearchBox.ts&#45;&gt;UI/Wikipedia/WikidataPreviewBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M439.03,-7243.76C448.37,-7243.86 457.96,-7243.95 467,-7244 562.11,-7244.57 586.06,-7249.72 681,-7244 700.35,-7242.83 721.31,-7240.65 740.39,-7238.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="741.09,-7240.34 746.78,-7237.51 740.57,-7236.17 741.09,-7240.34"/>
</g>
<!-- UI/Input/VariableInputElement.ts -->
<g id="node177" class="node">
<title>UI/Input/VariableInputElement.ts</title>
<g id="a_node177"><a xlink:href="UI/Input/VariableInputElement.ts" xlink:title="VariableInputElement.ts">
<path fill="#ddfeff" stroke="black" d="M863,-6540C863,-6540 749,-6540 749,-6540 746,-6540 743,-6537 743,-6534 743,-6534 743,-6528 743,-6528 743,-6525 746,-6522 749,-6522 749,-6522 863,-6522 863,-6522 866,-6522 869,-6525 869,-6528 869,-6528 869,-6534 869,-6534 869,-6537 866,-6540 863,-6540"/>
<text text-anchor="middle" x="806" y="-6528.8" font-family="Helvetica,sans-Serif" font-size="9.00">VariableInputElement.ts</text>
</a>
</g>
</g>
<!-- UI/Input/VariableInputElement.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge560" class="edge">
<title>UI/Input/VariableInputElement.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M869.05,-6539.24C891.79,-6538.66 915.68,-6533.14 931,-6516 948.7,-6496.2 922.36,-5580.7 939,-5560 940.69,-5557.9 942.6,-5556.06 944.69,-5554.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.97,-5556.12 949.84,-5551.08 943.67,-5552.6 945.97,-5556.12"/>
</g>
<!-- UI/Input/VariableInputElement.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge561" class="edge">
<title>UI/Input/VariableInputElement.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M869,-6531.67C889.39,-6533.65 911.75,-6537.8 931,-6546 955.78,-6556.55 978.89,-6578.1 992.36,-6592.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="990.92,-6593.83 996.54,-6596.8 994,-6590.98 990.92,-6593.83"/>
</g>
<!-- UI/OpeningHours/OpeningHours.ts&#45;&gt;Utils.ts -->
<g id="edge572" class="edge">
<title>UI/OpeningHours/OpeningHours.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M1007.86,-7533.76C1015.79,-7479.2 1056.27,-7193.68 1069.5,-6959 1070.48,-6941.57 1071.6,-4458.64 1082.5,-4445 1120.67,-4397.25 1178.16,-4461.61 1216.5,-4414 1227.84,-4399.91 1218.56,-3780.08 1224.5,-3763 1240.48,-3717.02 1281.27,-3674.74 1303.5,-3654.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1304.93,-3655.69 1307.95,-3650.09 1302.1,-3652.58 1304.93,-3655.69"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge583" class="edge">
<title>UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M386.38,-7561.66C399.12,-7525.9 444.27,-7394.03 459,-7281 468.83,-7205.61 460.97,-4619.79 467,-4544 515.59,-3933.61 627.09,-3792.94 681,-3183 682.92,-3161.25 677.51,-2808.57 689,-2790 752.9,-2686.7 837.29,-2740.29 931,-2663 935.39,-2659.38 933.87,-2655.47 939,-2653 991.28,-2627.88 1028.44,-2612.03 1069.5,-2653 1084.29,-2667.75 1080.78,-8648.18 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge584" class="edge">
<title>UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M389.47,-7580.09C438.04,-7647.35 748.58,-8060.06 931,-7879 941.53,-7868.55 936.66,-6825.65 939,-6811 950.76,-6737.37 983.99,-6653.95 998.07,-6620.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.04,-6621.5 1000.47,-6615.15 996.18,-6619.84 1000.04,-6621.5"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge585" class="edge">
<title>UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M441.29,-7570.22C449.91,-7570.13 458.69,-7570.05 467,-7570 514.55,-7569.72 643.17,-7541.19 681,-7570 691.64,-7578.1 678.36,-7590.9 689,-7599 710.39,-7615.29 905.52,-7607.6 931,-7599 955.58,-7590.7 978.44,-7570.54 991.94,-7556.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.5,-7558.22 996.15,-7552.43 990.48,-7555.31 993.5,-7558.22"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts -->
<g id="node181" class="node">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts</title>
<g id="a_node181"><a xlink:href="UI/OpeningHours/OpeningHoursPickerTable.ts" xlink:title="OpeningHoursPickerTable.ts">
<path fill="#ddfeff" stroke="black" d="M639,-7624C639,-7624 509,-7624 509,-7624 506,-7624 503,-7621 503,-7618 503,-7618 503,-7612 503,-7612 503,-7609 506,-7606 509,-7606 509,-7606 639,-7606 639,-7606 642,-7606 645,-7609 645,-7612 645,-7612 645,-7618 645,-7618 645,-7621 642,-7624 639,-7624"/>
<text text-anchor="middle" x="574" y="-7612.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHoursPickerTable.ts</text>
</a>
</g>
</g>
<!-- UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/OpeningHours/OpeningHoursPickerTable.ts -->
<g id="edge586" class="edge">
<title>UI/OpeningHours/OpeningHoursPicker.ts&#45;&gt;UI/OpeningHours/OpeningHoursPickerTable.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M405.47,-7580.08C422.19,-7586.51 445.7,-7594.87 467,-7600 476.59,-7602.31 486.76,-7604.31 496.86,-7606.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="496.53,-7608.1 502.79,-7607 497.21,-7603.95 496.53,-7608.1"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge611" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.63,-7579.56C649.21,-7580.85 668.37,-7586.11 681,-7600 694.1,-7614.4 674.93,-7761.55 689,-7775 766.77,-7849.3 854.81,-7850.91 931,-7775 952.5,-7753.58 920.04,-5613.7 939,-5590 945.46,-5581.93 955.29,-5577.65 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.35,-5574.47 965.08,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge610" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.47,-7575.85C596.9,-7539.6 660.33,-7402.22 681,-7281 685.03,-7257.38 675.27,-3849.64 689,-3830 788.71,-3687.42 946.31,-3615.14 1069.5,-3738 1081.62,-3750.09 1081.09,-8651.94 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge612" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.75,-7580.01C649.11,-7581.4 668.1,-7586.62 681,-7600 692.94,-7612.39 676.22,-7665.48 689,-7677 728.94,-7713.01 892.91,-7714.96 931,-7677 943,-7665.04 928.23,-5251.07 939,-5238 944.17,-5231.73 951.42,-5227.91 959.23,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.28,-5224.27 958.96,-5223.59 959.91,-5227.68"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge616" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.72,-7579.49C649.3,-7580.76 668.45,-7586.04 681,-7600 698.17,-7619.1 670.53,-7813.16 689,-7831 708.34,-7849.68 911.93,-7849.95 931,-7831 943.22,-7818.86 936.66,-6608.06 939,-6591 950.94,-6504.03 985.21,-6403.88 998.82,-6366.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.88,-6366.77 1000.97,-6360.42 996.94,-6365.33 1000.88,-6366.77"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/DropDown.ts -->
<g id="edge613" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/DropDown.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.92,-7575.9C597.87,-7542.1 659.92,-7420.17 681,-7311 684.4,-7293.41 677.09,-6679.38 689,-6666 706.8,-6646 737.03,-6642.62 762.16,-6644.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.3,-6646.17 768.43,-6644.51 762.6,-6641.98 762.3,-6646.17"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge614" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.73,-7579.47C649.32,-7580.75 668.46,-7586.03 681,-7600 699.19,-7620.27 669.43,-7826.06 689,-7845 727.64,-7882.4 892.83,-7882.88 931,-7845 941.19,-7834.88 936.73,-6825.18 939,-6811 950.77,-6737.37 984,-6653.95 998.07,-6620.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.04,-6621.5 1000.47,-6615.15 996.18,-6619.84 1000.04,-6621.5"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/TextField.ts -->
<g id="edge615" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/Input/TextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M579.91,-7575.9C597.84,-7542.1 659.81,-7420.15 681,-7311 683.94,-7295.86 678.74,-6767.51 689,-6756 707.89,-6734.81 740.74,-6732.29 766.67,-6734.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.59,-6736.47 772.76,-6734.95 766.99,-6732.29 766.59,-6736.47"/>
</g>
<!-- UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge617" class="edge">
<title>UI/OpeningHours/PublicHolidayInput.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M630.52,-7583.86C647.82,-7585.77 666.23,-7590.33 681,-7600 686.68,-7603.72 683.08,-7609.69 689,-7613 782.89,-7665.47 831.14,-7652.95 931,-7613 959.17,-7601.73 982.7,-7573.95 995.08,-7556.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.8,-7558.19 998.56,-7552.08 993.37,-7555.75 996.8,-7558.19"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;Utils.ts -->
<g id="edge588" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M645.04,-7618.93C658.79,-7616.23 671.79,-7610.59 681,-7600 698.17,-7580.27 677.01,-3857.24 689,-3834 749.6,-3716.49 869.71,-3778.15 931,-3661 938.42,-3646.82 927.61,-3096.24 939,-3085 982.91,-3041.7 1169.12,-3045.52 1216.5,-3085 1302.67,-3156.8 1316.28,-3543.63 1318.21,-3625.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.11,-3625.93 1318.34,-3631.88 1320.31,-3625.83 1316.11,-3625.93"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge589" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M577.04,-7624.11C584.81,-7656.36 615.89,-7765.38 689,-7807 782.47,-7860.21 854.81,-7882.92 931,-7807 952.81,-7785.27 919.77,-5614.05 939,-5590 945.46,-5581.93 955.29,-5577.65 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.35,-5574.47 965.07,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge587" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M645.04,-7618.93C658.79,-7616.23 671.79,-7610.58 681,-7600 696.33,-7582.39 682.76,-4260.5 689,-4238 745.03,-4035.94 862.37,-4031.14 931,-3833 935.55,-3819.87 928.57,-3780.17 939,-3771 982.56,-3732.7 1028.43,-3730.04 1069.5,-3771 1081.54,-3783.01 1081.1,-8652.05 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge592" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M583.98,-7624.2C601.94,-7641.88 644.41,-7680.06 689,-7694 740.33,-7710.05 892.91,-7731.96 931,-7694 943.08,-7681.96 928.16,-5251.16 939,-5238 944.17,-5231.73 951.42,-5227.91 959.23,-5225.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.28,-5224.27 958.96,-5223.59 959.91,-5227.68"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge590" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M575.25,-7624.14C576.94,-7665.23 589.89,-7833.81 689,-7901 758.99,-7948.45 1009.54,-7960.62 1069.5,-7901 1091.47,-7879.15 1066.8,-5696.71 1082.5,-5670 1088.63,-5659.56 1099.15,-5651.99 1109.79,-5646.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1110.81,-5648.46 1115.35,-5644 1109.03,-5644.66 1110.81,-5648.46"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge591" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M580.17,-7624.12C594.08,-7647.64 634.98,-7710.08 689,-7733 788.01,-7775.01 854.81,-7808.91 931,-7733 952.38,-7711.7 920.15,-5583.57 939,-5560 940.68,-5557.9 942.59,-5556.05 944.67,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.95,-5556.11 949.82,-5551.07 943.65,-5552.6 945.95,-5556.11"/>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge593" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M575.84,-7624.21C579.84,-7662.07 600.63,-7806.36 689,-7863 734.28,-7892.02 892.83,-7900.88 931,-7863 941.37,-7852.71 936.69,-6825.43 939,-6811 950.76,-6737.37 984,-6653.95 998.07,-6620.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.04,-6621.5 1000.47,-6615.15 996.18,-6619.84 1000.04,-6621.5"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts -->
<g id="node182" class="node">
<title>UI/OpeningHours/OpeningHoursRange.ts</title>
<g id="a_node182"><a xlink:href="UI/OpeningHours/OpeningHoursRange.ts" xlink:title="OpeningHoursRange.ts">
<path fill="#ddfeff" stroke="black" d="M860.5,-7582C860.5,-7582 751.5,-7582 751.5,-7582 748.5,-7582 745.5,-7579 745.5,-7576 745.5,-7576 745.5,-7570 745.5,-7570 745.5,-7567 748.5,-7564 751.5,-7564 751.5,-7564 860.5,-7564 860.5,-7564 863.5,-7564 866.5,-7567 866.5,-7570 866.5,-7570 866.5,-7576 866.5,-7576 866.5,-7579 863.5,-7582 860.5,-7582"/>
<text text-anchor="middle" x="806" y="-7570.8" font-family="Helvetica,sans-Serif" font-size="9.00">OpeningHoursRange.ts</text>
</a>
</g>
</g>
<!-- UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/OpeningHours/OpeningHoursRange.ts -->
<g id="edge594" class="edge">
<title>UI/OpeningHours/OpeningHoursPickerTable.ts&#45;&gt;UI/OpeningHours/OpeningHoursRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M644.11,-7605.97C656.42,-7604.15 669.11,-7602.13 681,-7600 707.79,-7595.19 737.6,-7588.74 761.27,-7583.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="761.78,-7585.39 767.16,-7582 760.84,-7581.29 761.78,-7585.39"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;Utils.ts -->
<g id="edge596" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M866.54,-7581.33C890.04,-7581.11 915.16,-7575.83 931,-7558 948.27,-7538.56 925.69,-3835.34 939,-3813 972.8,-3756.28 1034.07,-3797.72 1069.5,-3742 1082.34,-3721.81 1065.07,-3543.4 1082.5,-3527 1125.86,-3486.18 1162.13,-3502.69 1216.5,-3527 1262.71,-3547.66 1296.65,-3600.74 1310.97,-3626.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1309.18,-3627.61 1313.89,-3631.88 1312.86,-3625.6 1309.18,-3627.61"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge597" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M866.52,-7581.32C890.02,-7581.09 915.14,-7575.82 931,-7558 949.17,-7537.58 921.92,-5611.34 939,-5590 945.46,-5581.93 955.29,-5577.65 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.35,-5574.47 965.08,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;Svg.ts -->
<g id="edge595" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M866.54,-7581.33C890.04,-7581.11 915.16,-7575.83 931,-7558 939.7,-7548.21 938.45,-3800.08 939,-3787 952.32,-3470.22 993.9,-3084.45 1002.81,-3004.09"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.9,-3004.24 1003.48,-2998.05 1000.73,-3003.78 1004.9,-3004.24"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge598" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M831.59,-7582.01C883.84,-7599.4 1006.31,-7630.46 1069.5,-7566 1088.15,-7546.98 1065.64,-5668.62 1082.5,-5648 1084.81,-5645.18 1087.55,-5642.87 1090.59,-5640.99"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1091.95,-5642.65 1096.33,-5638.05 1090.04,-5638.91 1091.95,-5642.65"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/BaseUIElement.ts -->
<g id="edge599" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/BaseUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M827.62,-7582.03C875.04,-7601.27 993.54,-7640.5 1069.5,-7589 1215.61,-7489.93 1178.12,-7392.31 1216.5,-7220 1294.41,-6870.27 1315.84,-5668.45 1318.26,-5516.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1320.37,-5516.39 1318.36,-5510.35 1316.17,-5516.32 1320.37,-5516.39"/>
</g>
<!-- UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge600" class="edge">
<title>UI/OpeningHours/OpeningHoursRange.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M866.74,-7566.76C887.17,-7564.37 910.13,-7561.39 931,-7558 939.46,-7556.63 948.43,-7554.97 957.08,-7553.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="957.54,-7555.31 963.02,-7552.08 956.72,-7551.19 957.54,-7555.31"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge603" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M818.51,-7533.73C844.64,-7511.87 907.91,-7454.02 931,-7389 939.36,-7365.45 923.38,-5609.51 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.56 971.35,-5574.47 965.08,-5573.43 965.8,-5577.56"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;Models/Constants.ts -->
<g id="edge601" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M753.09,-7533.99C724.35,-7532.43 693.06,-7537.37 685,-7564 680.26,-7579.66 681.53,-8137.01 685,-8153 707.23,-8255.55 772.52,-8366.02 796.78,-8404.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="795.07,-8405.9 800.05,-8409.85 798.62,-8403.66 795.07,-8405.9"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge607" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.99,-7533.7C836.51,-7503.07 907.1,-7401.8 931,-7305 934.44,-7291.06 929.87,-5249.08 939,-5238 944.17,-5231.73 951.42,-5227.91 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.91,-5227.68 965.28,-5224.28 958.96,-5223.59 959.91,-5227.68"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;State.ts -->
<g id="edge602" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.38,-7533.58C835.25,-7500.66 907.07,-7387.03 931,-7281 944.17,-7222.65 930.43,-3033.2 939,-2974 949.95,-2898.39 980.53,-2812.64 995.72,-2773.11"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.56,-2766.49 1000.79,-2760.14 996.65,-2764.96 1000.56,-2766.49"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.6,-2765.72 997.51,-2768.52 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.64" cy="-2770.75" rx="2.4" ry="2.4"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge604" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M873.35,-7552.02C894.31,-7554.48 917.58,-7556.79 939,-7558 967.95,-7559.64 1048.92,-7578.44 1069.5,-7558 1088.32,-7539.31 1065.71,-5668.54 1082.5,-5648 1084.81,-5645.18 1087.55,-5642.87 1090.59,-5640.99"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1091.95,-5642.65 1096.33,-5638.05 1090.04,-5638.91 1091.95,-5642.65"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge608" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M824.32,-7533.76C852.84,-7517.43 908.74,-7480.47 931,-7431 940.58,-7409.72 935.79,-6614.11 939,-6591 951.07,-6504.05 985.26,-6403.89 998.84,-6366.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.9,-6366.77 1000.98,-6360.42 996.95,-6365.34 1000.9,-6366.77"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge606" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M814.3,-7533.92C837.13,-7504.85 907.11,-7410.62 931,-7319 937.16,-7295.36 923.73,-5579.07 939,-5560 940.68,-5557.9 942.59,-5556.06 944.68,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.83,-5551.07 943.66,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/Table.ts -->
<g id="edge605" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/Base/Table.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M769.26,-7533.93C737.88,-7523.77 696.11,-7503.68 685,-7467 681.23,-7454.56 681.23,-5608.44 685,-5596 694.96,-5563.1 740.38,-5563.31 772.64,-5567.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.65,-5570.11 778.9,-5568.96 773.3,-5565.96 772.65,-5570.11"/>
</g>
<!-- UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge609" class="edge">
<title>UI/OpeningHours/OpeningHoursVisualization.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M880.26,-7543C904.54,-7543 931.04,-7543 953.29,-7543"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="953.45,-7545.1 959.45,-7543 953.45,-7540.9 953.45,-7545.1"/>
</g>
<!-- UI/Popup/DeleteWizard.ts -->
<g id="node184" class="node">
<title>UI/Popup/DeleteWizard.ts</title>
<g id="a_node184"><a xlink:href="UI/Popup/DeleteWizard.ts" xlink:title="DeleteWizard.ts">
<path fill="#ddfeff" stroke="black" d="M419.5,-4668C419.5,-4668 344.5,-4668 344.5,-4668 341.5,-4668 338.5,-4665 338.5,-4662 338.5,-4662 338.5,-4656 338.5,-4656 338.5,-4653 341.5,-4650 344.5,-4650 344.5,-4650 419.5,-4650 419.5,-4650 422.5,-4650 425.5,-4653 425.5,-4656 425.5,-4656 425.5,-4662 425.5,-4662 425.5,-4665 422.5,-4668 419.5,-4668"/>
<text text-anchor="middle" x="382" y="-4656.8" font-family="Helvetica,sans-Serif" font-size="9.00">DeleteWizard.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge625" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.62,-4657.73C438.2,-4659.63 450.78,-4664.22 459,-4674 472.65,-4690.26 452.69,-5040.32 467,-5056 499.27,-5091.34 647.25,-5046.07 681,-5080 692.82,-5091.88 678.45,-5141.97 689,-5155 760.21,-5242.92 863.44,-5143.24 931,-5234 952.64,-5263.06 916.07,-5531.94 939,-5560 945.54,-5568 955.4,-5572.26 965.5,-5574.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.18,-5576.49 971.45,-5575.45 965.9,-5572.35 965.18,-5576.49"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge622" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.62,-4661.56C438.2,-4660 450.79,-4655.71 459,-4646 471.74,-4630.94 455.7,-1822.17 467,-1806 525.08,-1722.9 618.06,-1806.48 681,-1727 699.07,-1704.18 667.2,-1681.28 689,-1662 816.56,-1549.18 969.03,-1569.51 1069.5,-1707 1088.84,-1733.46 1068.07,-4037.57 1082.5,-4067 1115.81,-4134.94 1183.31,-4104.01 1216.5,-4172 1228.02,-4195.61 1222.03,-7928.85 1224.5,-7955 1242.07,-8140.69 1295,-8360.33 1312.68,-8430.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.62,-8438.63 1316.13,-8443.92 1316.69,-8437.59 1312.62,-8438.63"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.65,-8438.11 1313.91,-8435.2 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1313.32" cy="-8432.88" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge620" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.62,-4661.56C438.2,-4660 450.79,-4655.71 459,-4646 471.37,-4631.38 456.19,-1904.8 467,-1889 524.68,-1804.66 620.05,-1887.01 681,-1805 694.03,-1787.46 672.93,-1721.81 689,-1707 768.09,-1634.11 829.21,-1672.26 931,-1707 1004.62,-1732.12 1035.14,-1744.21 1069.5,-1814 1090.53,-1856.71 1078.59,-8621.56 1082.5,-8669 1094.24,-8811.4 1129.94,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Models/Constants.ts -->
<g id="edge621" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.51,-4661.47C438.08,-4659.9 450.69,-4655.63 459,-4646 471.96,-4630.98 452.82,-4302.87 467,-4289 535,-4222.5 613.67,-4221.83 681,-4289 689.27,-4297.25 688.11,-7641.35 689,-7653 712.3,-7957.63 785.58,-8324.72 801.8,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.84,-8404.5 803.11,-8409.95 803.95,-8403.65 799.84,-8404.5"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge619" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.62,-4661.56C438.2,-4660 450.79,-4655.71 459,-4646 471.2,-4631.58 455.86,-1941.25 467,-1926 525.95,-1845.31 616.07,-1932.96 681,-1857 695.91,-1839.56 671.56,-1820.91 689,-1806 770.73,-1736.09 848.42,-1737.08 931,-1806 946.26,-1818.74 930.02,-1832.27 939,-1850 977.13,-1925.31 1038.23,-1909.59 1069.5,-1988 1080.19,-2014.79 1064.64,-10273.34 1082.5,-10296 1087.16,-10301.91 1093.72,-10305.74 1100.83,-10308.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.57,-10310.29 1106.91,-10309.91 1101.72,-10306.25 1100.57,-10310.29"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge629" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.61,-4657.73C438.19,-4659.64 450.78,-4664.22 459,-4674 471.63,-4689.01 453.14,-5013.12 467,-5027 485.22,-5045.24 912.57,-5019.97 931,-5038 944.84,-5051.53 926.38,-5197.33 939,-5212 944.3,-5218.16 951.61,-5221.93 959.44,-5224.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.17,-5226.23 965.49,-5225.54 960.12,-5222.14 959.17,-5226.23"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;State.ts -->
<g id="edge623" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.62,-4661.56C438.2,-4660 450.79,-4655.71 459,-4646 470.14,-4632.84 459.88,-2178.71 467,-2163 559.38,-1959.08 771.52,-1809.9 931,-1967 941.53,-1977.37 937.02,-2484.35 939,-2499 950.7,-2585.36 981.93,-2684.57 996.63,-2728.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="997.24,-2736.55 1001.16,-2741.55 1001.21,-2735.2 997.24,-2736.55"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.22,-2735.87 998.25,-2733.04 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="997.48" cy="-2730.76" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Svg.ts -->
<g id="edge624" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.53,-4661.48C438.1,-4659.92 450.71,-4655.64 459,-4646 466.45,-4637.34 466.28,-4246.4 467,-4235 481.62,-4002.37 515.68,-2304.85 689,-2149 768.98,-2077.08 854.46,-2073.44 931,-2149 943.2,-2161.04 936.45,-2749.05 939,-2766 951.09,-2846.39 984.72,-2938.36 998.49,-2973.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.69,-2975.03 1000.83,-2979.86 1000.6,-2973.5 996.69,-2975.03"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;Logic/Osm/Actions/DeleteAction.ts -->
<g id="edge618" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;Logic/Osm/Actions/DeleteAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.59,-4652.34C499.36,-4641.89 646.38,-4626.2 681,-4661 694.9,-4674.98 675.85,-10323.32 689,-10338 704.04,-10354.8 727.92,-10359.45 750.12,-10359.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="758.09,-10361.07 763.98,-10358.69 757.89,-10356.87 758.09,-10361.07"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="757.99,-10358.97 754.99,-10359.11 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="752.6" cy="-10359.22" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge626" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.71,-4657.65C438.29,-4659.55 450.86,-4664.15 459,-4674 471.33,-4688.91 456.41,-6050.81 467,-6067 523.97,-6154.08 623.88,-6075.02 681,-6162 694.27,-6182.2 671.83,-7014.99 689,-7032 749.07,-7091.52 1009.18,-7086.26 1069.5,-7027 1121.23,-6976.18 1141.84,-5800.19 1144.26,-5650.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.36,-5650.3 1144.36,-5644.26 1142.16,-5650.23 1146.36,-5650.3"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge630" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.65,-4657.71C438.23,-4659.61 450.8,-4664.2 459,-4674 475.93,-4694.25 452.43,-5127 467,-5149 524.46,-5235.76 623.47,-5157.29 681,-5244 694.18,-5263.86 672.37,-5655.92 689,-5673 707.78,-5692.29 911.36,-5665.59 931,-5684 980.28,-5730.2 1000.6,-6240.17 1003.98,-6335.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.89,-6335.87 1004.19,-6341.79 1006.08,-6335.73 1001.89,-6335.87"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge628" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.61,-4657.73C438.19,-4659.63 450.78,-4664.22 459,-4674 471.87,-4689.31 453.95,-5018.84 467,-5034 529.98,-5107.14 592.38,-5032.76 681,-5071 685.08,-5072.76 685.03,-5074.99 689,-5077 789.25,-5127.7 863.03,-5060.56 931,-5150 943.31,-5166.19 927.72,-5499.08 939,-5516 944.04,-5523.57 951.55,-5529.18 959.7,-5533.33"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.1,-5535.37 965.43,-5535.98 960.86,-5531.55 959.1,-5535.37"/>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge627" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.63,-4657.72C438.21,-4659.62 450.79,-4664.21 459,-4674 473.46,-4691.24 455.84,-5059.46 467,-5079 522.42,-5176.04 625.04,-5114.27 681,-5211 695.42,-5235.92 669.66,-5448.67 689,-5470 705.4,-5488.09 731.99,-5492.49 755.58,-5492.08"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.9,-5494.17 761.82,-5491.86 755.75,-5489.97 755.9,-5494.17"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts -->
<g id="node185" class="node">
<title>UI/Popup/TagRenderingQuestion.ts</title>
<g id="a_node185"><a xlink:href="UI/Popup/TagRenderingQuestion.ts" xlink:title="TagRenderingQuestion.ts">
<path fill="#ddfeff" stroke="black" d="M632.5,-4777C632.5,-4777 515.5,-4777 515.5,-4777 512.5,-4777 509.5,-4774 509.5,-4771 509.5,-4771 509.5,-4765 509.5,-4765 509.5,-4762 512.5,-4759 515.5,-4759 515.5,-4759 632.5,-4759 632.5,-4759 635.5,-4759 638.5,-4762 638.5,-4765 638.5,-4765 638.5,-4771 638.5,-4771 638.5,-4774 635.5,-4777 632.5,-4777"/>
<text text-anchor="middle" x="574" y="-4765.8" font-family="Helvetica,sans-Serif" font-size="9.00">TagRenderingQuestion.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/DeleteWizard.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts -->
<g id="edge631" class="edge">
<title>UI/Popup/DeleteWizard.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.73,-4658.46C438.01,-4660.46 450.39,-4664.92 459,-4674 476.3,-4692.24 451.11,-4710.52 467,-4730 475.85,-4740.85 488.05,-4748.6 501.02,-4754.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="507.81,-4758.88 514.16,-4758.98 509.26,-4754.94 507.81,-4758.88"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="508.53,-4756.91 505.72,-4755.87 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="503.47" cy="-4755.04" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Utils.ts -->
<g id="edge716" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.1,-4758.91C654.73,-4753.33 670.84,-4744.37 681,-4730 696.52,-4708.04 678.07,-2818.57 689,-2794 748.08,-2661.19 867.84,-2704.92 931,-2574 936.85,-2561.86 929.16,-2462.21 939,-2453 1029.04,-2368.72 1125.64,-2369.6 1216.5,-2453 1307.24,-2536.28 1317.42,-3491.46 1318.4,-3625.43"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.31,-3625.83 1318.45,-3631.82 1320.51,-3625.81 1316.31,-3625.83"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge717" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.85,-4762.48C735.72,-4754.81 910.79,-4744 931,-4764 946.71,-4779.56 925.13,-5542.78 939,-5560 945.48,-5568.05 955.32,-5572.33 965.42,-5574.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.11,-5576.55 971.38,-5575.51 965.82,-5572.41 965.11,-5576.55"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge713" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.1,-4758.91C654.73,-4753.33 670.84,-4744.37 681,-4730 696.27,-4708.4 671.52,-2844.86 689,-2825 760.68,-2743.56 856.47,-2871.84 931,-2793 947.23,-2775.83 921.68,-2703.06 939,-2687 981.53,-2647.56 1028.44,-2646.03 1069.5,-2687 1084.2,-2701.67 1080.79,-8648.3 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Models/Constants.ts -->
<g id="edge714" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.54,-4777.26C608.31,-4798.07 661.61,-4851.22 681,-4909 693.13,-4945.13 686.08,-7615 689,-7653 712.38,-7957.62 785.59,-8324.72 801.8,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.84,-8404.5 803.11,-8409.95 803.96,-8403.65 799.84,-8404.5"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge720" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M602.74,-4758.88C625.59,-4751.86 659.01,-4742.75 689,-4739 742.36,-4732.32 891.29,-4702.74 931,-4739 938.25,-4745.62 937.76,-4817.26 939,-4827 958.12,-4976.88 991.54,-5156.85 1001.57,-5209.71"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.54,-5210.28 1002.73,-5215.78 1003.67,-5209.49 999.54,-5210.28"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;State.ts -->
<g id="edge715" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.09,-4758.91C654.72,-4753.33 670.84,-4744.37 681,-4730 695.23,-4709.87 675.61,-2975.7 689,-2955 753.19,-2855.81 861.92,-2940.84 931,-2845 950.86,-2817.45 917.02,-2794.9 939,-2769 945.54,-2761.3 955.03,-2756.74 964.77,-2754.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.93,-2754.64 978.42,-2751.45 972.13,-2750.52 972.93,-2754.64"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.53,-2752.58 969.58,-2753.15 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="967.23" cy="-2753.6" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge709" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M637.73,-4758.94C654.45,-4753.36 670.71,-4744.4 681,-4730 690.09,-4717.27 677.86,-4177.98 689,-4167 765.59,-4091.49 854.9,-4091 931,-4167 946.3,-4182.28 925.51,-10379.09 939,-10396 941.44,-10399.05 944.35,-10401.56 947.59,-10403.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.63,-10405.49 952.9,-10406.5 948.62,-10401.79 946.63,-10405.49"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge710" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.1,-4758.91C654.73,-4753.33 670.84,-4744.37 681,-4730 696.11,-4708.63 671.51,-2865.46 689,-2846 725.16,-2805.75 893.03,-2857.55 931,-2819 944,-2805.8 925.28,-2748.46 939,-2736 981.93,-2697 1028.45,-2695.03 1069.5,-2736 1102.09,-2768.52 1053.99,-9329.85 1082.5,-9366 1089.56,-9374.95 1100.96,-9379.13 1112.08,-9380.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1111.98,-9383.03 1118.2,-9381.69 1112.51,-9378.86 1111.98,-9383.03"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge711" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M637.75,-4758.95C654.48,-4753.38 670.73,-4744.41 681,-4730 691.85,-4714.78 675.7,-4070.14 689,-4057 765.5,-3981.4 854.89,-3981 931,-4057 943.95,-4069.93 928.3,-9314.15 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.34 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge718" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M619.14,-4758.94C639.49,-4753.16 663.06,-4744.03 681,-4730 686.05,-4726.05 683.35,-4721.02 689,-4718 783.83,-4667.25 829.44,-4682.58 931,-4718 1005.22,-4743.89 1034.27,-4757.73 1069.5,-4828 1091.17,-4871.23 1077.79,-5214.87 1082.5,-5263 1096.17,-5402.69 1130.42,-5569.29 1141.2,-5619.77"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.19,-5620.43 1142.51,-5625.86 1143.3,-5619.55 1139.19,-5620.43"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge712" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.55,-4777.26C608.33,-4798.07 661.64,-4851.21 681,-4909 699.96,-4965.6 669.09,-9150.72 689,-9207 709.06,-9263.7 761.88,-9314.53 788.77,-9337.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="787.55,-9339.43 793.48,-9341.72 790.27,-9336.23 787.55,-9339.43"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge727" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M608.49,-4777.01C693.31,-4800.16 911.31,-4861.8 931,-4889 937.39,-4897.82 938.42,-5662.13 939,-5673 953.18,-5938.98 993.11,-6261.76 1002.5,-6335.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.47,-6336.16 1003.32,-6341.85 1004.64,-6335.63 1000.47,-6336.16"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge719" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M632.27,-4758.98C650.36,-4756.52 670.47,-4754.21 689,-4753 742.66,-4749.48 892.77,-4715.17 931,-4753 946.07,-4767.91 927.34,-5498.3 939,-5516 943.95,-5523.51 951.32,-5529.09 959.36,-5533.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.69,-5535.24 965.02,-5535.88 960.47,-5531.44 958.69,-5535.24"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/ValidatedTextField.ts -->
<g id="edge728" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/ValidatedTextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M509.31,-4759.56C488.32,-4760.75 468.89,-4767.54 463,-4787 457.04,-4806.67 459.31,-6246.78 463,-6267 483.49,-6379.26 544.59,-6504.34 566.27,-6546.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="564.43,-6547.36 569.06,-6551.72 568.16,-6545.42 564.43,-6547.36"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/SubstitutedTranslation.ts -->
<g id="edge730" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/SubstitutedTranslation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M511.12,-4758.91C494.21,-4753.34 477.63,-4744.38 467,-4730 455.69,-4714.71 472.76,-4572.13 459,-4559 436.22,-4537.26 354.33,-4543.76 294.62,-4552"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="286.37,-4551.06 280.73,-4554 286.97,-4555.22 286.37,-4551.06"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="286.67,-4553.14 289.64,-4552.71 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="292.01" cy="-4552.37" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/DropDown.ts -->
<g id="edge722" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/DropDown.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.53,-4777.27C608.29,-4798.08 661.56,-4851.24 681,-4909 688.65,-4931.73 673.12,-6618.02 689,-6636 706.72,-6656.07 736.95,-6659.44 762.11,-6658"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="762.56,-6660.07 768.38,-6657.53 762.25,-6655.88 762.56,-6660.07"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/Checkboxes.ts -->
<g id="edge721" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/Checkboxes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.58,-4761.76C654.6,-4763.58 670.28,-4768.95 681,-4781 695.63,-4797.45 674.42,-6349.5 689,-6366 705.92,-6385.15 734.23,-6389.1 758.65,-6388.16"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="758.89,-6390.25 764.77,-6387.82 758.66,-6386.06 758.89,-6390.25"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/FixedInputElement.ts -->
<g id="edge723" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/FixedInputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.58,-4761.76C654.61,-4763.58 670.28,-4768.95 681,-4781 696.46,-4798.39 673.6,-6438.56 689,-6456 702.4,-6471.17 722.95,-6476.8 743.06,-6478.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="743.2,-6480.13 749.28,-6478.26 743.36,-6475.93 743.2,-6480.13"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/InputElementMap.ts -->
<g id="edge724" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/InputElementMap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.58,-4761.75C654.61,-4763.58 670.28,-4768.94 681,-4781 697.29,-4799.32 672.77,-6527.62 689,-6546 702.89,-6561.72 724.45,-6567.2 745.24,-6568.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="745.32,-6570.24 751.37,-6568.29 745.42,-6566.04 745.32,-6570.24"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/InputElementWrapper.ts -->
<g id="edge725" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/InputElementWrapper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.58,-4761.75C654.61,-4763.58 670.28,-4768.94 681,-4781 697.56,-4799.63 672.5,-6557.31 689,-6576 699.03,-6587.36 713.08,-6593.37 727.94,-6596.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="735.52,-6599.27 741.73,-6597.94 736.04,-6595.1 735.52,-6599.27"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="735.78,-6597.18 732.8,-6596.81 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="730.42" cy="-6596.5" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/RadioButton.ts -->
<g id="edge726" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/RadioButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.56,-4761.77C654.59,-4763.6 670.27,-4768.96 681,-4781 690.95,-4792.16 687.23,-5842.16 689,-5857 712.01,-6049.43 781.13,-6275.92 800.12,-6335.84"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="798.17,-6336.64 802,-6341.72 802.18,-6335.37 798.17,-6336.64"/>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/VariableInputElement.ts -->
<g id="edge729" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Input/VariableInputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.58,-4761.75C654.61,-4763.58 670.28,-4768.94 681,-4781 697.01,-4799.01 673.05,-6497.94 689,-6516 701.02,-6529.61 718.79,-6535.54 736.82,-6537.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="736.79,-6539.6 742.94,-6538.02 737.14,-6535.42 736.79,-6539.6"/>
</g>
<!-- UI/Popup/SaveButton.ts -->
<g id="node192" class="node">
<title>UI/Popup/SaveButton.ts</title>
<g id="a_node192"><a xlink:href="UI/Popup/SaveButton.ts" xlink:title="SaveButton.ts">
<path fill="#ddfeff" stroke="black" d="M840,-4788C840,-4788 772,-4788 772,-4788 769,-4788 766,-4785 766,-4782 766,-4782 766,-4776 766,-4776 766,-4773 769,-4770 772,-4770 772,-4770 840,-4770 840,-4770 843,-4770 846,-4773 846,-4776 846,-4776 846,-4782 846,-4782 846,-4785 843,-4788 840,-4788"/>
<text text-anchor="middle" x="806" y="-4776.8" font-family="Helvetica,sans-Serif" font-size="9.00">SaveButton.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Popup/SaveButton.ts -->
<g id="edge731" class="edge">
<title>UI/Popup/TagRenderingQuestion.ts&#45;&gt;UI/Popup/SaveButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M638.76,-4771.05C677.06,-4772.88 724.89,-4775.17 759.4,-4776.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.59,-4778.93 765.68,-4777.12 759.79,-4774.74 759.59,-4778.93"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts -->
<g id="node186" class="node">
<title>UI/Popup/EditableTagRendering.ts</title>
<g id="a_node186"><a xlink:href="UI/Popup/EditableTagRendering.ts" xlink:title="EditableTagRendering.ts">
<path fill="#ddfeff" stroke="black" d="M439,-4758C439,-4758 325,-4758 325,-4758 322,-4758 319,-4755 319,-4752 319,-4752 319,-4746 319,-4746 319,-4743 322,-4740 325,-4740 325,-4740 439,-4740 439,-4740 442,-4740 445,-4743 445,-4746 445,-4746 445,-4752 445,-4752 445,-4755 442,-4758 439,-4758"/>
<text text-anchor="middle" x="382" y="-4746.8" font-family="Helvetica,sans-Serif" font-size="9.00">EditableTagRendering.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge635" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.21,-4753.5C450.45,-4756.05 455.2,-4759.47 459,-4764 472.83,-4780.47 454.67,-5133.38 467,-5151 525.5,-5234.57 611.88,-5158.97 681,-5234 689.48,-5243.2 679.21,-5253.21 689,-5261 731.16,-5294.56 893.55,-5237.26 931,-5276 952.94,-5298.7 918.98,-5535.59 939,-5560 945.56,-5567.99 955.42,-5572.25 965.52,-5574.4"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.2,-5576.47 971.47,-5575.43 965.92,-5572.34 965.2,-5576.47"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge632" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.29,-4744.57C450.52,-4742 455.23,-4738.57 459,-4734 469.41,-4721.38 460.96,-2393.21 467,-2378 520.27,-2243.87 556.58,-2198.4 689,-2141 787.68,-2098.22 836.24,-2090.12 931,-2141 1029.18,-2193.72 1037.25,-2243.34 1069.5,-2350 1082.2,-2392 1078.89,-8625.27 1082.5,-8669 1094.25,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge637" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.2,-4753.5C450.45,-4756.06 455.19,-4759.47 459,-4764 471.77,-4779.18 453.56,-5106.4 467,-5121 607.44,-5273.58 778.41,-5029.58 931,-5170 944.98,-5182.87 925.62,-5198.51 939,-5212 944.53,-5217.57 951.72,-5221.11 959.3,-5223.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.83,-5225.34 965.16,-5224.71 959.82,-5221.26 958.83,-5225.34"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts -->
<g id="edge639" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M433.42,-4739.98C456.59,-4735.83 484.35,-4730.86 508.98,-4726.46"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="517.14,-4727.13 522.68,-4724.01 516.4,-4722.99 517.14,-4727.13"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="516.77,-4725.06 513.82,-4725.59 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="511.45" cy="-4726.01" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;State.ts -->
<g id="edge633" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.29,-4744.57C450.52,-4742 455.23,-4738.56 459,-4734 479.09,-4709.65 449.17,-2487.05 467,-2461 524.7,-2376.68 621.54,-2460.09 681,-2377 692.39,-2361.08 674.85,-2214.52 689,-2201 766.76,-2126.69 854.19,-2125.71 931,-2201 938.98,-2208.82 936.58,-2592.1 939,-2603 949.57,-2650.64 975.94,-2701.75 991.81,-2729.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.99,-2737.63 998.83,-2741.76 997.62,-2735.51 993.99,-2737.63"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="995.81,-2736.57 994.3,-2733.98 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="993.09" cy="-2731.9" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;Svg.ts -->
<g id="edge634" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.29,-4744.57C450.52,-4742 455.23,-4738.56 459,-4734 477.25,-4711.88 454.68,-2694.9 467,-2669 521.8,-2553.78 568.86,-2529.95 689,-2487 739.64,-2468.9 892.43,-2449.52 931,-2487 942.12,-2497.81 936.57,-2750.68 939,-2766 951.72,-2846.29 984.99,-2938.31 998.58,-2973.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.76,-2975.01 1000.88,-2979.85 1000.68,-2973.5 996.76,-2975.01"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge638" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.25,-4753.47C450.48,-4756.03 455.21,-4759.45 459,-4764 470.02,-4777.24 461.95,-5367.53 467,-5384 517.71,-5549.34 610.25,-5551.19 681,-5709 686.65,-5721.59 678.32,-5730.26 689,-5739 730.69,-5773.13 891.76,-5717.07 931,-5754 974.82,-5795.24 999.32,-6246.19 1003.76,-6335.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.68,-6335.98 1004.07,-6341.87 1005.87,-6335.78 1001.68,-6335.98"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Base/Lazy.ts -->
<g id="edge636" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Base/Lazy.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.24,-4753.47C450.48,-4756.03 455.21,-4759.45 459,-4764 469.83,-4777 455.38,-5360.7 467,-5373 499.74,-5407.65 647.27,-5354.31 681,-5388 698.66,-5405.63 671.87,-5481.86 689,-5500 709.91,-5522.14 746.13,-5523.49 772.55,-5520.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.98,-5522.87 778.7,-5520.09 772.5,-5518.7 772.98,-5522.87"/>
</g>
<!-- UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts -->
<g id="edge640" class="edge">
<title>UI/Popup/EditableTagRendering.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M445.21,-4755.22C461.28,-4756.83 478.77,-4758.58 495.51,-4760.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="503.17,-4763.13 509.34,-4761.63 503.58,-4758.95 503.17,-4763.13"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="503.37,-4761.04 500.39,-4760.74 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="498" cy="-4760.5" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;Utils.ts -->
<g id="edge645" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.64,-4686.99C281.96,-4684.71 287.72,-4681.22 292,-4676 319.28,-4642.71 277.77,-1610.33 305,-1577 349.23,-1522.87 405.42,-1589.91 459,-1545 466.34,-1538.85 459.82,-1531.34 467,-1525 540.71,-1459.94 618.49,-1544.88 681,-1469 698.84,-1447.35 668.54,-1362.2 689,-1343 869.84,-1173.28 1119.48,-1296.76 1216.5,-1525 1303.68,-1730.1 1317.21,-3443.7 1318.4,-3625.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.31,-3625.67 1318.44,-3631.66 1320.51,-3625.65 1316.31,-3625.67"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;Customizations/SharedTagRenderings.ts -->
<g id="edge641" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;Customizations/SharedTagRenderings.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.64,-4686.99C281.96,-4684.71 287.72,-4681.22 292,-4676 316.12,-4646.58 296.39,-1974.06 305,-1937 342.32,-1776.29 339.96,-1708.26 467,-1603 542.88,-1540.13 616.89,-1619.83 681,-1545 701.95,-1520.55 666.15,-1495.69 689,-1473 768.27,-1394.29 827.44,-1452.79 939,-1447 996.92,-1444 1028.39,-1406.09 1069.5,-1447 1082.4,-1459.83 1080.07,-4048.97 1082.5,-4067 1093.04,-4145.13 1122.27,-4234.45 1136.5,-4274.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1137.16,-4283.03 1141.15,-4287.97 1141.11,-4281.61 1137.16,-4283.03"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-4282.32 1138.12,-4279.5 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1137.32" cy="-4277.24" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge646" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4698.14C255.48,-4710.95 281.6,-4735.83 292,-4764 304.23,-4797.12 280.93,-7280.17 305,-7306 328.74,-7331.47 906.33,-7359.56 931,-7335 948.18,-7317.9 923.85,-5608.92 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.56 971.35,-5574.47 965.08,-5573.43 965.8,-5577.56"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge643" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.64,-4686.99C281.96,-4684.71 287.72,-4681.22 292,-4676 319.01,-4643.04 278.55,-1641.41 305,-1608 348.69,-1552.81 407.42,-1618.9 459,-1571 467.55,-1563.06 458.23,-1553.7 467,-1546 539.64,-1482.2 615.4,-1578.02 681,-1507 692.97,-1494.04 675.98,-1439.91 689,-1428 770.99,-1353 827.88,-1425.67 939,-1425 997,-1424.65 1028.39,-1384.09 1069.5,-1425 1095.26,-1450.63 1059.42,-4012.94 1082.5,-4041 1121.1,-4087.91 1177.97,-4021.03 1216.5,-4068 1225.06,-4078.43 1223.23,-7941.56 1224.5,-7955 1242.06,-8140.69 1295,-8360.33 1312.68,-8430.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.62,-8438.63 1316.13,-8443.92 1316.69,-8437.59 1312.62,-8438.63"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.65,-8438.11 1313.91,-8435.2 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="1313.32" cy="-8432.88" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;Models/Constants.ts -->
<g id="edge642" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;Models/Constants.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.66,-4686.62C281.89,-4684.37 287.62,-4680.99 292,-4676 318.88,-4645.35 292.34,-4531.75 305,-4493 347.05,-4364.3 348.51,-4300.51 467,-4235 550.24,-4188.98 613.67,-4167.83 681,-4235 689.4,-4243.38 688.1,-7641.17 689,-7653 712.29,-7957.63 785.57,-8324.72 801.8,-8403.61"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="799.84,-8404.5 803.11,-8409.95 803.95,-8403.65 799.84,-8404.5"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts -->
<g id="edge656" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/TagRenderingAnswer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.66,-4684.86C281.59,-4682.81 287.24,-4679.96 292,-4676 303.81,-4666.19 292.27,-4652.57 305,-4644 333.39,-4624.89 426.1,-4634.59 459,-4644 494.96,-4654.28 530.61,-4679.56 552.23,-4697"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="557.01,-4703.73 562.97,-4705.96 559.71,-4700.5 557.01,-4703.73"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="558.36,-4702.12 556.06,-4700.19 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="554.21" cy="-4698.65" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;State.ts -->
<g id="edge644" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.53,-4686.89C281.86,-4684.63 287.65,-4681.17 292,-4676 307.7,-4657.33 303.79,-4261.37 305,-4237 317.81,-3979.91 290.1,-2112.99 467,-1926 608.98,-1775.92 783.94,-1752.89 931,-1898 942.88,-1909.73 936.77,-2482.45 939,-2499 950.63,-2585.37 981.89,-2684.58 996.62,-2728.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="997.23,-2736.56 1001.16,-2741.55 1001.2,-2735.2 997.23,-2736.56"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="999.21,-2735.88 998.24,-2733.04 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="997.47" cy="-2730.77" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge649" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4698.14C255.48,-4710.95 281.6,-4735.83 292,-4764 304.31,-4797.31 281.33,-7294.53 305,-7321 351.39,-7372.88 881.53,-7391.95 931,-7343 938.42,-7335.65 937.56,-6601.34 939,-6591 951.12,-6504.06 985.28,-6403.89 998.85,-6366.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.91,-6366.78 1000.98,-6360.42 996.96,-6365.34 1000.91,-6366.78"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge648" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4698.14C255.48,-4710.95 281.6,-4735.83 292,-4764 304.52,-4797.91 281.07,-7339.9 305,-7367 327.84,-7392.87 424.79,-7382.47 459,-7387 557.7,-7400.08 614.22,-7343.15 681,-7417 698.6,-7436.46 670.14,-7634.76 689,-7653 698.67,-7662.34 921.48,-7662.49 931,-7653 951.59,-7632.48 920.84,-5582.7 939,-5560 940.68,-5557.9 942.59,-5556.06 944.67,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.82,-5551.07 943.65,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/SubstitutedTranslation.ts -->
<g id="edge650" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/SubstitutedTranslation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M227.5,-4679.89C227.5,-4648.66 227.5,-4617.44 227.5,-4586.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="229.6,-4578.35 227.5,-4572.35 225.4,-4578.35 229.6,-4578.35"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="227.5,-4578.35 227.5,-4581.35 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="227.5" cy="-4583.75" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/ScrollableFullScreen.ts -->
<g id="edge647" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Base/ScrollableFullScreen.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4698.14C255.48,-4710.95 281.59,-4735.83 292,-4764 304.11,-4796.79 280.22,-7256.34 305,-7281 364.24,-7339.93 621.78,-7339.94 681,-7281 697.35,-7264.73 673.73,-5637.29 689,-5620 701.91,-5605.38 721.47,-5599.62 740.86,-5598.13"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="741,-5600.23 746.87,-5597.8 740.76,-5596.03 741,-5600.23"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/DeleteWizard.ts -->
<g id="edge651" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/DeleteWizard.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M274.26,-4680C290.16,-4676.87 308.18,-4673.33 324.82,-4670.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="332.92,-4670.6 338.41,-4667.38 332.11,-4666.48 332.92,-4670.6"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="332.52,-4668.54 329.58,-4669.12 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="327.22" cy="-4669.58" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/EditableTagRendering.ts -->
<g id="edge652" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/EditableTagRendering.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.83,-4698.04C255.42,-4708.3 280.8,-4724.8 305,-4734 306.79,-4734.68 308.62,-4735.33 310.47,-4735.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="317.62,-4740.25 323.96,-4739.93 318.8,-4736.22 317.62,-4740.25"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="318.21,-4738.23 315.33,-4737.39 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="313.03" cy="-4736.71" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/MoveWizard.ts -->
<g id="node188" class="node">
<title>UI/Popup/MoveWizard.ts</title>
<g id="a_node188"><a xlink:href="UI/Popup/MoveWizard.ts" xlink:title="MoveWizard.ts">
<path fill="#ddfeff" stroke="black" d="M417,-4698C417,-4698 347,-4698 347,-4698 344,-4698 341,-4695 341,-4692 341,-4692 341,-4686 341,-4686 341,-4683 344,-4680 347,-4680 347,-4680 417,-4680 417,-4680 420,-4680 423,-4683 423,-4686 423,-4686 423,-4692 423,-4692 423,-4695 420,-4698 417,-4698"/>
<text text-anchor="middle" x="382" y="-4686.8" font-family="Helvetica,sans-Serif" font-size="9.00">MoveWizard.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/MoveWizard.ts -->
<g id="edge653" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/MoveWizard.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M275.92,-4689C292.09,-4689 310.3,-4689 326.96,-4689"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="334.8,-4691.1 340.8,-4689 334.8,-4686.9 334.8,-4691.1"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="334.8,-4689 331.8,-4689 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="329.4" cy="-4689" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/QuestionBox.ts -->
<g id="node189" class="node">
<title>UI/Popup/QuestionBox.ts</title>
<g id="a_node189"><a xlink:href="UI/Popup/QuestionBox.ts" xlink:title="QuestionBox.ts">
<path fill="#ddfeff" stroke="black" d="M418,-4788C418,-4788 346,-4788 346,-4788 343,-4788 340,-4785 340,-4782 340,-4782 340,-4776 340,-4776 340,-4773 343,-4770 346,-4770 346,-4770 418,-4770 418,-4770 421,-4770 424,-4773 424,-4776 424,-4776 424,-4782 424,-4782 424,-4785 421,-4788 418,-4788"/>
<text text-anchor="middle" x="382" y="-4776.8" font-family="Helvetica,sans-Serif" font-size="9.00">QuestionBox.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/QuestionBox.ts -->
<g id="edge654" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/QuestionBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M234.9,-4698.1C246.74,-4714.19 273.74,-4747.52 305,-4764 311.53,-4767.45 318.76,-4770.1 326.09,-4772.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="333.37,-4776 339.69,-4775.3 334.32,-4771.9 333.37,-4776"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="333.84,-4773.95 330.92,-4773.27 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="328.58" cy="-4772.73" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts -->
<g id="node190" class="node">
<title>UI/Popup/SplitRoadWizard.ts</title>
<g id="a_node190"><a xlink:href="UI/Popup/SplitRoadWizard.ts" xlink:title="SplitRoadWizard.ts">
<path fill="#ddfeff" stroke="black" d="M426.5,-4728C426.5,-4728 337.5,-4728 337.5,-4728 334.5,-4728 331.5,-4725 331.5,-4722 331.5,-4722 331.5,-4716 331.5,-4716 331.5,-4713 334.5,-4710 337.5,-4710 337.5,-4710 426.5,-4710 426.5,-4710 429.5,-4710 432.5,-4713 432.5,-4716 432.5,-4716 432.5,-4722 432.5,-4722 432.5,-4725 429.5,-4728 426.5,-4728"/>
<text text-anchor="middle" x="382" y="-4716.8" font-family="Helvetica,sans-Serif" font-size="9.00">SplitRoadWizard.ts</text>
</a>
</g>
</g>
<!-- UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/SplitRoadWizard.ts -->
<g id="edge655" class="edge">
<title>UI/Popup/FeatureInfoBox.ts&#45;&gt;UI/Popup/SplitRoadWizard.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M274.26,-4698C288.97,-4700.89 305.49,-4704.15 321.06,-4707.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="328.72,-4710.86 335.01,-4709.95 329.53,-4706.73 328.72,-4710.86"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="329.13,-4708.8 326.18,-4708.22 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="323.83" cy="-4707.75" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge663" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.25,-4687.39C436.6,-4689.06 450.27,-4693.59 459,-4704 473.39,-4721.16 452.64,-5089.82 467,-5107 529.21,-5181.44 616,-5077.99 681,-5150 693.42,-5163.75 675.68,-5220.12 689,-5233 727.75,-5270.44 893.6,-5209.22 931,-5248 943.04,-5260.48 928.02,-5546.58 939,-5560 945.55,-5568 955.41,-5572.26 965.5,-5574.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.18,-5576.49 971.45,-5575.44 965.9,-5572.35 965.18,-5576.49"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts -->
<g id="edge657" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Logic/Actors/AvailableBaseLayers.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.22,-4690.59C436.57,-4688.92 450.25,-4684.39 459,-4674 470.92,-4659.85 453.76,-4353.93 467,-4341 535.06,-4274.56 613.69,-4273.8 681,-4341 703.77,-4363.73 667.74,-8949.85 689,-8974 701.89,-8988.64 721.44,-8994.41 740.84,-8995.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.74,-8997.99 746.85,-8996.22 740.97,-8993.8 740.74,-8997.99"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge661" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.34,-4690.69C436.71,-4689.03 450.36,-4684.48 459,-4674 470.73,-4659.77 458.1,-2035.15 467,-2019 521.41,-1920.31 621.36,-1978.62 681,-1883 689.52,-1869.34 677,-1821.74 689,-1811 769.14,-1739.27 837.61,-1757.64 931,-1811 1036.26,-1871.15 1037.48,-1929.07 1069.5,-2046 1093.79,-2134.72 1074.94,-8577.32 1082.5,-8669 1094.24,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge660" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.34,-4690.69C436.71,-4689.03 450.36,-4684.48 459,-4674 470.61,-4659.91 456.69,-2060.07 467,-2045 524.68,-1960.66 620.75,-2043.53 681,-1961 697.28,-1938.7 668.86,-1855.89 689,-1837 728.23,-1800.22 891.97,-1800 931,-1837 943.11,-1848.48 936.51,-1970.5 939,-1987 974.49,-2221.75 1040.08,-2269.41 1069.5,-2505 1072.85,-2531.84 1065.75,-10274.75 1082.5,-10296 1087.16,-10301.91 1093.72,-10305.74 1100.83,-10308.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.57,-10310.29 1106.91,-10309.91 1101.72,-10306.25 1100.57,-10310.29"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge658" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.34,-4690.69C436.71,-4689.03 450.36,-4684.48 459,-4674 481.39,-4646.85 446.26,-2168.43 467,-2140 528.49,-2055.7 856.54,-1994.9 931,-2068 948.09,-2084.78 923.71,-2480.57 939,-2499 976.82,-2544.58 1032.06,-2480.1 1069.5,-2526 1087.11,-2547.59 1069.15,-10524.55 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.27,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge666" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.22,-4687.41C436.57,-4689.08 450.25,-4693.61 459,-4704 470.92,-4718.15 454.17,-5023.67 467,-5037 538.64,-5111.44 858.23,-4992.67 931,-5066 953.89,-5089.06 917.7,-5187.46 939,-5212 944.27,-5218.07 951.49,-5221.81 959.21,-5224.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.87,-5226.1 965.2,-5225.44 959.84,-5222.02 958.87,-5226.1"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Svg.ts -->
<g id="edge662" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.34,-4690.69C436.7,-4689.02 450.36,-4684.48 459,-4674 479.02,-4649.73 448.97,-2434.78 467,-2409 525.11,-2325.92 610.9,-2403.25 681,-2330 689.07,-2321.57 679.58,-2311.88 689,-2305 775.87,-2241.59 854.29,-2229.61 931,-2305 940.13,-2313.98 937.07,-2753.34 939,-2766 951.27,-2846.36 984.79,-2938.34 998.52,-2973.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.71,-2975.03 1000.84,-2979.86 1000.62,-2973.5 996.71,-2975.03"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;Logic/Osm/Actions/ChangeLocationAction.ts -->
<g id="edge659" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;Logic/Osm/Actions/ChangeLocationAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.29,-4690.65C436.65,-4688.98 450.31,-4684.44 459,-4674 471.15,-4659.39 454.07,-4003.92 467,-3990 607.47,-3838.78 784.97,-3825.15 931,-3971 946.71,-3986.69 925.15,-10348.64 939,-10366 939.45,-10366.57 939.93,-10367.12 940.41,-10367.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="939.33,-10369.51 945.2,-10371.97 942.15,-10366.39 939.33,-10369.51"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge668" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.27,-4687.37C436.63,-4689.04 450.3,-4693.57 459,-4704 478.33,-4727.17 452.19,-5220.71 467,-5247 522.08,-5344.77 625.35,-5283.55 681,-5381 697.65,-5410.15 667.82,-5656.96 689,-5683 758.74,-5768.71 857.34,-5657.63 931,-5740 972.08,-5785.94 998.81,-6245.38 1003.69,-6335.65"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1001.6,-6335.85 1004.02,-6341.72 1005.79,-6335.62 1001.6,-6335.85"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge665" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.23,-4687.4C436.59,-4689.07 450.26,-4693.6 459,-4704 471.91,-4719.36 455.25,-5048.74 467,-5065 526.12,-5146.8 595.66,-5087.1 681,-5141 685.25,-5143.69 684.63,-5146.51 689,-5149 785.46,-5203.99 861.78,-5124.19 931,-5211 952.13,-5237.51 920.14,-5487.83 939,-5516 944.06,-5523.56 951.57,-5529.16 959.73,-5533.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.12,-5535.35 965.45,-5535.96 960.89,-5531.54 959.12,-5535.35"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge664" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.26,-4687.38C436.61,-4689.05 450.28,-4693.58 459,-4704 474.87,-4722.96 456.6,-5126.57 467,-5149 520.23,-5263.86 625.36,-5223.28 681,-5337 687.51,-5350.3 678.9,-5459.18 689,-5470 705.6,-5487.78 732.07,-5492.2 755.53,-5491.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.81,-5493.97 761.74,-5491.68 755.68,-5489.77 755.81,-5493.97"/>
</g>
<!-- UI/Popup/MoveWizard.ts&#45;&gt;UI/Input/LocationInput.ts -->
<g id="edge667" class="edge">
<title>UI/Popup/MoveWizard.ts&#45;&gt;UI/Input/LocationInput.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.33,-4687.32C436.69,-4688.99 450.34,-4693.53 459,-4704 471.06,-4718.59 453.92,-6053.31 467,-6067 483.45,-6084.21 664.43,-6060.9 681,-6078 696.77,-6094.28 673.87,-6469.12 689,-6486 703.22,-6501.86 725.27,-6507.24 746.34,-6508.07"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="754.31,-6510.13 760.3,-6508 754.29,-6505.93 754.31,-6510.13"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="754.3,-6508.03 751.3,-6508.04 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="748.9" cy="-6508.06" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge679" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.51,-4788.02C406.74,-4808.16 444.78,-4858.96 459,-4909 463.92,-4926.32 455.34,-5219.28 467,-5233 499.51,-5271.26 639.46,-5266.84 689,-5275 742.58,-5283.83 894.72,-5268.59 931,-5309 949.64,-5329.76 921.27,-5538.46 939,-5560 945.57,-5567.98 955.44,-5572.23 965.54,-5574.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.21,-5576.46 971.48,-5575.42 965.93,-5572.32 965.21,-5576.46"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge678" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M424.13,-4780.58C437.24,-4778.84 450.53,-4774.27 459,-4764 480.12,-4738.39 450.46,-2402.78 467,-2374 540.44,-2246.24 965.2,-1992.9 1069.5,-2097 1085.65,-2113.12 1080.62,-8646.26 1082.5,-8669 1094.24,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge682" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.46,-4788.04C406.6,-4808.2 444.45,-4859.05 459,-4909 465.59,-4931.63 450.9,-5103.78 467,-5121 608.6,-5272.5 778.41,-5029.58 931,-5170 944.98,-5182.87 925.62,-5198.51 939,-5212 944.53,-5217.57 951.72,-5221.11 959.3,-5223.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="958.83,-5225.34 965.16,-5224.71 959.82,-5221.26 958.83,-5225.34"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge681" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.48,-4788.03C406.65,-4808.19 444.57,-4859.02 459,-4909 466.46,-4934.85 450.54,-5129.72 467,-5151 598.56,-5321.08 799.27,-5118.05 931,-5288 946.53,-5308.04 924.8,-5495 939,-5516 944.09,-5523.53 951.62,-5529.13 959.78,-5533.28"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.18,-5535.32 965.5,-5535.93 960.94,-5531.5 959.18,-5535.32"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/Lazy.ts -->
<g id="edge680" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;UI/Base/Lazy.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M390.54,-4788.01C406.83,-4808.14 444.98,-4858.9 459,-4909 466.16,-4934.58 452.93,-5364.47 467,-5387 533.31,-5493.16 701.51,-5511.6 772.54,-5514.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="772.63,-5516.67 778.71,-5514.79 772.79,-5512.47 772.63,-5516.67"/>
</g>
<!-- UI/Popup/QuestionBox.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts -->
<g id="edge683" class="edge">
<title>UI/Popup/QuestionBox.ts&#45;&gt;UI/Popup/TagRenderingQuestion.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M424.23,-4776.61C445.03,-4775.41 470.96,-4773.91 495.32,-4772.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="503.56,-4774.12 509.43,-4771.68 503.32,-4769.93 503.56,-4774.12"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="503.44,-4772.03 500.44,-4772.2 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="498.05" cy="-4772.34" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge693" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.74,-4718.88C442.81,-4716.44 452.34,-4711.93 459,-4704 471.98,-4688.56 452.58,-4355.11 467,-4341 534.99,-4274.49 613.68,-4273.81 681,-4341 701.29,-4361.25 670.06,-8446.49 689,-8468 704.21,-8485.27 728.69,-8490.19 751.25,-8490.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.39,-8492.12 765.31,-8489.8 759.24,-8487.92 759.39,-8492.12"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.31,-8490.02 756.31,-8490.13 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="753.92" cy="-8490.21" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge697" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.75,-4719.1C442.82,-4721.54 452.35,-4726.06 459,-4734 473.81,-4751.67 452.42,-5131.14 467,-5149 528.65,-5224.5 614.24,-5125.97 681,-5197 696.41,-5213.4 672.34,-5231.87 689,-5247 728.9,-5283.21 893.57,-5223.24 931,-5262 942.5,-5273.91 928.51,-5547.19 939,-5560 945.55,-5568 955.41,-5572.26 965.51,-5574.4"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.19,-5576.48 971.46,-5575.44 965.91,-5572.34 965.19,-5576.48"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge700" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.76,-4719.1C442.83,-4721.54 452.35,-4726.06 459,-4734 474.8,-4752.87 453.06,-5156.71 467,-5177 592.99,-5360.4 803.79,-5182.44 931,-5365 947.21,-5388.26 920.99,-5598.11 939,-5620 946.95,-5629.67 959.75,-5633.86 971.92,-5635.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.03,-5637.6 978.21,-5636.11 972.45,-5633.42 972.03,-5637.6"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge692" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.85,-4718.97C442.91,-4716.53 452.41,-4711.99 459,-4704 481.62,-4676.57 445.04,-2171.97 467,-2144 527.51,-2066.93 608.6,-2157.03 681,-2091 689,-2083.71 680.18,-2074.27 689,-2068 776.66,-2005.68 823.45,-2067.61 931,-2068 992.56,-2068.22 1026.09,-2025.36 1069.5,-2069 1085.66,-2085.25 1080.62,-8646.16 1082.5,-8669 1094.24,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge690" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.84,-4718.97C442.91,-4716.53 452.41,-4711.99 459,-4704 469.3,-4691.52 460.96,-2389.01 467,-2374 520.36,-2241.29 557.52,-2197.33 689,-2141 787.86,-2098.64 854.16,-2065.74 931,-2141 946.24,-2155.93 930.3,-2505.52 939,-2525 971.37,-2597.5 1037.83,-2574.19 1069.5,-2647 1091.39,-2697.32 1056.2,-10500.84 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.27,-10575.39 1113.4,-10579.15"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge701" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.72,-4719.13C442.79,-4721.57 452.32,-4726.08 459,-4734 481.71,-4760.93 443.68,-5024.58 467,-5051 605.01,-5207.36 788.17,-4969.03 931,-5121 944.9,-5135.79 925.44,-5196.89 939,-5212 944.37,-5217.98 951.63,-5221.68 959.37,-5223.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.04,-5225.97 965.36,-5225.3 960,-5221.88 959.04,-5225.97"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge688" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.75,-4718.9C442.82,-4716.46 452.35,-4711.94 459,-4704 473.88,-4686.24 450.83,-4303.59 467,-4287 610.96,-4139.27 785.05,-4131.24 931,-4277 946.41,-4292.39 931.79,-10528.45 939,-10549 948.85,-10577.04 972.74,-10602.64 988.78,-10617.53"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="987.63,-10619.32 993.48,-10621.79 990.45,-10616.2 987.63,-10619.32"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;State.ts -->
<g id="edge694" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;State.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.84,-4718.97C442.91,-4716.53 452.41,-4711.99 459,-4704 469.26,-4691.57 461.23,-2398.05 467,-2383 518.12,-2249.54 605.77,-2264.51 681,-2143 686.04,-2134.86 681.07,-2128.37 689,-2123 778.06,-2062.7 854.19,-2047.71 931,-2123 938.98,-2130.82 937.32,-2513.96 939,-2525 950.63,-2601.47 980.89,-2688.45 995.86,-2728.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.76,-2736.86 1000.85,-2741.73 1000.69,-2735.37 996.76,-2736.86"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.72,-2736.12 997.66,-2733.31 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="996.81" cy="-2731.07" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts -->
<g id="edge689" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/FeatureSource/Sources/StaticFeatureSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.68,-4718.84C442.76,-4716.4 452.3,-4711.9 459,-4704 477.62,-4682.04 446.33,-4465.04 467,-4445 535.28,-4378.79 613.69,-4377.8 681,-4445 693.78,-4457.76 676.95,-9634.54 689,-9648 701.75,-9662.24 720.86,-9667.75 739.9,-9669.03"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.27,-9671.15 746.35,-9669.31 740.45,-9666.95 740.27,-9671.15"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Svg.ts -->
<g id="edge695" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.84,-4718.97C442.91,-4716.53 452.41,-4711.99 459,-4704 478.37,-4680.53 448.05,-2536.81 467,-2513 531.61,-2431.81 856.68,-2388.6 931,-2461 943.14,-2472.83 936.37,-2749.26 939,-2766 951.63,-2846.3 984.94,-2938.32 998.57,-2973.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="996.75,-2975.01 1000.87,-2979.85 1000.67,-2973.5 996.75,-2975.01"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/Osm/Actions/SplitAction.ts -->
<g id="edge691" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;Logic/Osm/Actions/SplitAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.57,-4711.22C441.48,-4709.26 450.6,-4706.87 459,-4704 462.76,-4702.71 463.13,-4700.91 467,-4700 559.57,-4678.15 613.7,-4632.79 681,-4700 694.92,-4713.9 676,-10351.23 689,-10366 706.56,-10385.95 736.5,-10389.42 761.56,-10388.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="761.98,-10390.12 767.81,-10387.6 761.68,-10385.93 761.98,-10390.12"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts -->
<g id="edge703" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/ShowDataLayer/ShowDataLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.77,-4719.09C442.84,-4721.53 452.36,-4726.05 459,-4734 476.56,-4755.02 450.66,-5205.01 467,-5227 531.56,-5313.87 866.9,-5287.79 931,-5375 942.8,-5391.05 933.74,-6789.79 939,-6809 948.61,-6844.07 972.14,-6879.44 988.22,-6900.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="991.52,-6908.45 996.87,-6911.89 994.83,-6905.87 991.52,-6908.45"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="993.18,-6907.16 991.33,-6904.79 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="989.86" cy="-6902.9" rx="2.4" ry="2.4"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Minimap.ts -->
<g id="edge698" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Minimap.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.79,-4719.08C442.85,-4721.52 452.37,-4726.04 459,-4734 480.23,-4759.48 445.3,-5305.92 467,-5331 530.02,-5403.82 614.67,-5295.18 681,-5365 704.09,-5389.3 665.56,-5416.03 689,-5440 708.72,-5460.16 741.18,-5462.86 766.75,-5461.12"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="766.95,-5463.21 772.76,-5460.62 766.61,-5459.02 766.95,-5463.21"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge702" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.83,-4719.04C442.9,-4721.48 452.4,-4726.02 459,-4734 471.11,-4748.64 456.81,-6085.96 467,-6102 523.5,-6190.94 624.29,-6115.2 681,-6204 692.29,-6221.68 674.09,-6944.25 689,-6959 765.46,-7034.65 854.12,-7034.22 931,-6959 938.31,-6951.85 937.53,-6601.12 939,-6591 951.6,-6504.13 985.48,-6403.92 998.91,-6366.31"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.97,-6366.78 1001.02,-6360.42 997.02,-6365.36 1000.97,-6366.78"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Button.ts -->
<g id="edge696" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/Button.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.78,-4719.08C442.85,-4721.52 452.37,-4726.05 459,-4734 479.25,-4758.28 447.07,-5278.46 467,-5303 528.45,-5378.66 615.1,-5279.18 681,-5351 698.89,-5370.5 670.23,-5391.35 689,-5410 709.87,-5430.74 744.27,-5432.81 770.2,-5430.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="770.49,-5432.78 776.27,-5430.12 770.09,-5428.6 770.49,-5432.78"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge699" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.79,-4719.07C442.86,-4721.51 452.37,-4726.04 459,-4734 480.97,-4760.38 443.83,-5326.66 467,-5352 499.26,-5387.28 647.52,-5339.87 681,-5374 695.99,-5389.28 674.21,-5454.52 689,-5470 705.81,-5487.59 732.28,-5492 755.7,-5491.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.96,-5493.81 761.9,-5491.53 755.84,-5489.61 755.96,-5493.81"/>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts -->
<g id="edge704" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;UI/ShowDataLayer/ShowDataMultiLayer.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.83,-4719.04C442.9,-4721.48 452.4,-4726.02 459,-4734 482.76,-4762.73 443.36,-6047.18 467,-6076 528.58,-6151.07 619.26,-6045.06 681,-6120 694.88,-6136.85 674.5,-6889.67 689,-6906 700.06,-6918.46 715.94,-6924.47 732.42,-6926.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.15,-6929.69 746.31,-6928.14 740.53,-6925.51 740.15,-6929.69"/>
<polyline fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.34,-6927.6 737.35,-6927.33 "/>
<ellipse fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" cx="734.96" cy="-6927.12" rx="2.4" ry="2.4"/>
</g>
<!-- assets/layers/split_point/split_point.json -->
<g id="node193" class="node">
<title>assets/layers/split_point/split_point.json</title>
<g id="a_node193"><a xlink:href="assets/layers/split_point/split_point.json" xlink:title="split_point.json">
<path fill="#ffee44" stroke="black" d="M1355.5,-3852C1355.5,-3852 1283.5,-3852 1283.5,-3852 1280.5,-3852 1277.5,-3849 1277.5,-3846 1277.5,-3846 1277.5,-3840 1277.5,-3840 1277.5,-3837 1280.5,-3834 1283.5,-3834 1283.5,-3834 1355.5,-3834 1355.5,-3834 1358.5,-3834 1361.5,-3837 1361.5,-3840 1361.5,-3840 1361.5,-3846 1361.5,-3846 1361.5,-3849 1358.5,-3852 1355.5,-3852"/>
<text text-anchor="middle" x="1319.5" y="-3840.8" font-family="Helvetica,sans-Serif" font-size="9.00">split_point.json</text>
</a>
</g>
</g>
<!-- UI/Popup/SplitRoadWizard.ts&#45;&gt;assets/layers/split_point/split_point.json -->
<g id="edge687" class="edge">
<title>UI/Popup/SplitRoadWizard.ts&#45;&gt;assets/layers/split_point/split_point.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.85,-4718.97C442.91,-4716.53 452.41,-4711.99 459,-4704 482.08,-4676.01 444.6,-2120.54 467,-2092 549.91,-1986.38 976.28,-1949.35 1069.5,-2046 1086.98,-2064.12 1080.66,-2473.89 1082.5,-2499 1119.58,-3004.26 1176.04,-3125.99 1216.5,-3631 1217.34,-3641.53 1217.76,-3812.86 1224.5,-3821 1235.83,-3834.68 1253.89,-3840.81 1271.16,-3843.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1271.27,-3845.41 1277.48,-3844.04 1271.77,-3841.24 1271.27,-3845.41"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge672" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.6,-4788.38C230.5,-4957.96 258.27,-7370.66 305,-7424 416.56,-7551.34 568.86,-7358.17 681,-7485 696.47,-7502.49 672.18,-7678.81 689,-7695 766.49,-7769.59 854.8,-7770.91 931,-7695 951.71,-7674.37 920.74,-5612.83 939,-5590 945.46,-5581.93 955.29,-5577.65 965.39,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.79,-5577.56 971.35,-5574.47 965.08,-5573.42 965.79,-5577.56"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge676" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.64,-4788.15C230.53,-4910.27 251.91,-6214.21 305,-6273 418.32,-6398.5 570.16,-6203.3 681,-6331 693.22,-6345.08 675.74,-6988.9 689,-7002 698.56,-7011.45 921.47,-7011.49 931,-7002 948.36,-6984.72 923.41,-5256.9 939,-5238 944.17,-5231.73 951.43,-5227.92 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.29,-5224.28 958.97,-5223.6 959.92,-5227.69"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts -->
<g id="edge669" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;Logic/Osm/Actions/ChangeTagAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M239.95,-4769.77C254.99,-4756.86 280.81,-4731.86 292,-4704 327.03,-4616.82 276.24,-4582.45 305,-4493 393.17,-4218.81 427.91,-4092.58 689,-3971 786.5,-3925.6 854.9,-3894.99 931,-3971 946.78,-3986.77 925.09,-10378.56 939,-10396 941.44,-10399.05 944.35,-10401.56 947.59,-10403.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.62,-10405.49 952.9,-10406.5 948.62,-10401.79 946.62,-10405.49"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge670" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4769.86C255.48,-4757.05 281.6,-4732.17 292,-4704 316.92,-4636.54 289.29,-2185.18 305,-2115 340.45,-1956.67 417.84,-1940.95 459,-1784 461.91,-1772.9 458.57,-1688.8 467,-1681 670.87,-1492.35 941.05,-1600.73 1069.5,-1847 1093.65,-1893.3 1050.17,-9324.99 1082.5,-9366 1089.56,-9374.95 1100.96,-9379.13 1112.08,-9380.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1111.98,-9383.03 1118.2,-9381.69 1112.51,-9378.86 1111.98,-9383.03"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge671" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.18,-4769.86C255.48,-4757.05 281.59,-4732.17 292,-4704 304.05,-4671.39 280.35,-2225.52 305,-2201 423.47,-2083.14 553.11,-2093.43 681,-2201 688.94,-2207.68 686.59,-2236.91 689,-2247 774.51,-2605.43 876.4,-2675.58 931,-3040 934.24,-3061.6 926.24,-9311.28 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.19,-9350.24 978.48,-9349.35 973,-9346.12 972.19,-9350.24"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge673" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.61,-4788.47C230.53,-4959.66 258.65,-7395.4 305,-7450 415.16,-7579.78 570.77,-7393.28 681,-7523 700.43,-7545.87 667.47,-7772.09 689,-7793 818.29,-7918.52 1000.45,-7819.44 1069.5,-7653 1090.61,-7602.12 1054.57,-5717.48 1082.5,-5670 1088.64,-5659.57 1099.15,-5651.99 1109.8,-5646.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1110.82,-5648.46 1115.35,-5644.01 1109.03,-5644.66 1110.82,-5648.46"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge677" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.6,-4788.18C230.45,-4954.21 257.53,-7316.39 305,-7367 352.66,-7417.81 881.49,-7452.02 931,-7403 939.01,-7395.06 937.45,-6602.17 939,-6591 951.09,-6504.05 985.27,-6403.89 998.84,-6366.3"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.9,-6366.78 1000.98,-6360.42 996.96,-6365.34 1000.9,-6366.78"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge675" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.6,-4788.33C230.39,-4957.06 256.68,-7357.64 305,-7409 362.48,-7470.11 623.29,-7382.1 681,-7443 697.82,-7460.76 671.39,-7646.02 689,-7663 766.42,-7737.66 854.8,-7738.91 931,-7663 951.69,-7642.39 920.75,-5582.81 939,-5560 940.68,-5557.9 942.59,-5556.06 944.67,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.82,-5551.07 943.65,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/Popup/MultiApply.ts&#45;&gt;UI/Base/SubtleButton.ts -->
<g id="edge674" class="edge">
<title>UI/Popup/MultiApply.ts&#45;&gt;UI/Base/SubtleButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.61,-4788.13C230.15,-4909.87 247.91,-6209.78 305,-6264 320.15,-6278.39 666.15,-6278.69 681,-6264 696.09,-6249.07 674.9,-5515.87 689,-5500 705.28,-5481.67 732,-5477.3 755.69,-5477.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="755.89,-5479.89 761.96,-5478.03 756.05,-5475.7 755.89,-5479.89"/>
</g>
<!-- UI/Popup/SaveButton.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge684" class="edge">
<title>UI/Popup/SaveButton.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M810.53,-4769.82C827.95,-4723.92 905.04,-4514.41 931,-4335 933.11,-4320.43 928.51,-3815.33 939,-3805 980.32,-3764.3 1028.43,-3764.04 1069.5,-3805 1081.46,-3816.93 1081.11,-8652.17 1082.5,-8669 1094.29,-8811.39 1129.96,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Popup/SaveButton.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge685" class="edge">
<title>UI/Popup/SaveButton.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.12,-4775.11C873.59,-4774.67 909.17,-4779.08 931,-4801 938.47,-4808.5 990.33,-5135.1 1002.12,-5209.86"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.07,-5210.33 1003.07,-5215.93 1004.22,-5209.68 1000.07,-5210.33"/>
</g>
<!-- UI/Popup/SaveButton.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge686" class="edge">
<title>UI/Popup/SaveButton.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M846.05,-4774.13C874.23,-4773.04 910.74,-4777.05 931,-4801 938.82,-4810.25 938.36,-5660.91 939,-5673 953.04,-5938.98 993.08,-6261.76 1002.5,-6335.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.47,-6336.17 1003.31,-6341.85 1004.63,-6335.63 1000.47,-6336.17"/>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge732" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M622.56,-5826.48C643.29,-5832.1 666.18,-5841.91 681,-5859 691.74,-5871.38 676.21,-5884.74 689,-5895 709.97,-5911.83 911.74,-5913.76 931,-5895 943.14,-5883.17 928.26,-5603.12 939,-5590 945.55,-5582 955.41,-5577.74 965.51,-5575.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.91,-5577.66 971.46,-5574.56 965.19,-5573.52 965.91,-5577.66"/>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge736" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M622.61,-5822.29C642.49,-5821.29 664.7,-5816.79 681,-5804 688.53,-5798.09 681.66,-5790.15 689,-5784 773.21,-5713.5 860.96,-5818.59 931,-5734 948.58,-5712.77 921.34,-5259.16 939,-5238 944.21,-5231.76 951.48,-5227.96 959.29,-5225.74"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.98,-5227.73 965.34,-5224.33 959.02,-5223.64 959.98,-5227.73"/>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge734" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M622.76,-5826.01C643.66,-5831.54 666.64,-5841.4 681,-5859 695.23,-5876.44 671.88,-5894.4 689,-5909 770.84,-5978.79 853.9,-5983.99 931,-5909 942.51,-5897.8 928.82,-5632.42 939,-5620 946.94,-5610.32 959.73,-5606.12 971.91,-5604.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.43,-5606.56 978.19,-5603.88 972.01,-5602.38 972.43,-5606.56"/>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge733" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M598.2,-5828.06C661.65,-5851.15 839.45,-5904.27 931,-5814 942.24,-5802.92 930.2,-5543.11 939,-5530 946.62,-5518.64 959.79,-5511.69 972.33,-5507.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.28,-5509.36 978.4,-5505.59 972.05,-5505.34 973.28,-5509.36"/>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge735" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M622.65,-5827.7C642.89,-5833.54 665.38,-5843.19 681,-5859 688.31,-5866.4 680.48,-5875.03 689,-5881 711.02,-5896.43 911.75,-5899.77 931,-5881 943.77,-5868.54 927.71,-5573.81 939,-5560 940.7,-5557.92 942.63,-5556.09 944.73,-5554.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.01,-5556.15 949.91,-5551.13 943.73,-5552.63 946.01,-5556.15"/>
</g>
<!-- UI/Reviews/SingleReview.ts -->
<g id="node195" class="node">
<title>UI/Reviews/SingleReview.ts</title>
<g id="a_node195"><a xlink:href="UI/Reviews/SingleReview.ts" xlink:title="SingleReview.ts">
<path fill="#ddfeff" stroke="black" d="M843,-5808C843,-5808 769,-5808 769,-5808 766,-5808 763,-5805 763,-5802 763,-5802 763,-5796 763,-5796 763,-5793 766,-5790 769,-5790 769,-5790 843,-5790 843,-5790 846,-5790 849,-5793 849,-5796 849,-5796 849,-5802 849,-5802 849,-5805 846,-5808 843,-5808"/>
<text text-anchor="middle" x="806" y="-5796.8" font-family="Helvetica,sans-Serif" font-size="9.00">SingleReview.ts</text>
</a>
</g>
</g>
<!-- UI/Reviews/ReviewElement.ts&#45;&gt;UI/Reviews/SingleReview.ts -->
<g id="edge737" class="edge">
<title>UI/Reviews/ReviewElement.ts&#45;&gt;UI/Reviews/SingleReview.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M622.66,-5814.86C661.87,-5811.45 717.22,-5806.63 756.64,-5803.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="757.02,-5805.28 762.82,-5802.67 756.66,-5801.1 757.02,-5805.28"/>
</g>
<!-- UI/Reviews/SingleReview.ts&#45;&gt;Utils.ts -->
<g id="edge748" class="edge">
<title>UI/Reviews/SingleReview.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M821.74,-5789.82C849.42,-5771.57 908.45,-5727.77 931,-5673 942.62,-5644.77 925.08,-3502.17 939,-3475 999.08,-3357.79 1108.15,-3296.11 1216.5,-3371 1304.29,-3431.68 1316.61,-3578.28 1318.26,-3625.83"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.17,-3625.93 1318.43,-3631.86 1320.36,-3625.81 1316.17,-3625.93"/>
</g>
<!-- UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge749" class="edge">
<title>UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M849.23,-5805.27C876.67,-5806.75 910.96,-5803.2 931,-5781 945.23,-5765.23 925.42,-5606.33 939,-5590 945.49,-5582.2 955.12,-5577.97 965.02,-5575.78"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.66,-5577.8 971.19,-5574.67 964.92,-5573.67 965.66,-5577.8"/>
</g>
<!-- UI/Reviews/SingleReview.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge752" class="edge">
<title>UI/Reviews/SingleReview.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M849.12,-5805.43C876.7,-5807.02 911.19,-5803.56 931,-5781 950.91,-5758.33 919.68,-5261.18 939,-5238 944.2,-5231.75 951.47,-5227.96 959.28,-5225.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.97,-5227.73 965.34,-5224.32 959.02,-5223.64 959.97,-5227.73"/>
</g>
<!-- UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge751" class="edge">
<title>UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M849.3,-5805.34C876.78,-5806.84 911.07,-5803.3 931,-5781 949.59,-5760.19 923.41,-5553.14 939,-5530 946.64,-5518.66 959.81,-5511.71 972.35,-5507.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.3,-5509.37 978.42,-5505.6 972.07,-5505.36 973.3,-5509.37"/>
</g>
<!-- UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge750" class="edge">
<title>UI/Reviews/SingleReview.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M849.26,-5797.61C873.82,-5795.66 904.96,-5791.16 931,-5781 1014.39,-5748.47 1097.36,-5678.08 1130.01,-5648.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1131.79,-5649.72 1134.81,-5644.13 1128.96,-5646.62 1131.79,-5649.72"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge740" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.6,-5785.38C637.15,-5785.59 662.84,-5789.51 681,-5804 688.81,-5810.23 680.78,-5819.33 689,-5825 777.56,-5886.03 853.66,-5899.75 931,-5825 949.79,-5806.84 922.37,-5610.15 939,-5590 945.58,-5582.03 955.45,-5577.78 965.55,-5575.63"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.94,-5577.69 971.5,-5574.59 965.22,-5573.55 965.94,-5577.69"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge738" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.53,-5792.01C638.46,-5791.31 665.55,-5785.93 681,-5767 704.14,-5738.65 666.01,-3160.48 689,-3132 758.16,-3046.32 860.24,-3163.35 931,-3079 945.01,-3062.3 923.28,-2898.09 939,-2883 980.84,-2842.83 1028.44,-2842.03 1069.5,-2883 1083.72,-2897.19 1080.85,-8648.98 1082.5,-8669 1094.26,-8811.4 1129.95,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge742" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.67,-5783.76C700.77,-5771.87 892.89,-5739.86 931,-5689 946.03,-5668.95 922.93,-5257.23 939,-5238 944.21,-5231.76 951.49,-5227.97 959.3,-5225.74"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.98,-5227.74 965.35,-5224.33 959.03,-5223.65 959.98,-5227.74"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;Svg.ts -->
<g id="edge739" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.53,-5792.01C638.45,-5791.3 665.55,-5785.93 681,-5767 691.98,-5753.55 680.21,-3281.97 689,-3267 751.48,-3160.61 865.3,-3235.43 931,-3131 945.71,-3107.63 921.56,-3028.41 939,-3007 947.06,-2997.1 960.03,-2992.35 972.3,-2990.17"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.61,-2992.25 978.24,-2989.3 972,-2988.09 972.61,-2992.25"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/Toggle.ts -->
<g id="edge746" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/Toggle.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.53,-5783.99C637.73,-5783.61 664.09,-5787.4 681,-5804 697.06,-5819.77 677.02,-5834.95 689,-5854 758.69,-5964.84 857.95,-5913.34 931,-6022 1000.86,-6125.91 1005.29,-6285.91 1004.86,-6335.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1002.75,-6335.93 1004.77,-6341.96 1006.95,-6335.99 1002.75,-6335.93"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge741" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.53,-5787.79C636.31,-5788.83 661.3,-5792.77 681,-5804 685.94,-5806.82 683.87,-5811.53 689,-5814 713.24,-5825.65 911.69,-5832.71 931,-5814 951.28,-5794.35 921.06,-5581.8 939,-5560 940.71,-5557.92 942.64,-5556.1 944.75,-5554.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="946.03,-5556.17 949.93,-5551.15 943.75,-5552.64 946.03,-5556.17"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/Checkboxes.ts -->
<g id="edge743" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/Checkboxes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.68,-5783.13C638.36,-5782.34 665.15,-5786.01 681,-5804 701.64,-5827.43 668.22,-6342.69 689,-6366 706.01,-6385.07 734.32,-6389.02 758.72,-6388.1"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="758.95,-6390.19 764.83,-6387.77 758.72,-6386 758.95,-6390.19"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/InputElement.ts -->
<g id="edge744" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/InputElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.65,-5783.38C638.18,-5782.72 664.82,-5786.43 681,-5804 691.4,-5815.3 684.4,-5927.35 689,-5942 750.59,-6138.06 849.89,-6147.18 931,-6336 936.45,-6348.68 935.41,-6352.68 939,-6366 961.97,-6451.15 989.97,-6553.15 1000.36,-6590.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="998.37,-6591.62 1001.98,-6596.85 1002.42,-6590.51 998.37,-6591.62"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/TextField.ts -->
<g id="edge745" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Input/TextField.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.71,-5783.1C638.41,-5782.3 665.2,-5785.97 681,-5804 697.88,-5823.26 672.01,-6706.84 689,-6726 707.9,-6747.31 740.91,-6749.77 766.89,-6747.64"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="767.23,-6749.72 773,-6747.05 766.82,-6745.54 767.23,-6749.72"/>
</g>
<!-- UI/Reviews/ReviewForm.ts&#45;&gt;UI/Popup/SaveButton.ts -->
<g id="edge747" class="edge">
<title>UI/Reviews/ReviewForm.ts&#45;&gt;UI/Popup/SaveButton.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M615.75,-5791.97C638.61,-5791.22 665.55,-5785.81 681,-5767 696.13,-5748.58 680.4,-4931.23 689,-4909 709.02,-4857.21 759.98,-4812.85 787.21,-4791.89"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="788.49,-4793.55 792,-4788.25 785.95,-4790.21 788.49,-4793.55"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge840" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M584.36,-7219.92C602.65,-7202.85 645.21,-7166.4 689,-7152 714.57,-7143.59 912.32,-7161.37 931,-7142 945.96,-7126.48 925.52,-5606.82 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.57 971.35,-5574.47 965.08,-5573.43 965.8,-5577.57"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Title.ts -->
<g id="edge845" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Title.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.24,-7222.72C710.87,-7209.07 920.91,-7176.95 931,-7165 938.47,-7156.15 938.4,-6342.57 939,-6331 953.19,-6056.87 993.43,-5723.85 1002.62,-5649.98"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.7,-5650.22 1003.36,-5644.01 1000.54,-5649.7 1004.7,-5650.22"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge847" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.94,-7238.26C590.85,-7264.88 629.34,-7341.52 689,-7370 843.37,-7443.7 968.47,-7450.04 1069.5,-7312 1076.25,-7302.78 1215.88,-5684.41 1216.5,-5673 1217.15,-5660.93 1216.48,-5247.04 1224.5,-5238 1239.17,-5221.47 1264.27,-5218.7 1284.84,-5219.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1284.93,-5221.91 1291.07,-5220.25 1285.24,-5217.72 1284.93,-5221.91"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge849" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M585.21,-7219.89C604.59,-7202.84 648.43,-7165.43 689,-7139 790.95,-7072.58 867.99,-7115.08 931,-7011 943.75,-6989.93 923.33,-5257 939,-5238 944.17,-5231.73 951.43,-5227.92 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.29,-5224.28 958.97,-5223.6 959.92,-5227.69"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;Svg.ts -->
<g id="edge839" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.15,-7220C593.43,-7175.85 659.83,-6977.63 681,-6809 683.66,-6787.78 678.77,-3748.78 689,-3730 750.35,-3617.42 868.97,-3685.2 931,-3573 945.52,-3546.74 924.69,-3059.37 939,-3033 946.77,-3018.67 961.47,-3008.16 974.98,-3001.01"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="976.25,-3002.72 980.67,-2998.15 974.37,-2998.96 976.25,-3002.72"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge837" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.15,-7220C593.42,-7175.85 659.82,-6977.63 681,-6809 682.32,-6798.5 681.51,-3768.47 689,-3761 727.08,-3723.02 892.94,-3723 931,-3761 944.11,-3774.09 927.44,-9081.52 939,-9096 945.51,-9104.16 955.47,-9108.44 965.67,-9110.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.41,-9112.66 971.68,-9111.59 966.11,-9108.52 965.41,-9112.66"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge842" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M587.17,-7219.85C607.19,-7205.39 648.83,-7177.7 689,-7166 714.87,-7158.47 912.5,-7170.58 931,-7151 945.6,-7135.54 925.7,-5636.6 939,-5620 946.96,-5610.06 960.04,-5605.87 972.42,-5604.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.64,-5606.42 978.42,-5603.78 972.25,-5602.24 972.64,-5606.42"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge841" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M580.17,-7238.12C594.08,-7261.64 634.98,-7324.08 689,-7347 849.96,-7415.3 986.29,-7400.79 1069.5,-7247 1089.6,-7209.86 1138.39,-5812.2 1143.98,-5650.25"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.07,-5650.31 1144.18,-5644.24 1141.88,-5650.16 1146.07,-5650.31"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;Logic/Web/Wikipedia.ts -->
<g id="edge838" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;Logic/Web/Wikipedia.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.15,-7220C593.41,-7175.85 659.78,-6977.63 681,-6809 683.2,-6791.55 676.55,-4289.41 689,-4277 765.17,-4201.07 854.88,-4201.01 931,-4277 942.92,-4288.9 928.5,-9112.84 939,-9126 945.15,-9133.7 954.37,-9137.95 963.97,-9140.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="963.68,-9142.28 969.97,-9141.34 964.47,-9138.15 963.68,-9142.28"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge848" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M583.98,-7238.2C601.94,-7255.88 644.41,-7294.06 689,-7308 740.33,-7324.05 890.68,-7343.59 931,-7308 941.75,-7298.51 934.59,-7257.64 939,-7244 976.14,-7129.22 1039.1,-7122.74 1069.5,-7006 1092.34,-6918.31 1064.5,-5463.81 1082.5,-5375 1093.12,-5322.62 1122.03,-5265.52 1136.31,-5239.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1138.21,-5240.35 1139.28,-5234.08 1134.53,-5238.31 1138.21,-5240.35"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge846" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M594.27,-7238.18C654.04,-7265.18 837.83,-7336.73 931,-7244 947.58,-7227.5 924.38,-5578.26 939,-5560 940.68,-5557.9 942.59,-5556.06 944.68,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.83,-5551.07 943.66,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Loading.ts -->
<g id="edge843" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/Loading.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.14,-7219.99C593.35,-7175.84 659.5,-6977.59 681,-6809 683.19,-6791.79 677.51,-5572.99 689,-5560 708.06,-5538.46 741.54,-5536.16 767.65,-5538.41"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="767.59,-5540.51 773.77,-5539.03 768.02,-5536.34 767.59,-5540.51"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/TabbedComponent.ts -->
<g id="edge844" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Base/TabbedComponent.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M578.14,-7219.99C593.32,-7175.84 659.4,-6977.58 681,-6809 684.67,-6780.34 678.81,-5796.03 689,-5769 709.13,-5715.61 760.98,-5669.25 788.02,-5647.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="789.34,-5649.39 792.76,-5644.03 786.75,-5646.08 789.34,-5649.39"/>
</g>
<!-- UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Wikipedia/WikidataPreviewBox.ts -->
<g id="edge850" class="edge">
<title>UI/Wikipedia/WikipediaBox.ts&#45;&gt;UI/Wikipedia/WikidataPreviewBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M618.26,-7229C652.72,-7229 701.5,-7229 740.55,-7229"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="740.74,-7231.1 746.74,-7229 740.74,-7226.9 740.74,-7231.1"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Utils.ts -->
<g id="edge816" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.08,-7219.72C834.58,-7186.31 906.95,-7068.32 931,-6959 935.73,-6937.49 929.64,-3806.94 939,-3787 971.1,-3718.59 1035,-3745.23 1069.5,-3678 1087.51,-3642.91 1053.61,-3527.85 1082.5,-3501 1126.13,-3460.46 1163.42,-3474 1216.5,-3501 1269.05,-3527.73 1300.93,-3595.63 1312.98,-3625.96"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1311.13,-3627 1315.26,-3631.84 1315.05,-3625.48 1311.13,-3627"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Combine.ts -->
<g id="edge817" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Combine.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M836.23,-7219.94C866.1,-7208.95 910.86,-7187.24 931,-7151 941.53,-7132.05 925.44,-5606.92 939,-5590 945.46,-5581.93 955.3,-5577.65 965.4,-5575.5"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.8,-5577.57 971.35,-5574.47 965.08,-5573.43 965.8,-5577.57"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge824" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M815.96,-7219.74C840.32,-7193.86 907.47,-7117.48 931,-7039 938.18,-7015.04 923.08,-5257.3 939,-5238 944.17,-5231.73 951.43,-5227.92 959.23,-5225.69"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="959.92,-5227.69 965.28,-5224.28 958.96,-5223.59 959.92,-5227.69"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts -->
<g id="edge813" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Logic/ImageProviders/WikimediaImageProvider.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M800.75,-7238.18C780.65,-7273.94 708.49,-7407.99 685,-7529 681.62,-7546.41 679.86,-8789.02 685,-8806 692.5,-8830.76 720.06,-8836.77 746.99,-8836.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="747.17,-8838.33 753.09,-8836.01 747.01,-8834.13 747.17,-8838.33"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Svg.ts -->
<g id="edge815" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Svg.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M813.08,-7219.72C834.58,-7186.31 906.95,-7068.32 931,-6959 940.54,-6915.62 937.07,-3805.37 939,-3761 952.31,-3455.76 993.57,-3084.41 1002.7,-3004.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1004.84,-3004.36 1003.44,-2998.16 1000.66,-3003.88 1004.84,-3004.36"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge814" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M812.5,-7238.2C833.21,-7273.49 906.65,-7404.15 931,-7523 935.39,-7544.4 925.34,-9078.95 939,-9096 945.52,-9104.14 955.48,-9108.43 965.68,-9110.56"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.43,-9112.64 971.69,-9111.57 966.13,-9108.5 965.43,-9112.64"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Link.ts -->
<g id="edge820" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Link.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M847.27,-7219.96C876.07,-7211.16 912.84,-7194.64 931,-7165 942.21,-7146.7 925.58,-5636.75 939,-5620 946.96,-5610.06 960.04,-5605.87 972.42,-5604.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.64,-5606.42 978.42,-5603.78 972.25,-5602.24 972.64,-5606.42"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Img.ts -->
<g id="edge819" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Img.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M815.96,-7219.74C840.3,-7193.86 907.43,-7117.47 931,-7039 937.03,-7018.93 927.52,-5547.54 939,-5530 946.56,-5518.45 959.88,-5511.46 972.54,-5507.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="973.16,-5509.26 978.29,-5505.51 971.94,-5505.24 973.16,-5509.26"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/FixedUiElement.ts -->
<g id="edge818" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/FixedUiElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M830.94,-7238.01C882.48,-7255.68 1004.51,-7287.95 1069.5,-7225 1099.39,-7196.05 1139.45,-5813.41 1144.06,-5650.6"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1146.17,-5650.22 1144.24,-5644.16 1141.97,-5650.1 1146.17,-5650.22"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge823" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M863.5,-7238C887.62,-7238.49 914.06,-7233.94 931,-7216 944.06,-7202.17 929.59,-7061.53 939,-7045 973.36,-6984.63 1036.31,-7020.02 1069.5,-6959 1090.52,-6920.35 1073.75,-5418.12 1082.5,-5375 1093.12,-5322.62 1122.03,-5265.53 1136.31,-5239.45"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1138.21,-5240.35 1139.28,-5234.08 1134.54,-5238.31 1138.21,-5240.35"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/VariableUIElement.ts -->
<g id="edge822" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/VariableUIElement.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M815.96,-7219.74C840.3,-7193.85 907.43,-7117.47 931,-7039 936.91,-7019.33 926.15,-5576.03 939,-5560 940.68,-5557.9 942.59,-5556.06 944.68,-5554.44"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="945.96,-5556.11 949.83,-5551.07 943.66,-5552.6 945.96,-5556.11"/>
</g>
<!-- UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Loading.ts -->
<g id="edge821" class="edge">
<title>UI/Wikipedia/WikidataPreviewBox.ts&#45;&gt;UI/Base/Loading.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M762.52,-7238.03C731.57,-7241.69 693.94,-7239.51 685,-7210 681.69,-7199.07 681.69,-5576.93 685,-5566 694.47,-5534.72 735.98,-5533.37 767.77,-5537.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="767.75,-5539.44 773.98,-5538.18 768.32,-5535.28 767.75,-5539.44"/>
</g>
<!-- assert -->
<g id="node201" class="node">
<title>assert</title>
<path fill="#ffffcc" stroke="grey" d="M595,-962C595,-962 553,-962 553,-962 550,-962 547,-959 547,-956 547,-956 547,-950 547,-950 547,-947 550,-944 553,-944 553,-944 595,-944 595,-944 598,-944 601,-947 601,-950 601,-950 601,-956 601,-956 601,-959 598,-962 595,-962"/>
<text text-anchor="middle" x="574" y="-950.8" font-family="Helvetica,sans-Serif" font-size="9.00" fill="grey">assert</text>
</g>
<!-- assets/layers/bike_repair_station/bike_repair_station.json -->
<g id="node202" class="node">
<title>assets/layers/bike_repair_station/bike_repair_station.json</title>
<g id="a_node202"><a xlink:href="assets/layers/bike_repair_station/bike_repair_station.json" xlink:title="bike_repair_station.json">
<path fill="#ffee44" stroke="black" d="M1374.5,-3792C1374.5,-3792 1264.5,-3792 1264.5,-3792 1261.5,-3792 1258.5,-3789 1258.5,-3786 1258.5,-3786 1258.5,-3780 1258.5,-3780 1258.5,-3777 1261.5,-3774 1264.5,-3774 1264.5,-3774 1374.5,-3774 1374.5,-3774 1377.5,-3774 1380.5,-3777 1380.5,-3780 1380.5,-3780 1380.5,-3786 1380.5,-3786 1380.5,-3789 1377.5,-3792 1374.5,-3792"/>
<text text-anchor="middle" x="1319.5" y="-3780.8" font-family="Helvetica,sans-Serif" font-size="9.00">bike_repair_station.json</text>
</a>
</g>
</g>
<!-- fs -->
<g id="node203" class="node">
<title>fs</title>
<path fill="#ffffcc" stroke="grey" d="M595,-48C595,-48 553,-48 553,-48 550,-48 547,-45 547,-42 547,-42 547,-36 547,-36 547,-33 550,-30 553,-30 553,-30 595,-30 595,-30 598,-30 601,-33 601,-36 601,-36 601,-42 601,-42 601,-45 598,-48 595,-48"/>
<text text-anchor="middle" x="574" y="-36.8" font-family="Helvetica,sans-Serif" font-size="9.00" fill="grey">fs</text>
</g>
<!-- https -->
<g id="node204" class="node">
<title>https</title>
<path fill="#ffffcc" stroke="grey" d="M595,-18C595,-18 553,-18 553,-18 550,-18 547,-15 547,-12 547,-12 547,-6 547,-6 547,-3 550,0 553,0 553,0 595,0 595,0 598,0 601,-3 601,-6 601,-6 601,-12 601,-12 601,-15 598,-18 595,-18"/>
<text text-anchor="middle" x="574" y="-6.8" font-family="Helvetica,sans-Serif" font-size="9.00" fill="grey">https</text>
</g>
<!-- scripts/ScriptUtils.ts -->
<g id="node205" class="node">
<title>scripts/ScriptUtils.ts</title>
<g id="a_node205"><a xlink:href="scripts/ScriptUtils.ts" xlink:title="ScriptUtils.ts">
<path fill="#ddfeff" stroke="black" d="M413,-50C413,-50 351,-50 351,-50 348,-50 345,-47 345,-44 345,-44 345,-38 345,-38 345,-35 348,-32 351,-32 351,-32 413,-32 413,-32 416,-32 419,-35 419,-38 419,-38 419,-44 419,-44 419,-47 416,-50 413,-50"/>
<text text-anchor="middle" x="382" y="-38.8" font-family="Helvetica,sans-Serif" font-size="9.00">ScriptUtils.ts</text>
</a>
</g>
</g>
<!-- scripts/ScriptUtils.ts&#45;&gt;Utils.ts -->
<g id="edge862" class="edge">
<title>scripts/ScriptUtils.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M419.27,-47.55C434.03,-49.97 451.28,-52.49 467,-54 616.64,-68.41 654.67,-67 805,-67 805,-67 805,-67 1006.5,-67 1100.1,-67 1151.9,-15.26 1216.5,-83 1282.09,-151.78 1315.83,-3375.69 1318.35,-3625.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.25,-3625.92 1318.41,-3631.9 1320.45,-3625.88 1316.25,-3625.92"/>
</g>
<!-- scripts/ScriptUtils.ts&#45;&gt;fs -->
<g id="edge863" class="edge">
<title>scripts/ScriptUtils.ts&#45;&gt;fs</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M419.18,-40.62C454.26,-40.25 506.96,-39.7 540.66,-39.34"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.75,-41.44 546.73,-39.28 540.7,-37.24 540.75,-41.44"/>
</g>
<!-- scripts/ScriptUtils.ts&#45;&gt;https -->
<g id="edge864" class="edge">
<title>scripts/ScriptUtils.ts&#45;&gt;https</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M419.3,-33.17C434.06,-30.11 451.31,-26.7 467,-24 491.67,-19.76 519.73,-15.83 540.78,-13.06"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="541.12,-15.13 546.8,-12.27 540.57,-10.97 541.12,-15.13"/>
</g>
<!-- test/Actors.spec.ts -->
<g id="node206" class="node">
<title>test/Actors.spec.ts</title>
<g id="a_node206"><a xlink:href="test/Actors.spec.ts" xlink:title="Actors.spec.ts">
<path fill="#ddfeff" stroke="black" d="M416,-1176C416,-1176 348,-1176 348,-1176 345,-1176 342,-1173 342,-1170 342,-1170 342,-1164 342,-1164 342,-1161 345,-1158 348,-1158 348,-1158 416,-1158 416,-1158 419,-1158 422,-1161 422,-1164 422,-1164 422,-1170 422,-1170 422,-1173 419,-1176 416,-1176"/>
<text text-anchor="middle" x="382" y="-1164.8" font-family="Helvetica,sans-Serif" font-size="9.00">Actors.spec.ts</text>
</a>
</g>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Utils.ts -->
<g id="edge871" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.07,-1168.76C435.8,-1167.22 450.03,-1162.73 459,-1152 475.68,-1132.05 452.78,-705.77 467,-684 558.83,-543.42 1100.24,-466.84 1216.5,-588 1328.99,-705.23 1319.58,-3396.23 1318.57,-3625.47"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.47,-3625.78 1318.54,-3631.79 1320.67,-3625.8 1316.47,-3625.78"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Customizations/AllKnownLayouts.ts -->
<g id="edge865" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Customizations/AllKnownLayouts.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.05,-1168.74C435.77,-1167.19 450,-1162.71 459,-1152 472.12,-1136.39 452.42,-799.26 467,-785 534.98,-718.48 613.66,-717.83 681,-785 688.94,-792.92 686.81,-4004 689,-4015 710.46,-4122.88 773.5,-4241.41 796.49,-4282.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="794.79,-4283.5 799.58,-4287.69 798.45,-4281.43 794.79,-4283.5"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge870" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.06,-1168.75C435.79,-1167.21 450.02,-1162.72 459,-1152 474.02,-1134.07 450.3,-747.38 467,-731 534.89,-664.39 599.27,-682.36 681,-731 836.56,-823.58 1024.81,-1271.58 1069.5,-1447 1094.26,-1544.2 1074.27,-8569.03 1082.5,-8669 1094.23,-8811.4 1129.94,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Logic/Actors/SelectedElementTagsUpdater.ts -->
<g id="edge866" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Logic/Actors/SelectedElementTagsUpdater.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.04,-1168.73C435.76,-1167.18 449.99,-1162.7 459,-1152 471.2,-1137.5 453.44,-824.24 467,-811 501.02,-777.77 647.36,-777.39 681,-811 701.2,-831.18 670.14,-9012.56 689,-9034 697.3,-9043.43 708.36,-9049.18 720.37,-9052.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="720.01,-9054.55 726.33,-9053.9 720.99,-9050.47 720.01,-9054.55"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Logic/Actors/SelectedFeatureHandler.ts -->
<g id="edge867" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Logic/Actors/SelectedFeatureHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.37,-1168.64C435.97,-1167.04 450.02,-1162.55 459,-1152 476.07,-1131.93 448.06,-933.31 467,-915 535.38,-848.89 613.71,-847.78 681,-915 701.02,-935 670.31,-9042.76 689,-9064 699.99,-9076.49 715.83,-9082.52 732.29,-9084.95"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="732.16,-9087.05 738.37,-9085.69 732.67,-9082.88 732.16,-9087.05"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Logic/ElementStorage.ts -->
<g id="edge868" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Logic/ElementStorage.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.35,-1168.62C435.95,-1167.02 450.01,-1162.54 459,-1152 474.45,-1133.9 449.86,-954.51 467,-938 535.5,-872.01 613.71,-870.78 681,-938 702.01,-958.99 669.29,-9468.79 689,-9491 703.77,-9507.64 727.18,-9512.59 749.11,-9512.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="749.27,-9514.92 755.25,-9512.76 749.23,-9510.72 749.27,-9514.92"/>
</g>
<!-- test/Actors.spec.ts&#45;&gt;Logic/State/UserRelatedState.ts -->
<g id="edge869" class="edge">
<title>test/Actors.spec.ts&#45;&gt;Logic/State/UserRelatedState.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M341.98,-1164.61C324.18,-1166.02 305.63,-1171.71 298.5,-1188 287.72,-1212.63 296.71,-8904.17 298.5,-8931 314.79,-9174.8 366.62,-9468.79 379.22,-9537.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="377.17,-9538.39 380.31,-9543.91 381.3,-9537.63 377.17,-9538.39"/>
</g>
<!-- test/TestHelper.ts -->
<g id="node207" class="node">
<title>test/TestHelper.ts</title>
<g id="a_node207"><a xlink:href="test/TestHelper.ts" xlink:title="TestHelper.ts">
<path fill="#ddfeff" stroke="black" d="M604.5,-1356C604.5,-1356 543.5,-1356 543.5,-1356 540.5,-1356 537.5,-1353 537.5,-1350 537.5,-1350 537.5,-1344 537.5,-1344 537.5,-1341 540.5,-1338 543.5,-1338 543.5,-1338 604.5,-1338 604.5,-1338 607.5,-1338 610.5,-1341 610.5,-1344 610.5,-1344 610.5,-1350 610.5,-1350 610.5,-1353 607.5,-1356 604.5,-1356"/>
<text text-anchor="middle" x="574" y="-1344.8" font-family="Helvetica,sans-Serif" font-size="9.00">TestHelper.ts</text>
</a>
</g>
</g>
<!-- test/Actors.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge872" class="edge">
<title>test/Actors.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M422.3,-1168.96C434.82,-1171.04 448.2,-1174.92 459,-1182 517.1,-1220.11 553.9,-1299.08 567.3,-1332.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="565.35,-1332.84 569.52,-1337.64 569.26,-1331.29 565.35,-1332.84"/>
</g>
<!-- test/GeoOperations.spec.ts -->
<g id="node208" class="node">
<title>test/GeoOperations.spec.ts</title>
<g id="a_node208"><a xlink:href="test/GeoOperations.spec.ts" xlink:title="GeoOperations.spec.ts">
<path fill="#ddfeff" stroke="black" d="M435,-1146C435,-1146 329,-1146 329,-1146 326,-1146 323,-1143 323,-1140 323,-1140 323,-1134 323,-1134 323,-1131 326,-1128 329,-1128 329,-1128 435,-1128 435,-1128 438,-1128 441,-1131 441,-1134 441,-1134 441,-1140 441,-1140 441,-1143 438,-1146 435,-1146"/>
<text text-anchor="middle" x="382" y="-1134.8" font-family="Helvetica,sans-Serif" font-size="9.00">GeoOperations.spec.ts</text>
</a>
</g>
</g>
<!-- test/GeoOperations.spec.ts&#45;&gt;Utils.ts -->
<g id="edge875" class="edge">
<title>test/GeoOperations.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M441.22,-1134.29C448.05,-1131.61 454.26,-1127.68 459,-1122 478.79,-1098.28 447.02,-589.56 467,-566 682.68,-311.72 983.28,-294.7 1216.5,-533 1274.43,-592.19 1315.04,-3395.09 1318.29,-3625.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.19,-3626.02 1318.38,-3631.99 1320.39,-3625.96 1316.19,-3626.02"/>
</g>
<!-- test/GeoOperations.spec.ts&#45;&gt;Logic/GeoOperations.ts -->
<g id="edge874" class="edge">
<title>test/GeoOperations.spec.ts&#45;&gt;Logic/GeoOperations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M441.2,-1134.26C448.03,-1131.6 454.25,-1127.67 459,-1122 473.99,-1104.11 450.34,-718.34 467,-702 534.89,-635.39 612.82,-635.69 681,-702 692.47,-713.16 684.57,-974.62 689,-990 747.58,-1193.33 862.59,-1199.77 931,-1400 1090.31,-1866.28 1038.26,-2008.24 1069.5,-2500 1071.27,-2527.89 1069.11,-10524.47 1082.5,-10549 1089.37,-10561.58 1102.07,-10570.8 1114.2,-10577.2"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1113.4,-10579.15 1119.71,-10579.94 1115.27,-10575.39 1113.4,-10579.15"/>
</g>
<!-- test/GeoOperations.spec.ts&#45;&gt;Logic/BBox.ts -->
<g id="edge873" class="edge">
<title>test/GeoOperations.spec.ts&#45;&gt;Logic/BBox.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M441.19,-1134.26C448.03,-1131.59 454.24,-1127.67 459,-1122 472.97,-1105.36 451.48,-746.21 467,-731 500.97,-697.72 647.31,-697.44 681,-731 691.48,-741.44 687.62,-2846.27 689,-2861 744.11,-3449.19 876.63,-3579.75 931,-4168 933.04,-4190.06 931.66,-10528.09 939,-10549 948.85,-10577.04 972.74,-10602.64 988.78,-10617.53"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="987.63,-10619.32 993.48,-10621.79 990.45,-10616.2 987.63,-10619.32"/>
</g>
<!-- test/GeoOperations.spec.ts&#45;&gt;assert -->
<g id="edge877" class="edge">
<title>test/GeoOperations.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M441.03,-1134.12C447.89,-1131.47 454.16,-1127.59 459,-1122 481.58,-1095.93 443.6,-992.34 467,-967 485.15,-947.34 516.46,-945.38 540.36,-947.42"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.39,-949.54 546.57,-948.05 540.82,-945.36 540.39,-949.54"/>
</g>
<!-- test/GeoOperations.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge876" class="edge">
<title>test/GeoOperations.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M441.18,-1143.07C447.53,-1145.27 453.63,-1148.18 459,-1152 524.25,-1198.41 557.94,-1294.84 568.9,-1331.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="566.9,-1332.62 570.58,-1337.8 570.93,-1331.45 566.9,-1332.62"/>
</g>
<!-- test/ImageAttribution.spec.ts -->
<g id="node209" class="node">
<title>test/ImageAttribution.spec.ts</title>
<g id="a_node209"><a xlink:href="test/ImageAttribution.spec.ts" xlink:title="ImageAttribution.spec.ts">
<path fill="#ddfeff" stroke="black" d="M440.5,-1086C440.5,-1086 323.5,-1086 323.5,-1086 320.5,-1086 317.5,-1083 317.5,-1080 317.5,-1080 317.5,-1074 317.5,-1074 317.5,-1071 320.5,-1068 323.5,-1068 323.5,-1068 440.5,-1068 440.5,-1068 443.5,-1068 446.5,-1071 446.5,-1074 446.5,-1074 446.5,-1080 446.5,-1080 446.5,-1083 443.5,-1086 440.5,-1086"/>
<text text-anchor="middle" x="382" y="-1074.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImageAttribution.spec.ts</text>
</a>
</g>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts -->
<g id="edge879" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;Models/ThemeConfig/LayerConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M446.59,-1071.75C451.28,-1069.3 455.52,-1066.11 459,-1062 478.89,-1038.5 444.92,-806.46 467,-785 535.22,-718.72 613.71,-717.78 681,-785 699.87,-803.85 671.38,-8447.97 689,-8468 706,-8487.32 734.61,-8491.19 759.16,-8490.17"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="759.43,-8492.25 765.3,-8489.81 759.19,-8488.06 759.43,-8492.25"/>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;Utils.ts -->
<g id="edge881" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M446.67,-1071.82C451.34,-1069.35 455.56,-1066.14 459,-1062 472,-1046.36 454.32,-345.9 467,-330 563.32,-209.23 650.52,-249 805,-249 805,-249 805,-249 1006.5,-249 1113.34,-249 1160.95,-274.74 1216.5,-366 1307.25,-515.08 1317.75,-3389.02 1318.46,-3625.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.36,-3625.77 1318.48,-3631.77 1320.56,-3625.76 1316.36,-3625.77"/>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge880" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M446.65,-1071.81C451.33,-1069.34 455.55,-1066.13 459,-1062 478.12,-1039.09 445.75,-545.94 467,-525 534.75,-458.25 599.6,-475.8 681,-525 998.9,-717.15 979.83,-904.53 1069.5,-1265 1079.98,-1307.12 1080.8,-4346.63 1082.5,-4390 1095.5,-4722.01 1134.71,-5126.81 1142.97,-5209.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.9,-5210.19 1143.59,-5215.96 1145.08,-5209.78 1140.9,-5210.19"/>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;assert -->
<g id="edge883" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M446.71,-1071.36C451.31,-1068.97 455.5,-1065.91 459,-1062 473.13,-1046.21 452.38,-982.33 467,-967 485.46,-947.64 516.73,-945.64 540.54,-947.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.55,-949.7 546.73,-948.2 540.96,-945.52 540.55,-949.7"/>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;assets/layers/bike_repair_station/bike_repair_station.json -->
<g id="edge878" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;assets/layers/bike_repair_station/bike_repair_station.json</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M446.66,-1071.81C451.33,-1069.34 455.56,-1066.13 459,-1062 469.37,-1049.56 455.47,-490.37 467,-479 614.67,-333.34 763.95,-406.05 931,-529 1034.56,-605.22 1032.45,-659.87 1069.5,-783 1290.2,-1516.41 1181.16,-1734.91 1216.5,-2500 1217.98,-2532.08 1214.34,-3625.54 1224.5,-3656 1240.39,-3703.61 1281.59,-3748.05 1303.8,-3769.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1302.44,-3771.13 1308.23,-3773.75 1305.34,-3768.09 1302.44,-3771.13"/>
</g>
<!-- test/ImageAttribution.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge882" class="edge">
<title>test/ImageAttribution.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M446.52,-1084.51C450.99,-1086.52 455.21,-1088.98 459,-1092 538.73,-1155.51 564.39,-1286.66 571.02,-1331.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="568.97,-1332.1 571.89,-1337.75 573.13,-1331.51 568.97,-1332.1"/>
</g>
<!-- test/ImageProvider.spec.ts -->
<g id="node210" class="node">
<title>test/ImageProvider.spec.ts</title>
<g id="a_node210"><a xlink:href="test/ImageProvider.spec.ts" xlink:title="ImageProvider.spec.ts">
<path fill="#ddfeff" stroke="black" d="M434,-996C434,-996 330,-996 330,-996 327,-996 324,-993 324,-990 324,-990 324,-984 324,-984 324,-981 327,-978 330,-978 330,-978 434,-978 434,-978 437,-978 440,-981 440,-984 440,-984 440,-990 440,-990 440,-993 437,-996 434,-996"/>
<text text-anchor="middle" x="382" y="-984.8" font-family="Helvetica,sans-Serif" font-size="9.00">ImageProvider.spec.ts</text>
</a>
</g>
</g>
<!-- test/ImageProvider.spec.ts&#45;&gt;Utils.ts -->
<g id="edge886" class="edge">
<title>test/ImageProvider.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.18,-977.82C385.02,-889.43 401.61,-191.26 467,-130 521.84,-78.62 729.85,-119 805,-119 805,-119 805,-119 1006.5,-119 1100.34,-119 1152.69,-72.19 1216.5,-141 1280.04,-209.51 1315.64,-3376.89 1318.33,-3625.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.24,-3625.78 1318.4,-3631.76 1320.44,-3625.74 1316.24,-3625.78"/>
</g>
<!-- test/ImageProvider.spec.ts&#45;&gt;Logic/UIEventSource.ts -->
<g id="edge885" class="edge">
<title>test/ImageProvider.spec.ts&#45;&gt;Logic/UIEventSource.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.43,-977.73C387.16,-900.32 414.81,-363.06 467,-317 538.31,-254.07 600.21,-266.81 681,-317 1012.01,-522.63 980.52,-723.62 1069.5,-1103 1093.5,-1205.31 1073.88,-8564.27 1082.5,-8669 1094.22,-8811.4 1129.94,-8981.03 1141.12,-9031.88"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1139.13,-9032.59 1142.47,-9038 1143.23,-9031.69 1139.13,-9032.59"/>
</g>
<!-- test/ImageProvider.spec.ts&#45;&gt;Logic/ImageProviders/AllImageProviders.ts -->
<g id="edge884" class="edge">
<title>test/ImageProvider.spec.ts&#45;&gt;Logic/ImageProviders/AllImageProviders.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M323.81,-987.85C312.75,-991.2 303.18,-997.32 298.5,-1008 289.25,-1029.12 297.67,-7623.96 298.5,-7647 315.37,-8117.66 370.54,-8693.4 380.46,-8794.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="378.4,-8794.94 381.08,-8800.7 382.58,-8794.52 378.4,-8794.94"/>
</g>
<!-- test/ImageProvider.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge887" class="edge">
<title>test/ImageProvider.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M440.11,-991.3C447.03,-993.75 453.56,-997.19 459,-1002 561.49,-1092.48 572.15,-1277.03 573.01,-1331.52"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="570.91,-1331.81 573.07,-1337.78 575.11,-1331.76 570.91,-1331.81"/>
</g>
<!-- test/LegacyThemeLoader.spec.ts -->
<g id="node211" class="node">
<title>test/LegacyThemeLoader.spec.ts</title>
<g id="a_node211"><a xlink:href="test/LegacyThemeLoader.spec.ts" xlink:title="LegacyThemeLoader.spec.ts">
<path fill="#ddfeff" stroke="black" d="M448,-1386C448,-1386 316,-1386 316,-1386 313,-1386 310,-1383 310,-1380 310,-1380 310,-1374 310,-1374 310,-1371 313,-1368 316,-1368 316,-1368 448,-1368 448,-1368 451,-1368 454,-1371 454,-1374 454,-1374 454,-1380 454,-1380 454,-1383 451,-1386 448,-1386"/>
<text text-anchor="middle" x="382" y="-1374.8" font-family="Helvetica,sans-Serif" font-size="9.00">LegacyThemeLoader.spec.ts</text>
</a>
</g>
</g>
<!-- test/LegacyThemeLoader.spec.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts -->
<g id="edge888" class="edge">
<title>test/LegacyThemeLoader.spec.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M453.01,-1386.2C455.19,-1387.9 457.21,-1389.82 459,-1392 465.91,-1400.39 466.28,-7642.15 467,-7653 488.24,-7971.85 555.78,-8357.59 570.25,-8437.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="568.21,-8438.43 571.34,-8443.96 572.34,-8437.68 568.21,-8438.43"/>
</g>
<!-- test/LegacyThemeLoader.spec.ts&#45;&gt;Models/ThemeConfig/LegacyJsonConvert.ts -->
<g id="edge889" class="edge">
<title>test/LegacyThemeLoader.spec.ts&#45;&gt;Models/ThemeConfig/LegacyJsonConvert.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M453.01,-1386.2C455.19,-1387.9 457.21,-1389.82 459,-1392 474.61,-1410.97 450.88,-8449.46 467,-8468 477.92,-8480.55 494.16,-8486.16 510.66,-8488.15"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="510.58,-8490.25 516.75,-8488.72 510.97,-8486.07 510.58,-8490.25"/>
</g>
<!-- test/LegacyThemeLoader.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge890" class="edge">
<title>test/LegacyThemeLoader.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M440.01,-1368C469.38,-1363.36 504.54,-1357.81 531.34,-1353.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="531.67,-1355.65 537.27,-1352.64 531.01,-1351.5 531.67,-1355.65"/>
</g>
<!-- test/OsmObject.spec.ts -->
<g id="node212" class="node">
<title>test/OsmObject.spec.ts</title>
<g id="a_node212"><a xlink:href="test/OsmObject.spec.ts" xlink:title="OsmObject.spec.ts">
<path fill="#ddfeff" stroke="black" d="M426.5,-1356C426.5,-1356 337.5,-1356 337.5,-1356 334.5,-1356 331.5,-1353 331.5,-1350 331.5,-1350 331.5,-1344 331.5,-1344 331.5,-1341 334.5,-1338 337.5,-1338 337.5,-1338 426.5,-1338 426.5,-1338 429.5,-1338 432.5,-1341 432.5,-1344 432.5,-1344 432.5,-1350 432.5,-1350 432.5,-1353 429.5,-1356 426.5,-1356"/>
<text text-anchor="middle" x="382" y="-1344.8" font-family="Helvetica,sans-Serif" font-size="9.00">OsmObject.spec.ts</text>
</a>
</g>
</g>
<!-- test/OsmObject.spec.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge891" class="edge">
<title>test/OsmObject.spec.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M425.11,-1337.98C438.44,-1335.53 453.28,-1333.22 467,-1332 561.74,-1323.61 595.61,-1290.11 681,-1332 938.41,-1458.27 981.16,-1574.24 1069.5,-1847 1078.54,-1874.91 1064.34,-10272.96 1082.5,-10296 1087.16,-10301.91 1093.72,-10305.74 1100.83,-10308.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.57,-10310.29 1106.91,-10309.91 1101.72,-10306.25 1100.57,-10310.29"/>
</g>
<!-- test/OsmObject.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge892" class="edge">
<title>test/OsmObject.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.92,-1347C463.51,-1347 502.22,-1347 531.19,-1347"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="531.21,-1349.1 537.21,-1347 531.21,-1344.9 531.21,-1349.1"/>
</g>
<!-- test/RelationSplitHandler.spec.ts -->
<g id="node213" class="node">
<title>test/RelationSplitHandler.spec.ts</title>
<g id="a_node213"><a xlink:href="test/RelationSplitHandler.spec.ts" xlink:title="RelationSplitHandler.spec.ts">
<path fill="#ddfeff" stroke="black" d="M447,-1116C447,-1116 317,-1116 317,-1116 314,-1116 311,-1113 311,-1110 311,-1110 311,-1104 311,-1104 311,-1101 314,-1098 317,-1098 317,-1098 447,-1098 447,-1098 450,-1098 453,-1101 453,-1104 453,-1104 453,-1110 453,-1110 453,-1113 450,-1116 447,-1116"/>
<text text-anchor="middle" x="382" y="-1104.8" font-family="Helvetica,sans-Serif" font-size="9.00">RelationSplitHandler.spec.ts</text>
</a>
</g>
</g>
<!-- test/RelationSplitHandler.spec.ts&#45;&gt;Utils.ts -->
<g id="edge896" class="edge">
<title>test/RelationSplitHandler.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452.98,-1097.78C455.17,-1096.09 457.19,-1094.17 459,-1092 471.31,-1077.2 454.41,-413.56 467,-399 566.17,-284.32 653.39,-353 805,-353 805,-353 805,-353 1006.5,-353 1058.42,-353 1202.26,-406.14 1216.5,-426 1316.37,-565.23 1318.5,-3393.05 1318.5,-3625.79"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.4,-3625.91 1318.5,-3631.91 1320.6,-3625.92 1316.4,-3625.91"/>
</g>
<!-- test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/OsmObject.ts -->
<g id="edge895" class="edge">
<title>test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/OsmObject.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452.97,-1097.76C455.16,-1096.08 457.19,-1094.17 459,-1092 476.42,-1071.15 447.63,-622.05 467,-603 534.8,-536.3 611.92,-537.62 681,-603 692.72,-614.09 684.74,-732.44 689,-748 750.58,-972.69 858.22,-991.68 931,-1213 938.17,-1234.8 932.19,-1242.09 939,-1264 978.81,-1392.04 1039.66,-1405.28 1069.5,-1536 1076.27,-1565.65 1063.67,-10272.11 1082.5,-10296 1087.16,-10301.91 1093.71,-10305.74 1100.83,-10308.18"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1100.57,-10310.29 1106.91,-10309.91 1101.72,-10306.25 1100.57,-10310.29"/>
</g>
<!-- test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/Actions/RelationSplitHandler.ts -->
<g id="edge893" class="edge">
<title>test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/Actions/RelationSplitHandler.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452.64,-1097.99C454.96,-1096.25 457.1,-1094.27 459,-1092 472.76,-1075.61 451.72,-721.97 467,-707 500.97,-673.72 647.25,-673.49 681,-707 692.15,-718.07 688.01,-1822.32 689,-1838 746.08,-2743.49 876.57,-2959.35 931,-3865 931.67,-3876.22 931.86,-10329.32 939,-10338 939.8,-10338.97 940.65,-10339.89 941.55,-10340.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="940.37,-10342.49 946.37,-10344.59 942.98,-10339.21 940.37,-10342.49"/>
</g>
<!-- test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/Changes.ts -->
<g id="edge894" class="edge">
<title>test/RelationSplitHandler.spec.ts&#45;&gt;Logic/Osm/Changes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M452.56,-1097.92C454.9,-1096.2 457.06,-1094.24 459,-1092 470.22,-1079.05 454.57,-949.8 467,-938 535.98,-872.51 613.72,-870.78 681,-938 692.31,-949.3 682.74,-10134.28 689,-10149 708.3,-10194.41 756.01,-10230.38 783.86,-10248.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="782.96,-10250.3 789.15,-10251.74 785.21,-10246.75 782.96,-10250.3"/>
</g>
<!-- test/RelationSplitHandler.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge897" class="edge">
<title>test/RelationSplitHandler.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M449.33,-1116.09C452.74,-1117.77 456,-1119.73 459,-1122 531.56,-1176.97 561.45,-1291.03 570.12,-1331.97"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="568.07,-1332.43 571.33,-1337.89 572.19,-1331.59 568.07,-1332.43"/>
</g>
<!-- test/ReplaceGeometry.spec.ts -->
<g id="node214" class="node">
<title>test/ReplaceGeometry.spec.ts</title>
<g id="a_node214"><a xlink:href="test/ReplaceGeometry.spec.ts" xlink:title="ReplaceGeometry.spec.ts">
<path fill="#ddfeff" stroke="black" d="M441,-1026C441,-1026 323,-1026 323,-1026 320,-1026 317,-1023 317,-1020 317,-1020 317,-1014 317,-1014 317,-1011 320,-1008 323,-1008 323,-1008 441,-1008 441,-1008 444,-1008 447,-1011 447,-1014 447,-1014 447,-1020 447,-1020 447,-1023 444,-1026 441,-1026"/>
<text text-anchor="middle" x="382" y="-1014.8" font-family="Helvetica,sans-Serif" font-size="9.00">ReplaceGeometry.spec.ts</text>
</a>
</g>
</g>
<!-- test/ReplaceGeometry.spec.ts&#45;&gt;Utils.ts -->
<g id="edge898" class="edge">
<title>test/ReplaceGeometry.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M447.03,-1011.64C451.56,-1009.19 455.65,-1006.04 459,-1002 473.97,-983.96 450.66,-174.82 467,-158 519.38,-104.09 729.83,-145 805,-145 805,-145 805,-145 1006.5,-145 1103.45,-145 1156.81,-127.61 1216.5,-204 1329.44,-348.54 1319.53,-3384.66 1318.56,-3625.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.46,-3625.85 1318.54,-3631.86 1320.66,-3625.87 1316.46,-3625.85"/>
</g>
<!-- test/ReplaceGeometry.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge899" class="edge">
<title>test/ReplaceGeometry.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M447.14,-1024.38C451.41,-1026.43 455.43,-1028.93 459,-1032 553.83,-1113.38 569.78,-1280.04 572.46,-1331.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="570.37,-1331.83 572.75,-1337.73 574.57,-1331.64 570.37,-1331.83"/>
</g>
<!-- test/SplitAction.spec.ts -->
<g id="node215" class="node">
<title>test/SplitAction.spec.ts</title>
<g id="a_node215"><a xlink:href="test/SplitAction.spec.ts" xlink:title="SplitAction.spec.ts">
<path fill="#ddfeff" stroke="black" d="M426,-1296C426,-1296 338,-1296 338,-1296 335,-1296 332,-1293 332,-1290 332,-1290 332,-1284 332,-1284 332,-1281 335,-1278 338,-1278 338,-1278 426,-1278 426,-1278 429,-1278 432,-1281 432,-1284 432,-1284 432,-1290 432,-1290 432,-1293 429,-1296 426,-1296"/>
<text text-anchor="middle" x="382" y="-1284.8" font-family="Helvetica,sans-Serif" font-size="9.00">SplitAction.spec.ts</text>
</a>
</g>
</g>
<!-- test/SplitAction.spec.ts&#45;&gt;Utils.ts -->
<g id="edge902" class="edge">
<title>test/SplitAction.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.02,-1286.7C442.25,-1284.29 452.03,-1279.84 459,-1272 474.25,-1254.84 451.34,-1185.79 467,-1169 570.59,-1057.96 653.14,-1119 805,-1119 805,-1119 805,-1119 1006.5,-1119 1100.34,-1119 1152.29,-1072.57 1216.5,-1141 1307.15,-1237.61 1317.66,-3420.8 1318.45,-3625.62"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.35,-3625.83 1318.47,-3631.83 1320.55,-3625.82 1316.35,-3625.83"/>
</g>
<!-- test/SplitAction.spec.ts&#45;&gt;Logic/Osm/Actions/SplitAction.ts -->
<g id="edge900" class="edge">
<title>test/SplitAction.spec.ts&#45;&gt;Logic/Osm/Actions/SplitAction.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M430.92,-1296.08C440.25,-1297.95 449.94,-1299.98 459,-1302 462.58,-1302.8 463.4,-1303.32 467,-1304 514.12,-1312.94 649.35,-1295.97 681,-1332 701.7,-1355.57 668.28,-10342.45 689,-10366 706.56,-10385.96 736.49,-10389.43 761.55,-10388.05"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="761.97,-10390.13 767.81,-10387.6 761.67,-10385.94 761.97,-10390.13"/>
</g>
<!-- test/SplitAction.spec.ts&#45;&gt;Logic/Osm/Changes.ts -->
<g id="edge901" class="edge">
<title>test/SplitAction.spec.ts&#45;&gt;Logic/Osm/Changes.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.13,-1282.99C508.01,-1278 648.41,-1273.95 681,-1309 691.45,-1320.24 683,-10134.88 689,-10149 708.3,-10194.41 756.01,-10230.38 783.86,-10248.38"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="782.96,-10250.3 789.15,-10251.74 785.21,-10246.75 782.96,-10250.3"/>
</g>
<!-- test/SplitAction.spec.ts&#45;&gt;assert -->
<g id="edge904" class="edge">
<title>test/SplitAction.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M432.32,-1286.96C442.53,-1284.54 452.23,-1280.02 459,-1272 480.87,-1246.09 444.32,-992.2 467,-967 485.01,-946.99 516.64,-945.16 540.67,-947.33"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.73,-949.45 546.92,-948 541.18,-945.27 540.73,-949.45"/>
</g>
<!-- test/SplitAction.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge903" class="edge">
<title>test/SplitAction.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M432.07,-1288.71C441.93,-1291.11 451.54,-1295.21 459,-1302 468.25,-1310.43 457.64,-1320.7 467,-1329 484.29,-1344.33 509.64,-1349.04 531.21,-1349.82"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="531.44,-1351.93 537.48,-1349.95 531.52,-1347.73 531.44,-1351.93"/>
</g>
<!-- test/Tag.spec.ts -->
<g id="node216" class="node">
<title>test/Tag.spec.ts</title>
<g id="a_node216"><a xlink:href="test/Tag.spec.ts" xlink:title="Tag.spec.ts">
<path fill="#ddfeff" stroke="black" d="M409.5,-1056C409.5,-1056 354.5,-1056 354.5,-1056 351.5,-1056 348.5,-1053 348.5,-1050 348.5,-1050 348.5,-1044 348.5,-1044 348.5,-1041 351.5,-1038 354.5,-1038 354.5,-1038 409.5,-1038 409.5,-1038 412.5,-1038 415.5,-1041 415.5,-1044 415.5,-1044 415.5,-1050 415.5,-1050 415.5,-1053 412.5,-1056 409.5,-1056"/>
<text text-anchor="middle" x="382" y="-1044.8" font-family="Helvetica,sans-Serif" font-size="9.00">Tag.spec.ts</text>
</a>
</g>
</g>
<!-- test/Tag.spec.ts&#45;&gt;Utils.ts -->
<g id="edge913" class="edge">
<title>test/Tag.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.83,-1049.31C431.35,-1048.49 448.69,-1044.42 459,-1032 473.53,-1014.49 451.22,-229.39 467,-213 571.33,-104.68 654.61,-197 805,-197 805,-197 805,-197 1006.5,-197 1051.14,-197 1194.31,-224.85 1216.5,-253 1328.39,-394.93 1319.46,-3385.32 1318.56,-3625.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.46,-3625.98 1318.54,-3631.99 1320.66,-3625.99 1316.46,-3625.98"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts -->
<g id="edge908" class="edge">
<title>test/Tag.spec.ts&#45;&gt;Models/ThemeConfig/TagRenderingConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.82,-1049.31C431.34,-1048.48 448.69,-1044.41 459,-1032 472.17,-1016.15 452.35,-304.5 467,-290 534.62,-223.11 587.61,-272.01 681,-290 881.68,-328.65 989.8,-347.81 1069.5,-536 1220.64,-892.88 1207.94,-3633.53 1216.5,-4021 1218.91,-4130.25 1214.21,-7846.21 1224.5,-7955 1242.76,-8148.12 1299.29,-8377.96 1314.63,-8438.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1312.61,-8438.63 1316.13,-8443.92 1316.68,-8437.59 1312.61,-8438.63"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;UI/i18n/Locale.ts -->
<g id="edge909" class="edge">
<title>test/Tag.spec.ts&#45;&gt;UI/i18n/Locale.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.83,-1049.31C431.35,-1048.49 448.69,-1044.42 459,-1032 473.06,-1015.07 451.36,-255.48 467,-240 566.35,-141.65 997.33,-301.27 1069.5,-421 1293.27,-792.23 1198.68,-3886.32 1224.5,-4319 1246.12,-4681.31 1304.53,-5122.22 1316.38,-5209.55"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1314.32,-5209.99 1317.21,-5215.65 1318.49,-5209.42 1314.32,-5209.99"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;UI/i18n/Translations.ts -->
<g id="edge911" class="edge">
<title>test/Tag.spec.ts&#45;&gt;UI/i18n/Translations.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.8,-1049.29C431.31,-1048.46 448.66,-1044.39 459,-1032 477.98,-1009.26 445.9,-519.78 467,-499 534.76,-432.25 613.08,-432.42 681,-499 689,-506.84 686.57,-891.07 689,-902 746.54,-1160.71 875.67,-1187.81 931,-1447 939.37,-1486.23 937.47,-4294.92 939,-4335 952.55,-4690.34 994.45,-5123.92 1002.98,-5209.81"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.89,-5210.04 1003.57,-5215.81 1005.07,-5209.63 1000.89,-5210.04"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;Logic/Tags/And.ts -->
<g id="edge905" class="edge">
<title>test/Tag.spec.ts&#45;&gt;Logic/Tags/And.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.81,-1049.29C431.32,-1048.47 448.67,-1044.4 459,-1032 469.4,-1019.52 455.43,-458.41 467,-447 534.71,-380.21 603.1,-392.44 681,-447 689.52,-452.97 685.38,-459.25 689,-469 855.1,-916.35 983.15,-1003.68 1069.5,-1473 1074.46,-1499.95 1065.53,-9344.48 1082.5,-9366 1089.56,-9374.95 1100.96,-9379.13 1112.08,-9380.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1111.98,-9383.03 1118.2,-9381.69 1112.5,-9378.86 1111.98,-9383.03"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;Logic/Tags/Tag.ts -->
<g id="edge906" class="edge">
<title>test/Tag.spec.ts&#45;&gt;Logic/Tags/Tag.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.76,-1049.25C431.26,-1048.42 448.61,-1044.35 459,-1032 471.56,-1017.07 453.05,-694.63 467,-681 535.02,-614.52 613.37,-614.12 681,-681 688.13,-688.05 687.56,-1393.08 689,-1403 745.45,-1791.71 876.48,-1864.01 931,-2253 932.71,-2265.17 931.82,-9319.03 939,-9329 946.71,-9339.71 959.89,-9345.28 972.41,-9348.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="972.18,-9350.24 978.48,-9349.35 973,-9346.12 972.18,-9350.24"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;Logic/Tags/TagUtils.ts -->
<g id="edge907" class="edge">
<title>test/Tag.spec.ts&#45;&gt;Logic/Tags/TagUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.59,-1049.11C431.05,-1048.23 448.41,-1044.18 459,-1032 469.44,-1019.99 455.44,-899.93 467,-889 536.11,-823.65 613.71,-821.78 681,-889 691.22,-899.21 684.19,-9193.38 689,-9207 709.03,-9263.71 761.87,-9314.53 788.77,-9337.72"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="787.54,-9339.43 793.47,-9341.72 790.26,-9336.23 787.54,-9339.43"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;UI/i18n/Translation.ts -->
<g id="edge910" class="edge">
<title>test/Tag.spec.ts&#45;&gt;UI/i18n/Translation.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.82,-1049.31C431.34,-1048.48 448.68,-1044.41 459,-1032 471.7,-1016.73 452.88,-330.97 467,-317 500.81,-283.56 645.57,-285.28 681,-317 693,-327.74 680.2,-375.52 689,-389 756.94,-493.04 844.25,-440.03 931,-529 1020.76,-621.06 1037.51,-658.46 1069.5,-783 1081.96,-831.52 1080.55,-4339.94 1082.5,-4390 1095.41,-4722.01 1134.69,-5126.81 1142.96,-5209.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1140.9,-5210.2 1143.58,-5215.96 1145.08,-5209.78 1140.9,-5210.2"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts -->
<g id="edge912" class="edge">
<title>test/Tag.spec.ts&#45;&gt;UI/OpeningHours/OpeningHours.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.78,-1049.27C431.28,-1048.43 448.63,-1044.37 459,-1032 473.39,-1014.84 451.01,-644.68 467,-629 534.92,-562.42 613.26,-562.23 681,-629 691.98,-639.82 684.9,-1169.14 689,-1184 746.17,-1391.31 875.17,-1395.32 931,-1603 940.66,-1638.92 936.9,-6921.87 939,-6959 951.86,-7185.99 991.96,-7460.33 1002.14,-7527.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1000.1,-7528.14 1003.08,-7533.76 1004.25,-7527.51 1000.1,-7528.14"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;assert -->
<g id="edge915" class="edge">
<title>test/Tag.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M415.64,-1048.78C430.91,-1047.78 448.1,-1043.72 459,-1032 478.82,-1010.69 446.51,-987.67 467,-967 485.83,-948 517.06,-945.96 540.75,-947.8"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.74,-949.91 546.91,-948.38 541.13,-945.72 540.74,-949.91"/>
</g>
<!-- test/Tag.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge914" class="edge">
<title>test/Tag.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M415.56,-1046.61C430.26,-1048.02 446.99,-1052.04 459,-1062 546.35,-1134.47 567.26,-1283.62 571.82,-1331.7"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="569.74,-1332.01 572.36,-1337.8 573.93,-1331.63 569.74,-1332.01"/>
</g>
<!-- test/TestAll.ts -->
<g id="node217" class="node">
<title>test/TestAll.ts</title>
<g id="a_node217"><a xlink:href="test/TestAll.ts" xlink:title="TestAll.ts">
<path fill="#ddfeff" stroke="black" d="M249.5,-1176C249.5,-1176 205.5,-1176 205.5,-1176 202.5,-1176 199.5,-1173 199.5,-1170 199.5,-1170 199.5,-1164 199.5,-1164 199.5,-1161 202.5,-1158 205.5,-1158 205.5,-1158 249.5,-1158 249.5,-1158 252.5,-1158 255.5,-1161 255.5,-1164 255.5,-1164 255.5,-1170 255.5,-1170 255.5,-1173 252.5,-1176 249.5,-1176"/>
<text text-anchor="middle" x="227.5" y="-1164.8" font-family="Helvetica,sans-Serif" font-size="9.00">TestAll.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;Utils.ts -->
<g id="edge917" class="edge">
<title>test/TestAll.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M229.13,-1157.74C235.8,-1062.15 296.85,-255.28 467,-104 502.4,-72.53 525.64,-93 573,-93 573,-93 573,-93 1006.5,-93 1053.23,-93 1183.85,-70.57 1216.5,-104 1282.52,-171.59 1315.86,-3377.19 1318.35,-3625.75"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.25,-3625.98 1318.41,-3631.95 1320.45,-3625.93 1316.25,-3625.98"/>
</g>
<!-- test/TestAll.ts&#45;&gt;scripts/ScriptUtils.ts -->
<g id="edge916" class="edge">
<title>test/TestAll.ts&#45;&gt;scripts/ScriptUtils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.62,-1157.89C229.98,-1058.56 243.71,-179.01 305,-83 314.02,-68.87 329.55,-59.09 344.23,-52.54"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="345.3,-54.37 350.02,-50.11 343.67,-50.5 345.3,-54.37"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Actors.spec.ts -->
<g id="edge918" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Actors.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M255.76,-1167C277.97,-1167 309.79,-1167 335.8,-1167"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="335.94,-1169.1 341.94,-1167 335.94,-1164.9 335.94,-1169.1"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/GeoOperations.spec.ts -->
<g id="edge919" class="edge">
<title>test/TestAll.ts&#45;&gt;test/GeoOperations.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M255.76,-1161.64C276.06,-1157.64 304.39,-1152.07 328.97,-1147.24"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="329.65,-1149.24 335.13,-1146.02 328.84,-1145.12 329.65,-1149.24"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/ImageAttribution.spec.ts -->
<g id="edge920" class="edge">
<title>test/TestAll.ts&#45;&gt;test/ImageAttribution.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M234.9,-1157.9C246.74,-1141.81 273.74,-1108.48 305,-1092 307.61,-1090.62 310.34,-1089.37 313.14,-1088.23"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="314.08,-1090.12 318.97,-1086.06 312.61,-1086.19 314.08,-1090.12"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/ImageProvider.spec.ts -->
<g id="edge921" class="edge">
<title>test/TestAll.ts&#45;&gt;test/ImageProvider.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M229.84,-1157.72C234.44,-1129.37 252.36,-1043.35 305,-1002 309.03,-998.84 313.54,-996.28 318.31,-994.22"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="319.15,-996.15 324,-992.03 317.64,-992.23 319.15,-996.15"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/LegacyThemeLoader.spec.ts -->
<g id="edge922" class="edge">
<title>test/TestAll.ts&#45;&gt;test/LegacyThemeLoader.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M229.1,-1176.11C231.7,-1207.44 244.71,-1311.64 305,-1362 306.09,-1362.91 307.22,-1363.77 308.38,-1364.59"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="307.48,-1366.5 313.69,-1367.86 309.69,-1362.92 307.48,-1366.5"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/OsmObject.spec.ts -->
<g id="edge923" class="edge">
<title>test/TestAll.ts&#45;&gt;test/OsmObject.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M229.84,-1176.28C234.44,-1204.63 252.36,-1290.65 305,-1332 310.95,-1336.67 317.95,-1340.02 325.26,-1342.39"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="325.11,-1344.53 331.46,-1344.16 326.27,-1340.49 325.11,-1344.53"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/RelationSplitHandler.spec.ts -->
<g id="edge924" class="edge">
<title>test/TestAll.ts&#45;&gt;test/RelationSplitHandler.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.83,-1157.96C255.42,-1147.7 280.8,-1131.2 305,-1122 309.15,-1120.42 313.49,-1119 317.91,-1117.73"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="318.73,-1119.68 323.96,-1116.07 317.62,-1115.63 318.73,-1119.68"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/ReplaceGeometry.spec.ts -->
<g id="edge925" class="edge">
<title>test/TestAll.ts&#45;&gt;test/ReplaceGeometry.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M230.77,-1158C237.46,-1133.42 259.56,-1064.79 305,-1032 306.91,-1030.62 308.92,-1029.36 311,-1028.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="312.21,-1029.95 316.66,-1025.4 310.35,-1026.19 312.21,-1029.95"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/SplitAction.spec.ts -->
<g id="edge926" class="edge">
<title>test/TestAll.ts&#45;&gt;test/SplitAction.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M232.28,-1176.08C241.42,-1196.79 266.78,-1247.61 305,-1272 311.29,-1276.01 318.42,-1278.99 325.73,-1281.19"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="325.57,-1283.32 331.91,-1282.87 326.67,-1279.27 325.57,-1283.32"/>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Tag.spec.ts -->
<g id="edge927" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Tag.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M232.28,-1157.92C241.42,-1137.21 266.78,-1086.39 305,-1062 316.01,-1054.97 329.6,-1051.12 342.23,-1049.04"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="342.71,-1051.1 348.34,-1048.16 342.1,-1046.94 342.71,-1051.1"/>
</g>
<!-- test/Theme.spec.ts -->
<g id="node218" class="node">
<title>test/Theme.spec.ts</title>
<g id="a_node218"><a xlink:href="test/Theme.spec.ts" xlink:title="Theme.spec.ts">
<path fill="#ddfeff" stroke="black" d="M417.5,-1326C417.5,-1326 346.5,-1326 346.5,-1326 343.5,-1326 340.5,-1323 340.5,-1320 340.5,-1320 340.5,-1314 340.5,-1314 340.5,-1311 343.5,-1308 346.5,-1308 346.5,-1308 417.5,-1308 417.5,-1308 420.5,-1308 423.5,-1311 423.5,-1314 423.5,-1314 423.5,-1320 423.5,-1320 423.5,-1323 420.5,-1326 417.5,-1326"/>
<text text-anchor="middle" x="382" y="-1314.8" font-family="Helvetica,sans-Serif" font-size="9.00">Theme.spec.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Theme.spec.ts -->
<g id="edge928" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Theme.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M230.77,-1176C237.46,-1200.58 259.56,-1269.21 305,-1302 313.48,-1308.12 323.82,-1311.9 334.1,-1314.21"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="333.85,-1316.3 340.14,-1315.4 334.66,-1312.18 333.85,-1316.3"/>
</g>
<!-- test/TileFreshnessCalculator.spec.ts -->
<g id="node219" class="node">
<title>test/TileFreshnessCalculator.spec.ts</title>
<g id="a_node219"><a xlink:href="test/TileFreshnessCalculator.spec.ts" xlink:title="TileFreshnessCalculator.spec.ts">
<path fill="#ddfeff" stroke="black" d="M453,-1416C453,-1416 311,-1416 311,-1416 308,-1416 305,-1413 305,-1410 305,-1410 305,-1404 305,-1404 305,-1401 308,-1398 311,-1398 311,-1398 453,-1398 453,-1398 456,-1398 459,-1401 459,-1404 459,-1404 459,-1410 459,-1410 459,-1413 456,-1416 453,-1416"/>
<text text-anchor="middle" x="382" y="-1404.8" font-family="Helvetica,sans-Serif" font-size="9.00">TileFreshnessCalculator.spec.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;test/TileFreshnessCalculator.spec.ts -->
<g id="edge929" class="edge">
<title>test/TestAll.ts&#45;&gt;test/TileFreshnessCalculator.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M228.57,-1176.01C229.36,-1210.14 237.01,-1332.49 305,-1392 305.95,-1392.83 306.93,-1393.62 307.94,-1394.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="307.04,-1396.29 313.21,-1397.81 309.33,-1392.77 307.04,-1396.29"/>
</g>
<!-- test/Units.spec.ts -->
<g id="node220" class="node">
<title>test/Units.spec.ts</title>
<g id="a_node220"><a xlink:href="test/Units.spec.ts" xlink:title="Units.spec.ts">
<path fill="#ddfeff" stroke="black" d="M413.5,-1266C413.5,-1266 350.5,-1266 350.5,-1266 347.5,-1266 344.5,-1263 344.5,-1260 344.5,-1260 344.5,-1254 344.5,-1254 344.5,-1251 347.5,-1248 350.5,-1248 350.5,-1248 413.5,-1248 413.5,-1248 416.5,-1248 419.5,-1251 419.5,-1254 419.5,-1254 419.5,-1260 419.5,-1260 419.5,-1263 416.5,-1266 413.5,-1266"/>
<text text-anchor="middle" x="382" y="-1254.8" font-family="Helvetica,sans-Serif" font-size="9.00">Units.spec.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Units.spec.ts -->
<g id="edge930" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Units.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M234.9,-1176.1C246.74,-1192.19 273.74,-1225.52 305,-1242 315.14,-1247.35 326.95,-1250.79 338.19,-1253.02"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="338.09,-1255.13 344.37,-1254.13 338.84,-1251 338.09,-1255.13"/>
</g>
<!-- test/Utils.spec.ts -->
<g id="node221" class="node">
<title>test/Utils.spec.ts</title>
<g id="a_node221"><a xlink:href="test/Utils.spec.ts" xlink:title="Utils.spec.ts">
<path fill="#ddfeff" stroke="black" d="M411.5,-1236C411.5,-1236 352.5,-1236 352.5,-1236 349.5,-1236 346.5,-1233 346.5,-1230 346.5,-1230 346.5,-1224 346.5,-1224 346.5,-1221 349.5,-1218 352.5,-1218 352.5,-1218 411.5,-1218 411.5,-1218 414.5,-1218 417.5,-1221 417.5,-1224 417.5,-1224 417.5,-1230 417.5,-1230 417.5,-1233 414.5,-1236 411.5,-1236"/>
<text text-anchor="middle" x="382" y="-1224.8" font-family="Helvetica,sans-Serif" font-size="9.00">Utils.spec.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Utils.spec.ts -->
<g id="edge931" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Utils.spec.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M240.83,-1176.04C255.42,-1186.3 280.8,-1202.8 305,-1212 316.13,-1216.23 328.66,-1219.33 340.28,-1221.58"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="339.98,-1223.66 346.27,-1222.67 340.74,-1219.52 339.98,-1223.66"/>
</g>
<!-- test/Wikidata.spec.test.ts -->
<g id="node222" class="node">
<title>test/Wikidata.spec.test.ts</title>
<g id="a_node222"><a xlink:href="test/Wikidata.spec.test.ts" xlink:title="Wikidata.spec.test.ts">
<path fill="#ddfeff" stroke="black" d="M431.5,-1206C431.5,-1206 332.5,-1206 332.5,-1206 329.5,-1206 326.5,-1203 326.5,-1200 326.5,-1200 326.5,-1194 326.5,-1194 326.5,-1191 329.5,-1188 332.5,-1188 332.5,-1188 431.5,-1188 431.5,-1188 434.5,-1188 437.5,-1191 437.5,-1194 437.5,-1194 437.5,-1200 437.5,-1200 437.5,-1203 434.5,-1206 431.5,-1206"/>
<text text-anchor="middle" x="382" y="-1194.8" font-family="Helvetica,sans-Serif" font-size="9.00">Wikidata.spec.test.ts</text>
</a>
</g>
</g>
<!-- test/TestAll.ts&#45;&gt;test/Wikidata.spec.test.ts -->
<g id="edge932" class="edge">
<title>test/TestAll.ts&#45;&gt;test/Wikidata.spec.test.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M255.76,-1172.36C276.06,-1176.36 304.39,-1181.93 328.97,-1186.76"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="328.84,-1188.88 335.13,-1187.98 329.65,-1184.76 328.84,-1188.88"/>
</g>
<!-- test/Theme.spec.ts&#45;&gt;Utils.ts -->
<g id="edge934" class="edge">
<title>test/Theme.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.67,-1310.77C435.23,-1308.52 447.73,-1305.62 459,-1302 619.8,-1250.42 636.13,-1145 805,-1145 805,-1145 805,-1145 1006.5,-1145 1104.6,-1145 1157.14,-1134.89 1216.5,-1213 1294.27,-1315.34 1316.41,-3423.67 1318.36,-3625.51"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.26,-3625.67 1318.41,-3631.64 1320.46,-3625.63 1316.26,-3625.67"/>
</g>
<!-- test/Theme.spec.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts -->
<g id="edge933" class="edge">
<title>test/Theme.spec.ts&#45;&gt;Models/ThemeConfig/LayoutConfig.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.75,-1315.35C436.99,-1317.06 450.45,-1321.62 459,-1332 465.97,-1340.47 466.27,-7642.05 467,-7653 488.23,-7971.85 555.78,-8357.59 570.25,-8437.91"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="568.21,-8438.43 571.34,-8443.96 572.34,-8437.68 568.21,-8438.43"/>
</g>
<!-- test/Theme.spec.ts&#45;&gt;assert -->
<g id="edge936" class="edge">
<title>test/Theme.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M423.62,-1318.54C436.85,-1316.83 450.34,-1312.29 459,-1302 470.99,-1287.76 454.56,-980.85 467,-967 484.99,-946.97 516.62,-945.14 540.66,-947.32"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.72,-949.44 546.91,-947.99 541.16,-945.26 540.72,-949.44"/>
</g>
<!-- test/Theme.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge935" class="edge">
<title>test/Theme.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M423.76,-1323.44C455.45,-1328.44 499.25,-1335.36 531.2,-1340.4"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="531.17,-1342.52 537.42,-1341.38 531.83,-1338.37 531.17,-1342.52"/>
</g>
<!-- test/TileFreshnessCalculator.spec.ts&#45;&gt;Models/TileRange.ts -->
<g id="edge938" class="edge">
<title>test/TileFreshnessCalculator.spec.ts&#45;&gt;Models/TileRange.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M385.12,-1416.24C395.81,-1463.33 443.87,-1681.44 459,-1863 459.98,-1874.78 459.21,-8660.12 467,-8669 482.78,-8686.98 509.54,-8690.41 532.22,-8689.37"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="532.64,-8691.45 538.5,-8688.97 532.38,-8687.26 532.64,-8691.45"/>
</g>
<!-- test/TileFreshnessCalculator.spec.ts&#45;&gt;Logic/FeatureSource/TileFreshnessCalculator.ts -->
<g id="edge937" class="edge">
<title>test/TileFreshnessCalculator.spec.ts&#45;&gt;Logic/FeatureSource/TileFreshnessCalculator.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M383.31,-1416.33C387.91,-1553.68 441.82,-3180.09 459,-4493 459.12,-4501.94 461.07,-9633.31 467,-9640 476.17,-9650.35 488.99,-9655.77 502.56,-9658.26"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="502.6,-9660.39 508.84,-9659.2 503.22,-9656.23 502.6,-9660.39"/>
</g>
<!-- test/TileFreshnessCalculator.spec.ts&#45;&gt;assert -->
<g id="edge940" class="edge">
<title>test/TileFreshnessCalculator.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M452.65,-1398C454.97,-1396.26 457.1,-1394.27 459,-1392 474.17,-1373.9 451.27,-984.61 467,-967 484.94,-946.92 516.57,-945.1 540.63,-947.29"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.69,-949.41 546.88,-947.97 541.14,-945.24 540.69,-949.41"/>
</g>
<!-- test/TileFreshnessCalculator.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge939" class="edge">
<title>test/TileFreshnessCalculator.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M435.22,-1397.99C443.24,-1396.24 451.39,-1394.23 459,-1392 490.24,-1382.83 524.87,-1368.54 547.67,-1358.53"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="548.57,-1360.44 553.2,-1356.09 546.87,-1356.59 548.57,-1360.44"/>
</g>
<!-- test/Units.spec.ts&#45;&gt;Models/Denomination.ts -->
<g id="edge941" class="edge">
<title>test/Units.spec.ts&#45;&gt;Models/Denomination.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M419.89,-1249.05C476.84,-1238.21 589.21,-1222.56 681,-1245 870.05,-1291.21 968.24,-1280.8 1069.5,-1447 1084.77,-1472.06 1082.12,-5643.66 1082.5,-5673 1097.23,-6821.74 1139.15,-8240.33 1144.03,-8403.49"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1141.95,-8404 1144.23,-8409.93 1146.15,-8403.87 1141.95,-8404"/>
</g>
<!-- test/Units.spec.ts&#45;&gt;Models/Unit.ts -->
<g id="edge942" class="edge">
<title>test/Units.spec.ts&#45;&gt;Models/Unit.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M419.61,-1253.63C491.07,-1247.94 645.27,-1240.25 681,-1276 690.99,-1286 686.61,-1389.07 689,-1403 755.51,-1790.12 876.44,-1864.02 931,-2253 936.83,-2294.56 928.81,-8255.29 939,-8296 949.67,-8338.62 978.17,-8382.67 993.82,-8404.67"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="992.3,-8406.14 997.51,-8409.78 995.7,-8403.69 992.3,-8406.14"/>
</g>
<!-- test/Units.spec.ts&#45;&gt;assert -->
<g id="edge944" class="edge">
<title>test/Units.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M419.64,-1258.95C434.06,-1257.65 449.44,-1253.29 459,-1242 478.75,-1218.67 446.52,-989.69 467,-967 485.04,-947.01 516.66,-945.18 540.69,-947.35"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.74,-949.46 546.93,-948.01 541.19,-945.29 540.74,-949.46"/>
</g>
<!-- test/Units.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge943" class="edge">
<title>test/Units.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M419.79,-1261.32C432.52,-1263.57 446.68,-1266.96 459,-1272 497.37,-1287.7 536.54,-1316.97 557.5,-1333.93"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="556.2,-1335.59 562.18,-1337.76 558.86,-1332.34 556.2,-1335.59"/>
</g>
<!-- test/Utils.spec.ts&#45;&gt;Utils.ts -->
<g id="edge945" class="edge">
<title>test/Utils.spec.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M417.67,-1229.1C432.65,-1228.03 449.01,-1223.8 459,-1212 478.68,-1188.76 453.47,-965.29 467,-938 552.78,-764.99 611.9,-665 805,-665 805,-665 805,-665 1006.5,-665 1221.18,-665 1164.44,-891.72 1216.5,-1100 1281.74,-1360.99 1315.21,-3428.31 1318.27,-3625.85"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.17,-3625.89 1318.36,-3631.85 1320.37,-3625.82 1316.17,-3625.89"/>
</g>
<!-- test/Utils.spec.ts&#45;&gt;assert -->
<g id="edge947" class="edge">
<title>test/Utils.spec.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M417.66,-1229.09C432.63,-1228.01 448.99,-1223.79 459,-1212 476.64,-1191.24 448.71,-987.19 467,-967 485.08,-947.05 516.69,-945.21 540.71,-947.36"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.76,-949.48 546.95,-948.03 541.2,-945.31 540.76,-949.48"/>
</g>
<!-- test/Utils.spec.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge946" class="edge">
<title>test/Utils.spec.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M417.61,-1229.77C431.07,-1231.87 446.29,-1235.55 459,-1242 503.84,-1264.75 543.96,-1310.24 562.36,-1333.14"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="560.78,-1334.53 566.15,-1337.93 564.07,-1331.92 560.78,-1334.53"/>
</g>
<!-- test/Wikidata.spec.test.ts&#45;&gt;Utils.ts -->
<g id="edge949" class="edge">
<title>test/Wikidata.spec.test.ts&#45;&gt;Utils.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M437.81,-1195.49C445.97,-1192.85 453.48,-1188.61 459,-1182 476.85,-1160.64 449.98,-703.03 467,-681 562.32,-557.61 649.08,-587 805,-587 805,-587 805,-587 1006.5,-587 1108.22,-587 1159.22,-593.94 1216.5,-678 1305.25,-808.24 1317.55,-3402.23 1318.44,-3625.68"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="1316.34,-3625.86 1318.47,-3631.85 1320.54,-3625.84 1316.34,-3625.86"/>
</g>
<!-- test/Wikidata.spec.test.ts&#45;&gt;Logic/Web/Wikidata.ts -->
<g id="edge948" class="edge">
<title>test/Wikidata.spec.test.ts&#45;&gt;Logic/Web/Wikidata.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M437.72,-1195.41C445.89,-1192.78 453.43,-1188.56 459,-1182 476.57,-1161.33 447.51,-956.86 467,-938 535.35,-871.86 613.17,-871.33 681,-938 690.21,-947.06 687.1,-1390.22 689,-1403 746.64,-1791.54 876.47,-1864.01 931,-2253 932.65,-2264.77 931.59,-9086.71 939,-9096 945.51,-9104.16 955.46,-9108.44 965.66,-9110.57"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="965.41,-9112.66 971.67,-9111.59 966.11,-9108.52 965.41,-9112.66"/>
</g>
<!-- test/Wikidata.spec.test.ts&#45;&gt;assert -->
<g id="edge951" class="edge">
<title>test/Wikidata.spec.test.ts&#45;&gt;assert</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" stroke-opacity="0.200000" d="M437.7,-1195.39C445.87,-1192.76 453.41,-1188.55 459,-1182 474.52,-1163.82 450.91,-984.68 467,-967 485.12,-947.09 516.73,-945.24 540.73,-947.39"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-opacity="0.200000" points="540.78,-949.5 546.97,-948.05 541.22,-945.33 540.78,-949.5"/>
</g>
<!-- test/Wikidata.spec.test.ts&#45;&gt;test/TestHelper.ts -->
<g id="edge950" class="edge">
<title>test/Wikidata.spec.test.ts&#45;&gt;test/TestHelper.ts</title>
<path fill="none" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" d="M437.8,-1203.16C445.22,-1205.31 452.51,-1208.18 459,-1212 510.33,-1242.23 549.38,-1304.27 565.25,-1332.48"/>
<polygon fill="#000000" fill-opacity="0.200000" stroke="#000000" stroke-width="2" stroke-opacity="0.200000" points="563.54,-1333.72 568.28,-1337.96 567.21,-1331.69 563.54,-1333.72"/>
</g>
</g>
</svg>