clash/docs/heap.svg
2023-01-30 21:19:46 +08:00

2183 lines
116 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 7.1.0 (20230121.1956)
-->
<!-- Title: unnamed Pages: 1 -->
<svg width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<script type="text/ecmascript"><![CDATA[
/**
* SVGPan library 1.2.2
* ======================
*
* Given an unique existing element with id "viewport" (or when missing, the
* first g-element), including the library into any SVG adds the following
* capabilities:
*
* - Mouse panning
* - Mouse zooming (using the wheel)
* - Object dragging
*
* You can configure the behaviour of the pan/zoom/drag with the variables
* listed in the CONFIGURATION section of this file.
*
* Known issues:
*
* - Zooming (while panning) on Safari has still some issues
*
* Releases:
*
* 1.2.2, Tue Aug 30 17:21:56 CEST 2011, Andrea Leofreddi
* - Fixed viewBox on root tag (#7)
* - Improved zoom speed (#2)
*
* 1.2.1, Mon Jul 4 00:33:18 CEST 2011, Andrea Leofreddi
* - Fixed a regression with mouse wheel (now working on Firefox 5)
* - Working with viewBox attribute (#4)
* - Added "use strict;" and fixed resulting warnings (#5)
* - Added configuration variables, dragging is disabled by default (#3)
*
* 1.2, Sat Mar 20 08:42:50 GMT 2010, Zeng Xiaohui
* Fixed a bug with browser mouse handler interaction
*
* 1.1, Wed Feb 3 17:39:33 GMT 2010, Zeng Xiaohui
* Updated the zoom code to support the mouse wheel on Safari/Chrome
*
* 1.0, Andrea Leofreddi
* First release
*
* This code is licensed under the following BSD license:
*
* Copyright 2009-2017 Andrea Leofreddi <a.leofreddi@vleo.net>. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holder nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY COPYRIGHT HOLDERS AND CONTRIBUTORS ''AS IS'' AND ANY EXPRESS
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of Andrea Leofreddi.
*/
"use strict";
/// CONFIGURATION
/// ====>
var enablePan = 1; // 1 or 0: enable or disable panning (default enabled)
var enableZoom = 1; // 1 or 0: enable or disable zooming (default enabled)
var enableDrag = 0; // 1 or 0: enable or disable dragging (default disabled)
var zoomScale = 0.2; // Zoom sensitivity
/// <====
/// END OF CONFIGURATION
var root = document.documentElement;
var state = 'none', svgRoot = null, stateTarget, stateOrigin, stateTf;
setupHandlers(root);
/**
* Register handlers
*/
function setupHandlers(root){
setAttributes(root, {
"onmouseup" : "handleMouseUp(evt)",
"onmousedown" : "handleMouseDown(evt)",
"onmousemove" : "handleMouseMove(evt)",
//"onmouseout" : "handleMouseUp(evt)", // Decomment this to stop the pan functionality when dragging out of the SVG element
});
if(navigator.userAgent.toLowerCase().indexOf('webkit') >= 0)
window.addEventListener('mousewheel', handleMouseWheel, false); // Chrome/Safari
else
window.addEventListener('DOMMouseScroll', handleMouseWheel, false); // Others
}
/**
* Retrieves the root element for SVG manipulation. The element is then cached into the svgRoot global variable.
*/
function getRoot(root) {
if(svgRoot == null) {
var r = root.getElementById("viewport") ? root.getElementById("viewport") : root.documentElement, t = r;
while(t != root) {
if(t.getAttribute("viewBox")) {
setCTM(r, t.getCTM());
t.removeAttribute("viewBox");
}
t = t.parentNode;
}
svgRoot = r;
}
return svgRoot;
}
/**
* Instance an SVGPoint object with given event coordinates.
*/
function getEventPoint(evt) {
var p = root.createSVGPoint();
p.x = evt.clientX;
p.y = evt.clientY;
return p;
}
/**
* Sets the current transform matrix of an element.
*/
function setCTM(element, matrix) {
var s = "matrix(" + matrix.a + "," + matrix.b + "," + matrix.c + "," + matrix.d + "," + matrix.e + "," + matrix.f + ")";
element.setAttribute("transform", s);
}
/**
* Dumps a matrix to a string (useful for debug).
*/
function dumpMatrix(matrix) {
var s = "[ " + matrix.a + ", " + matrix.c + ", " + matrix.e + "\n " + matrix.b + ", " + matrix.d + ", " + matrix.f + "\n 0, 0, 1 ]";
return s;
}
/**
* Sets attributes of an element.
*/
function setAttributes(element, attributes){
for (var i in attributes)
element.setAttributeNS(null, i, attributes[i]);
}
/**
* Handle mouse wheel event.
*/
function handleMouseWheel(evt) {
if(!enableZoom)
return;
if(evt.preventDefault)
evt.preventDefault();
evt.returnValue = false;
var svgDoc = evt.target.ownerDocument;
var delta;
if(evt.wheelDelta)
delta = evt.wheelDelta / 360; // Chrome/Safari
else
delta = evt.detail / -9; // Mozilla
var z = Math.pow(1 + zoomScale, delta);
var g = getRoot(svgDoc);
var p = getEventPoint(evt);
p = p.matrixTransform(g.getCTM().inverse());
// Compute new scale matrix in current mouse position
var k = root.createSVGMatrix().translate(p.x, p.y).scale(z).translate(-p.x, -p.y);
setCTM(g, g.getCTM().multiply(k));
if(typeof(stateTf) == "undefined")
stateTf = g.getCTM().inverse();
stateTf = stateTf.multiply(k.inverse());
}
/**
* Handle mouse move event.
*/
function handleMouseMove(evt) {
if(evt.preventDefault)
evt.preventDefault();
evt.returnValue = false;
var svgDoc = evt.target.ownerDocument;
var g = getRoot(svgDoc);
if(state == 'pan' && enablePan) {
// Pan mode
var p = getEventPoint(evt).matrixTransform(stateTf);
setCTM(g, stateTf.inverse().translate(p.x - stateOrigin.x, p.y - stateOrigin.y));
} else if(state == 'drag' && enableDrag) {
// Drag mode
var p = getEventPoint(evt).matrixTransform(g.getCTM().inverse());
setCTM(stateTarget, root.createSVGMatrix().translate(p.x - stateOrigin.x, p.y - stateOrigin.y).multiply(g.getCTM().inverse()).multiply(stateTarget.getCTM()));
stateOrigin = p;
}
}
/**
* Handle click event.
*/
function handleMouseDown(evt) {
if(evt.preventDefault)
evt.preventDefault();
evt.returnValue = false;
var svgDoc = evt.target.ownerDocument;
var g = getRoot(svgDoc);
if(
evt.target.tagName == "svg"
|| !enableDrag // Pan anyway when drag is disabled and the user clicked on an element
) {
// Pan mode
state = 'pan';
stateTf = g.getCTM().inverse();
stateOrigin = getEventPoint(evt).matrixTransform(stateTf);
} else {
// Drag mode
state = 'drag';
stateTarget = evt.target;
stateTf = g.getCTM().inverse();
stateOrigin = getEventPoint(evt).matrixTransform(stateTf);
}
}
/**
* Handle mouse button release event.
*/
function handleMouseUp(evt) {
if(evt.preventDefault)
evt.preventDefault();
evt.returnValue = false;
var svgDoc = evt.target.ownerDocument;
if(state == 'pan' || state == 'drag') {
// Quit pan mode
state = '';
}
}
]]></script><g id="viewport" transform="scale(0.5,0.5) translate(0,0)"><g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2380)">
<title>unnamed</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-2380 1721,-2380 1721,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_L</title>
<polygon fill="none" stroke="black" points="8,-2235 8,-2368 492,-2368 492,-2235 8,-2235"/>
</g>
<!-- Type: inuse_space -->
<g id="node1" class="node">
<title>Type: inuse_space</title>
<polygon fill="#f8f8f8" stroke="black" points="483.5,-2360 16.5,-2360 16.5,-2243 483.5,-2243 483.5,-2360"/>
<text text-anchor="start" x="24.5" y="-2343.2" font-family="Times New Roman,serif" font-size="16.00">Type: inuse_space</text>
<text text-anchor="start" x="24.5" y="-2325.2" font-family="Times New Roman,serif" font-size="16.00">Time: Jan 30, 2023 at 9:18pm (CST)</text>
<text text-anchor="start" x="24.5" y="-2307.2" font-family="Times New Roman,serif" font-size="16.00">Showing nodes accounting for 12146.04kB, 100% of 12146.04kB total</text>
<text text-anchor="start" x="24.5" y="-2289.2" font-family="Times New Roman,serif" font-size="16.00">Showing top 69 nodes out of 71</text>
<text text-anchor="start" x="24.5" y="-2252.2" font-family="Times New Roman,serif" font-size="16.00">See https://git.io/JfYMW for how to read the graph</text>
</g>
<!-- N1 -->
<g id="node1" class="node">
<title>N1</title>
<g id="a_node1"><a xlink:title="runtime.allocm (5637.50kB)">
<polygon fill="#eddad5" stroke="#b22400" points="664.5,-1517 445.5,-1517 445.5,-1431 664.5,-1431 664.5,-1517"/>
<text text-anchor="middle" x="555" y="-1493.8" font-family="Times New Roman,serif" font-size="24.00">runtime</text>
<text text-anchor="middle" x="555" y="-1467.8" font-family="Times New Roman,serif" font-size="24.00">allocm</text>
<text text-anchor="middle" x="555" y="-1441.8" font-family="Times New Roman,serif" font-size="24.00">5637.50kB (46.41%)</text>
</a>
</g>
</g>
<!-- NN1_0 -->
<g id="NN1_0" class="node">
<title>NN1_0</title>
<g id="a_NN1_0"><a xlink:title="5637.50kB">
<polygon fill="#f8f8f8" stroke="black" points="582,-1376 532,-1376 528,-1372 528,-1340 578,-1340 582,-1344 582,-1376"/>
<polyline fill="none" stroke="black" points="578,-1372 528,-1372"/>
<polyline fill="none" stroke="black" points="578,-1372 578,-1340"/>
<polyline fill="none" stroke="black" points="578,-1372 582,-1376"/>
<text text-anchor="middle" x="555" y="-1356.1" font-family="Times New Roman,serif" font-size="8.00">1kB</text>
</a>
</g>
</g>
<!-- N1&#45;&gt;NN1_0 -->
<g id="edge1" class="edge">
<title>N1&#45;&gt;NN1_0</title>
<g id="a_edge1"><a xlink:title="5637.50kB">
<path fill="none" stroke="black" d="M555,-1430.55C555,-1416.35 555,-1400.86 555,-1387.93"/>
<polygon fill="black" stroke="black" points="558.5,-1387.97 555,-1377.97 551.5,-1387.97 558.5,-1387.97"/>
</a>
</g>
<g id="a_edge1&#45;label"><a xlink:title="5637.50kB">
<text text-anchor="middle" x="587" y="-1401.8" font-family="Times New Roman,serif" font-size="14.00"> 5637.50kB</text>
</a>
</g>
</g>
<!-- N2 -->
<g id="node2" class="node">
<title>N2</title>
<g id="a_node2"><a xlink:title="runtime.schedule (5637.50kB)">
<polygon fill="#eddad5" stroke="#b22400" points="608.5,-1945 501.5,-1945 501.5,-1909 608.5,-1909 608.5,-1945"/>
<text text-anchor="middle" x="555" y="-1934.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-1925.1" font-family="Times New Roman,serif" font-size="8.00">schedule</text>
<text text-anchor="middle" x="555" y="-1916.1" font-family="Times New Roman,serif" font-size="8.00">0 of 5637.50kB (46.41%)</text>
</a>
</g>
</g>
<!-- N68 -->
<g id="node68" class="node">
<title>N68</title>
<g id="a_node68"><a xlink:title="runtime.resetspinning (5637.50kB)">
<polygon fill="#eddad5" stroke="#b22400" points="608.5,-1833 501.5,-1833 501.5,-1797 608.5,-1797 608.5,-1833"/>
<text text-anchor="middle" x="555" y="-1822.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-1813.1" font-family="Times New Roman,serif" font-size="8.00">resetspinning</text>
<text text-anchor="middle" x="555" y="-1804.1" font-family="Times New Roman,serif" font-size="8.00">0 of 5637.50kB (46.41%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N68 -->
<g id="edge14" class="edge">
<title>N2&#45;&gt;N68</title>
<g id="a_edge14"><a xlink:title="runtime.schedule &#45;&gt; runtime.resetspinning (5637.50kB)">
<path fill="none" stroke="#b22400" stroke-width="3" d="M555,-1908.81C555,-1892.52 555,-1867.65 555,-1847.76"/>
<polygon fill="#b22400" stroke="#b22400" stroke-width="3" points="558.5,-1847.97 555,-1837.97 551.5,-1847.97 558.5,-1847.97"/>
</a>
</g>
<g id="a_edge14&#45;label"><a xlink:title="runtime.schedule &#45;&gt; runtime.resetspinning (5637.50kB)">
<text text-anchor="middle" x="587" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 5637.50kB</text>
</a>
</g>
</g>
<!-- N3 -->
<g id="node3" class="node">
<title>N3</title>
<g id="a_node3"><a xlink:title="runtime.mstart (3587.50kB)">
<polygon fill="#eddcd5" stroke="#b23600" points="608.5,-2319.5 501.5,-2319.5 501.5,-2283.5 608.5,-2283.5 608.5,-2319.5"/>
<text text-anchor="middle" x="555" y="-2308.6" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-2299.6" font-family="Times New Roman,serif" font-size="8.00">mstart</text>
<text text-anchor="middle" x="555" y="-2290.6" font-family="Times New Roman,serif" font-size="8.00">0 of 3587.50kB (29.54%)</text>
</a>
</g>
</g>
<!-- N62 -->
<g id="node62" class="node">
<title>N62</title>
<g id="a_node62"><a xlink:title="runtime.mstart0 (3587.50kB)">
<polygon fill="#eddcd5" stroke="#b23600" points="608.5,-2185 501.5,-2185 501.5,-2149 608.5,-2149 608.5,-2185"/>
<text text-anchor="middle" x="555" y="-2174.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">mstart0</text>
<text text-anchor="middle" x="555" y="-2156.1" font-family="Times New Roman,serif" font-size="8.00">0 of 3587.50kB (29.54%)</text>
</a>
</g>
</g>
<!-- N3&#45;&gt;N62 -->
<g id="edge16" class="edge">
<title>N3&#45;&gt;N62</title>
<g id="a_edge16"><a xlink:title="runtime.mstart &#45;&gt; runtime.mstart0 (3587.50kB)">
<path fill="none" stroke="#b23600" stroke-width="2" d="M555,-2283.18C555,-2261.65 555,-2224.56 555,-2198.29"/>
<polygon fill="#b23600" stroke="#b23600" stroke-width="2" points="558.5,-2198.35 555,-2188.35 551.5,-2198.35 558.5,-2198.35"/>
</a>
</g>
<g id="a_edge16&#45;label"><a xlink:title="runtime.mstart &#45;&gt; runtime.mstart0 (3587.50kB)">
<text text-anchor="middle" x="587" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 3587.50kB</text>
</a>
</g>
</g>
<!-- N4 -->
<g id="node4" class="node">
<title>N4</title>
<g id="a_node4"><a xlink:title="runtime.main (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-2319.5 741.5,-2319.5 741.5,-2283.5 848.5,-2283.5 848.5,-2319.5"/>
<text text-anchor="middle" x="795" y="-2308.6" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="795" y="-2299.6" font-family="Times New Roman,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="795" y="-2290.6" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N61 -->
<g id="node61" class="node">
<title>N61</title>
<g id="a_node61"><a xlink:title="main.main (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-2185 741.5,-2185 741.5,-2149 848.5,-2149 848.5,-2185"/>
<text text-anchor="middle" x="795" y="-2174.1" font-family="Times New Roman,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="795" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="795" y="-2156.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N61 -->
<g id="edge29" class="edge">
<title>N4&#45;&gt;N61</title>
<g id="a_edge29"><a xlink:title="runtime.main &#45;&gt; main.main (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-2283.18C795,-2261.65 795,-2224.56 795,-2198.29"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-2198.35 795,-2188.35 791.5,-2198.35 798.5,-2198.35"/>
</a>
</g>
<g id="a_edge29&#45;label"><a xlink:title="runtime.main &#45;&gt; main.main (2836.92kB)">
<text text-anchor="middle" x="827" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N5 -->
<g id="node5" class="node">
<title>N5</title>
<g id="a_node5"><a xlink:title="github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1056 741.5,-1056 741.5,-1020 848.5,-1020 848.5,-1056"/>
<text text-anchor="middle" x="795" y="-1045.1" font-family="Times New Roman,serif" font-size="8.00">geodata</text>
<text text-anchor="middle" x="795" y="-1036.1" font-family="Times New Roman,serif" font-size="8.00">LoadGeoSiteMatcher</text>
<text text-anchor="middle" x="795" y="-1027.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N10 -->
<g id="node10" class="node">
<title>N10</title>
<g id="a_node10"><a xlink:title="github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup (1812.91kB)">
<polygon fill="#ede3db" stroke="#b2672d" points="848.5,-965 741.5,-965 741.5,-929 848.5,-929 848.5,-965"/>
<text text-anchor="middle" x="795" y="-954.1" font-family="Times New Roman,serif" font-size="8.00">router</text>
<text text-anchor="middle" x="795" y="-945.1" font-family="Times New Roman,serif" font-size="8.00">NewMphMatcherGroup</text>
<text text-anchor="middle" x="795" y="-936.1" font-family="Times New Roman,serif" font-size="8.00">0 of 1812.91kB (14.93%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N10 -->
<g id="edge32" class="edge">
<title>N5&#45;&gt;N10</title>
<g id="a_edge32"><a xlink:title="github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher &#45;&gt; github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup (1812.91kB)">
<path fill="none" stroke="#b2672d" d="M795,-1019.84C795,-1007.61 795,-990.87 795,-976.63"/>
<polygon fill="#b2672d" stroke="#b2672d" points="798.5,-976.92 795,-966.92 791.5,-976.92 798.5,-976.92"/>
</a>
</g>
<g id="a_edge32&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher &#45;&gt; github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup (1812.91kB)">
<text text-anchor="middle" x="827" y="-990.8" font-family="Times New Roman,serif" font-size="14.00"> 1812.91kB</text>
</a>
</g>
</g>
<!-- N27 -->
<g id="node27" class="node">
<title>N27</title>
<g id="a_node27"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSite (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-969 866.5,-969 866.5,-925 969.5,-925 969.5,-969"/>
<text text-anchor="middle" x="918" y="-958.6" font-family="Times New Roman,serif" font-size="8.00">geodata</text>
<text text-anchor="middle" x="918" y="-949.6" font-family="Times New Roman,serif" font-size="8.00">(*loader)</text>
<text text-anchor="middle" x="918" y="-940.6" font-family="Times New Roman,serif" font-size="8.00">LoadGeoSite</text>
<text text-anchor="middle" x="918" y="-931.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N27 -->
<g id="edge36" class="edge">
<title>N5&#45;&gt;N27</title>
<g id="a_edge36"><a xlink:title="github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher &#45;&gt; github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSite (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M833.6,-1019.68C843.53,-1014.55 853.96,-1008.53 863,-1002 872.95,-994.81 882.82,-985.85 891.4,-977.3"/>
<polygon fill="#b28e67" stroke="#b28e67" points="893.67,-979.99 898.14,-970.38 888.65,-975.1 893.67,-979.99"/>
</a>
</g>
<g id="a_edge36&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher &#45;&gt; github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSite (1024.02kB)">
<text text-anchor="middle" x="913" y="-990.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N6 -->
<g id="node6" class="node">
<title>N6</title>
<g id="a_node6"><a xlink:title="github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).Build (1300.89kB)">
<polygon fill="#ede6e0" stroke="#b28152" points="727.5,-874 572.5,-874 572.5,-794 727.5,-794 727.5,-874"/>
<text text-anchor="middle" x="650" y="-857.2" font-family="Times New Roman,serif" font-size="16.00">strmatcher</text>
<text text-anchor="middle" x="650" y="-839.2" font-family="Times New Roman,serif" font-size="16.00">(*MphMatcherGroup)</text>
<text text-anchor="middle" x="650" y="-821.2" font-family="Times New Roman,serif" font-size="16.00">Build</text>
<text text-anchor="middle" x="650" y="-803.2" font-family="Times New Roman,serif" font-size="16.00">1300.89kB (10.71%)</text>
</a>
</g>
</g>
<!-- NN6_0 -->
<g id="NN6_0" class="node">
<title>NN6_0</title>
<g id="a_NN6_0"><a xlink:title="1300.89kB">
<polygon fill="#f8f8f8" stroke="black" points="677,-714 627,-714 623,-710 623,-678 673,-678 677,-682 677,-714"/>
<polyline fill="none" stroke="black" points="673,-710 623,-710"/>
<polyline fill="none" stroke="black" points="673,-710 673,-678"/>
<polyline fill="none" stroke="black" points="673,-710 677,-714"/>
<text text-anchor="middle" x="650" y="-694.1" font-family="Times New Roman,serif" font-size="8.00">1.14MB</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;NN6_0 -->
<g id="edge2" class="edge">
<title>N6&#45;&gt;NN6_0</title>
<g id="a_edge2"><a xlink:title="1300.89kB">
<path fill="none" stroke="black" d="M650,-793.66C650,-771.96 650,-745.5 650,-725.75"/>
<polygon fill="black" stroke="black" points="653.5,-725.94 650,-715.94 646.5,-725.94 653.5,-725.94"/>
</a>
</g>
<g id="a_edge2&#45;label"><a xlink:title="1300.89kB">
<text text-anchor="middle" x="682" y="-757.3" font-family="Times New Roman,serif" font-size="14.00"> 1300.89kB</text>
</a>
</g>
</g>
<!-- N7 -->
<g id="node7" class="node">
<title>N7</title>
<g id="a_node7"><a xlink:title="runtime.mcall (2050kB)">
<polygon fill="#ede1d9" stroke="#b25a1b" points="723,-2185 627,-2185 627,-2149 723,-2149 723,-2185"/>
<text text-anchor="middle" x="675" y="-2174.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="675" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">mcall</text>
<text text-anchor="middle" x="675" y="-2156.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2050kB (16.88%)</text>
</a>
</g>
</g>
<!-- N67 -->
<g id="node67" class="node">
<title>N67</title>
<g id="a_node67"><a xlink:title="runtime.park_m (2050kB)">
<polygon fill="#ede1d9" stroke="#b25a1b" points="723,-2072 627,-2072 627,-2036 723,-2036 723,-2072"/>
<text text-anchor="middle" x="675" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="675" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">park_m</text>
<text text-anchor="middle" x="675" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2050kB (16.88%)</text>
</a>
</g>
</g>
<!-- N7&#45;&gt;N67 -->
<g id="edge30" class="edge">
<title>N7&#45;&gt;N67</title>
<g id="a_edge30"><a xlink:title="runtime.mcall &#45;&gt; runtime.park_m (2050kB)">
<path fill="none" stroke="#b25a1b" d="M675,-2148.66C675,-2131.22 675,-2104.06 675,-2083.46"/>
<polygon fill="#b25a1b" stroke="#b25a1b" points="678.5,-2083.74 675,-2073.74 671.5,-2083.74 678.5,-2083.74"/>
</a>
</g>
<g id="a_edge30&#45;label"><a xlink:title="runtime.mcall &#45;&gt; runtime.park_m (2050kB)">
<text text-anchor="middle" x="698.5" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 2050kB</text>
</a>
</g>
</g>
<!-- N8 -->
<g id="node8" class="node">
<title>N8</title>
<g id="a_node8"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-241 866.5,-241 866.5,-197 969.5,-197 969.5,-241"/>
<text text-anchor="middle" x="918" y="-230.6" font-family="Times New Roman,serif" font-size="8.00">impl</text>
<text text-anchor="middle" x="918" y="-221.6" font-family="Times New Roman,serif" font-size="8.00">(*MessageInfo)</text>
<text text-anchor="middle" x="918" y="-212.6" font-family="Times New Roman,serif" font-size="8.00">unmarshalPointer</text>
<text text-anchor="middle" x="918" y="-203.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N9 -->
<g id="node9" class="node">
<title>N9</title>
<g id="a_node9"><a xlink:title="google.golang.org/protobuf/internal/impl.consumeStringValidateUTF8 (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="925,-146 737,-146 737,-87 925,-87 925,-146"/>
<text text-anchor="middle" x="831" y="-130" font-family="Times New Roman,serif" font-size="15.00">impl</text>
<text text-anchor="middle" x="831" y="-113" font-family="Times New Roman,serif" font-size="15.00">consumeStringValidateUTF8</text>
<text text-anchor="middle" x="831" y="-96" font-family="Times New Roman,serif" font-size="15.00">1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N9 -->
<g id="edge41" class="edge">
<title>N8&#45;&gt;N9</title>
<g id="a_edge41"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer &#45;&gt; google.golang.org/protobuf/internal/impl.consumeStringValidateUTF8 (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M866.26,-197.02C858.61,-192.06 851.47,-186.09 846,-179 841.18,-172.74 837.88,-165.15 835.63,-157.47"/>
<polygon fill="#b28e67" stroke="#b28e67" points="839.05,-156.71 833.37,-147.76 832.23,-158.29 839.05,-156.71"/>
</a>
</g>
<g id="a_edge41&#45;label"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer &#45;&gt; google.golang.org/protobuf/internal/impl.consumeStringValidateUTF8 (1024.02kB)">
<text text-anchor="middle" x="878" y="-167.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N58 -->
<g id="node58" class="node">
<title>N58</title>
<g id="a_node58"><a xlink:title="google.golang.org/protobuf/internal/impl.consumeMessageSliceInfo (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="1053,-134.5 947,-134.5 947,-98.5 1053,-98.5 1053,-134.5"/>
<text text-anchor="middle" x="1000" y="-123.6" font-family="Times New Roman,serif" font-size="8.00">impl</text>
<text text-anchor="middle" x="1000" y="-114.6" font-family="Times New Roman,serif" font-size="8.00">consumeMessageSliceInfo</text>
<text text-anchor="middle" x="1000" y="-105.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N58 -->
<g id="edge40" class="edge">
<title>N8&#45;&gt;N58</title>
<g id="a_edge40"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer &#45;&gt; google.golang.org/protobuf/internal/impl.consumeMessageSliceInfo (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M913.7,-196.67C912.69,-186.16 913.27,-173.68 919,-164 924.51,-154.68 932.66,-147.05 941.7,-140.88"/>
<polygon fill="#b28e67" stroke="#b28e67" points="943.38,-143.96 950.08,-135.75 939.72,-137.99 943.38,-143.96"/>
</a>
</g>
<g id="a_edge40&#45;label"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer &#45;&gt; google.golang.org/protobuf/internal/impl.consumeMessageSliceInfo (1024.02kB)">
<text text-anchor="middle" x="951" y="-167.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- NN9_0 -->
<g id="NN9_0" class="node">
<title>NN9_0</title>
<g id="a_NN9_0"><a xlink:title="1024.02kB">
<polygon fill="#f8f8f8" stroke="black" points="858,-36 808,-36 804,-32 804,0 854,0 858,-4 858,-36"/>
<polyline fill="none" stroke="black" points="854,-32 804,-32"/>
<polyline fill="none" stroke="black" points="854,-32 854,0"/>
<polyline fill="none" stroke="black" points="854,-32 858,-36"/>
<text text-anchor="middle" x="831" y="-16.1" font-family="Times New Roman,serif" font-size="8.00">16B</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;NN9_0 -->
<g id="edge3" class="edge">
<title>N9&#45;&gt;NN9_0</title>
<g id="a_edge3"><a xlink:title="1024.02kB">
<path fill="none" stroke="black" d="M831,-86.55C831,-74.31 831,-60.08 831,-47.85"/>
<polygon fill="black" stroke="black" points="834.5,-47.95 831,-37.95 827.5,-47.95 834.5,-47.95"/>
</a>
</g>
<g id="a_edge3&#45;label"><a xlink:title="1024.02kB">
<text text-anchor="middle" x="863" y="-57.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N6 -->
<g id="edge33" class="edge">
<title>N10&#45;&gt;N6</title>
<g id="a_edge33"><a xlink:title="github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).Build (1300.89kB)">
<path fill="none" stroke="#b28152" d="M761.18,-928.63C749.95,-922.34 737.62,-914.84 727,-907 716.75,-899.43 706.39,-890.65 696.72,-881.89"/>
<polygon fill="#b28152" stroke="#b28152" points="699.26,-879.46 689.54,-875.24 694.5,-884.6 699.26,-879.46"/>
</a>
</g>
<g id="a_edge33&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).Build (1300.89kB)">
<text text-anchor="middle" x="759" y="-895.8" font-family="Times New Roman,serif" font-size="14.00"> 1300.89kB</text>
</a>
</g>
</g>
<!-- N31 -->
<g id="node31" class="node">
<title>N31</title>
<g id="a_node31"><a xlink:title="github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddPattern (512.01kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="844,-856 746,-856 746,-812 844,-812 844,-856"/>
<text text-anchor="middle" x="795" y="-845.6" font-family="Times New Roman,serif" font-size="8.00">strmatcher</text>
<text text-anchor="middle" x="795" y="-836.6" font-family="Times New Roman,serif" font-size="8.00">(*MphMatcherGroup)</text>
<text text-anchor="middle" x="795" y="-827.6" font-family="Times New Roman,serif" font-size="8.00">AddPattern</text>
<text text-anchor="middle" x="795" y="-818.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.01kB (4.22%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N31 -->
<g id="edge71" class="edge">
<title>N10&#45;&gt;N31</title>
<g id="a_edge71"><a xlink:title="github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddPattern (512.01kB)">
<path fill="none" stroke="#b2a38c" d="M795,-928.66C795,-912.42 795,-887.75 795,-867.8"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="798.5,-867.92 795,-857.92 791.5,-867.92 798.5,-867.92"/>
</a>
</g>
<g id="a_edge71&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata/router.NewMphMatcherGroup &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddPattern (512.01kB)">
<text text-anchor="middle" x="824" y="-895.8" font-family="Times New Roman,serif" font-size="14.00"> 512.01kB</text>
</a>
</g>
</g>
<!-- N11 -->
<g id="node11" class="node">
<title>N11</title>
<g id="a_node11"><a xlink:title="runtime.gcBgMarkWorker (512.02kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="979.5,-2326.5 866.5,-2326.5 866.5,-2276.5 979.5,-2276.5 979.5,-2326.5"/>
<text text-anchor="middle" x="923" y="-2312.1" font-family="Times New Roman,serif" font-size="13.00">runtime</text>
<text text-anchor="middle" x="923" y="-2298.1" font-family="Times New Roman,serif" font-size="13.00">gcBgMarkWorker</text>
<text text-anchor="middle" x="923" y="-2284.1" font-family="Times New Roman,serif" font-size="13.00">512.02kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN11_0 -->
<g id="NN11_0" class="node">
<title>NN11_0</title>
<g id="a_NN11_0"><a xlink:title="512.02kB">
<polygon fill="#f8f8f8" stroke="black" points="950,-2185 900,-2185 896,-2181 896,-2149 946,-2149 950,-2153 950,-2185"/>
<polyline fill="none" stroke="black" points="946,-2181 896,-2181"/>
<polyline fill="none" stroke="black" points="946,-2181 946,-2149"/>
<polyline fill="none" stroke="black" points="946,-2181 950,-2185"/>
<text text-anchor="middle" x="923" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">32B</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;NN11_0 -->
<g id="edge4" class="edge">
<title>N11&#45;&gt;NN11_0</title>
<g id="a_edge4"><a xlink:title="512.02kB">
<path fill="none" stroke="black" d="M923,-2276.2C923,-2253.8 923,-2220.55 923,-2196.82"/>
<polygon fill="black" stroke="black" points="926.5,-2196.9 923,-2186.9 919.5,-2196.9 926.5,-2196.9"/>
</a>
</g>
<g id="a_edge4&#45;label"><a xlink:title="512.02kB">
<text text-anchor="middle" x="952" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 512.02kB</text>
</a>
</g>
</g>
<!-- N12 -->
<g id="node12" class="node">
<title>N12</title>
<g id="a_node12"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*ConnectionStates).Insert (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1112.5,-1175 981.5,-1175 981.5,-1107 1112.5,-1107 1112.5,-1175"/>
<text text-anchor="middle" x="1047" y="-1159.8" font-family="Times New Roman,serif" font-size="14.00">congestion</text>
<text text-anchor="middle" x="1047" y="-1144.8" font-family="Times New Roman,serif" font-size="14.00">(*ConnectionStates)</text>
<text text-anchor="middle" x="1047" y="-1129.8" font-family="Times New Roman,serif" font-size="14.00">Insert</text>
<text text-anchor="middle" x="1047" y="-1114.8" font-family="Times New Roman,serif" font-size="14.00">596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- NN12_0 -->
<g id="NN12_0" class="node">
<title>NN12_0</title>
<g id="a_NN12_0"><a xlink:title="596.16kB">
<polygon fill="#f8f8f8" stroke="black" points="1074,-1056 1024,-1056 1020,-1052 1020,-1020 1070,-1020 1074,-1024 1074,-1056"/>
<polyline fill="none" stroke="black" points="1070,-1052 1020,-1052"/>
<polyline fill="none" stroke="black" points="1070,-1052 1070,-1020"/>
<polyline fill="none" stroke="black" points="1070,-1052 1074,-1056"/>
<text text-anchor="middle" x="1047" y="-1036.1" font-family="Times New Roman,serif" font-size="8.00">160kB</text>
</a>
</g>
</g>
<!-- N12&#45;&gt;NN12_0 -->
<g id="edge5" class="edge">
<title>N12&#45;&gt;NN12_0</title>
<g id="a_edge5"><a xlink:title="596.16kB">
<path fill="none" stroke="black" d="M1047,-1106.65C1047,-1094.07 1047,-1079.87 1047,-1067.74"/>
<polygon fill="black" stroke="black" points="1050.5,-1067.96 1047,-1057.96 1043.5,-1067.96 1050.5,-1067.96"/>
</a>
</g>
<g id="a_edge5&#45;label"><a xlink:title="596.16kB">
<text text-anchor="middle" x="1076" y="-1077.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N13 -->
<g id="node13" class="node">
<title>N13</title>
<g id="a_node13"><a xlink:title="bufio.NewReaderSize (514kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1212,-1952 1114,-1952 1114,-1902 1212,-1902 1212,-1952"/>
<text text-anchor="middle" x="1163" y="-1937.6" font-family="Times New Roman,serif" font-size="13.00">bufio</text>
<text text-anchor="middle" x="1163" y="-1923.6" font-family="Times New Roman,serif" font-size="13.00">NewReaderSize</text>
<text text-anchor="middle" x="1163" y="-1909.6" font-family="Times New Roman,serif" font-size="13.00">514kB (4.23%)</text>
</a>
</g>
</g>
<!-- NN13_0 -->
<g id="NN13_0" class="node">
<title>NN13_0</title>
<g id="a_NN13_0"><a xlink:title="514kB">
<polygon fill="#f8f8f8" stroke="black" points="1190,-1833 1140,-1833 1136,-1829 1136,-1797 1186,-1797 1190,-1801 1190,-1833"/>
<polyline fill="none" stroke="black" points="1186,-1829 1136,-1829"/>
<polyline fill="none" stroke="black" points="1186,-1829 1186,-1797"/>
<polyline fill="none" stroke="black" points="1186,-1829 1190,-1833"/>
<text text-anchor="middle" x="1163" y="-1813.1" font-family="Times New Roman,serif" font-size="8.00">4kB</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;NN13_0 -->
<g id="edge6" class="edge">
<title>N13&#45;&gt;NN13_0</title>
<g id="a_edge6"><a xlink:title="514kB">
<path fill="none" stroke="black" d="M1163,-1901.59C1163,-1884.72 1163,-1862.22 1163,-1844.53"/>
<polygon fill="black" stroke="black" points="1166.5,-1844.69 1163,-1834.69 1159.5,-1844.69 1166.5,-1844.69"/>
</a>
</g>
<g id="a_edge6&#45;label"><a xlink:title="514kB">
<text text-anchor="middle" x="1183" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 514kB</text>
</a>
</g>
</g>
<!-- N14 -->
<g id="node14" class="node">
<title>N14</title>
<g id="a_node14"><a xlink:title="github.com/metacubex/quic&#45;go.init.0.func1 (512.75kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1343.5,-1966 1230.5,-1966 1230.5,-1888 1343.5,-1888 1343.5,-1966"/>
<text text-anchor="middle" x="1287" y="-1951.6" font-family="Times New Roman,serif" font-size="13.00">quic&#45;go</text>
<text text-anchor="middle" x="1287" y="-1937.6" font-family="Times New Roman,serif" font-size="13.00">init</text>
<text text-anchor="middle" x="1287" y="-1923.6" font-family="Times New Roman,serif" font-size="13.00">0</text>
<text text-anchor="middle" x="1287" y="-1909.6" font-family="Times New Roman,serif" font-size="13.00">func1</text>
<text text-anchor="middle" x="1287" y="-1895.6" font-family="Times New Roman,serif" font-size="13.00">512.75kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN14_0 -->
<g id="NN14_0" class="node">
<title>NN14_0</title>
<g id="a_NN14_0"><a xlink:title="512.75kB">
<polygon fill="#f8f8f8" stroke="black" points="1314,-1833 1264,-1833 1260,-1829 1260,-1797 1310,-1797 1314,-1801 1314,-1833"/>
<polyline fill="none" stroke="black" points="1310,-1829 1260,-1829"/>
<polyline fill="none" stroke="black" points="1310,-1829 1310,-1797"/>
<polyline fill="none" stroke="black" points="1310,-1829 1314,-1833"/>
<text text-anchor="middle" x="1287" y="-1813.1" font-family="Times New Roman,serif" font-size="8.00">1.50kB</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;NN14_0 -->
<g id="edge7" class="edge">
<title>N14&#45;&gt;NN14_0</title>
<g id="a_edge7"><a xlink:title="512.75kB">
<path fill="none" stroke="black" d="M1287,-1887.53C1287,-1873.39 1287,-1857.65 1287,-1844.54"/>
<polygon fill="black" stroke="black" points="1290.5,-1844.88 1287,-1834.88 1283.5,-1844.88 1290.5,-1844.88"/>
</a>
</g>
<g id="a_edge7&#45;label"><a xlink:title="512.75kB">
<text text-anchor="middle" x="1316" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 512.75kB</text>
</a>
</g>
</g>
<!-- N15 -->
<g id="node15" class="node">
<title>N15</title>
<g id="a_node15"><a xlink:title="github.com/Dreamacro/clash/component/trie.(*Node[...]).optimize (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1467.5,-1632 1354.5,-1632 1354.5,-1568 1467.5,-1568 1467.5,-1632"/>
<text text-anchor="middle" x="1411" y="-1617.6" font-family="Times New Roman,serif" font-size="13.00">trie</text>
<text text-anchor="middle" x="1411" y="-1603.6" font-family="Times New Roman,serif" font-size="13.00">(*Node[…])</text>
<text text-anchor="middle" x="1411" y="-1589.6" font-family="Times New Roman,serif" font-size="13.00">optimize</text>
<text text-anchor="middle" x="1411" y="-1575.6" font-family="Times New Roman,serif" font-size="13.00">512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN15_0 -->
<g id="NN15_0" class="node">
<title>NN15_0</title>
<g id="a_NN15_0"><a xlink:title="512.44kB">
<polygon fill="#f8f8f8" stroke="black" points="1438,-1492 1388,-1492 1384,-1488 1384,-1456 1434,-1456 1438,-1460 1438,-1492"/>
<polyline fill="none" stroke="black" points="1434,-1488 1384,-1488"/>
<polyline fill="none" stroke="black" points="1434,-1488 1434,-1456"/>
<polyline fill="none" stroke="black" points="1434,-1488 1438,-1492"/>
<text text-anchor="middle" x="1411" y="-1472.1" font-family="Times New Roman,serif" font-size="8.00">896B</text>
</a>
</g>
</g>
<!-- N15&#45;&gt;NN15_0 -->
<g id="edge8" class="edge">
<title>N15&#45;&gt;NN15_0</title>
<g id="a_edge8"><a xlink:title="512.44kB">
<path fill="none" stroke="black" d="M1411,-1567.71C1411,-1548.08 1411,-1522.95 1411,-1503.81"/>
<polygon fill="black" stroke="black" points="1414.5,-1504 1411,-1494 1407.5,-1504 1414.5,-1504"/>
</a>
</g>
<g id="a_edge8&#45;label"><a xlink:title="512.44kB">
<text text-anchor="middle" x="1440" y="-1538.8" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N16 -->
<g id="node16" class="node">
<title>N16</title>
<g id="a_node16"><a xlink:title="runtime.malg (512.20kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1591.5,-1952 1478.5,-1952 1478.5,-1902 1591.5,-1902 1591.5,-1952"/>
<text text-anchor="middle" x="1535" y="-1937.6" font-family="Times New Roman,serif" font-size="13.00">runtime</text>
<text text-anchor="middle" x="1535" y="-1923.6" font-family="Times New Roman,serif" font-size="13.00">malg</text>
<text text-anchor="middle" x="1535" y="-1909.6" font-family="Times New Roman,serif" font-size="13.00">512.20kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN16_0 -->
<g id="NN16_0" class="node">
<title>NN16_0</title>
<g id="a_NN16_0"><a xlink:title="512.20kB">
<polygon fill="#f8f8f8" stroke="black" points="1562,-1833 1512,-1833 1508,-1829 1508,-1797 1558,-1797 1562,-1801 1562,-1833"/>
<polyline fill="none" stroke="black" points="1558,-1829 1508,-1829"/>
<polyline fill="none" stroke="black" points="1558,-1829 1558,-1797"/>
<polyline fill="none" stroke="black" points="1558,-1829 1562,-1833"/>
<text text-anchor="middle" x="1535" y="-1813.1" font-family="Times New Roman,serif" font-size="8.00">416B</text>
</a>
</g>
</g>
<!-- N16&#45;&gt;NN16_0 -->
<g id="edge9" class="edge">
<title>N16&#45;&gt;NN16_0</title>
<g id="a_edge9"><a xlink:title="512.20kB">
<path fill="none" stroke="black" d="M1535,-1901.59C1535,-1884.72 1535,-1862.22 1535,-1844.53"/>
<polygon fill="black" stroke="black" points="1538.5,-1844.69 1535,-1834.69 1531.5,-1844.69 1538.5,-1844.69"/>
</a>
</g>
<g id="a_edge9&#45;label"><a xlink:title="512.20kB">
<text text-anchor="middle" x="1564" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 512.20kB</text>
</a>
</g>
</g>
<!-- N17 -->
<g id="node17" class="node">
<title>N17</title>
<g id="a_node17"><a xlink:title="time.NewTicker (512.05kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1715.5,-2192 1602.5,-2192 1602.5,-2142 1715.5,-2142 1715.5,-2192"/>
<text text-anchor="middle" x="1659" y="-2177.6" font-family="Times New Roman,serif" font-size="13.00">time</text>
<text text-anchor="middle" x="1659" y="-2163.6" font-family="Times New Roman,serif" font-size="13.00">NewTicker</text>
<text text-anchor="middle" x="1659" y="-2149.6" font-family="Times New Roman,serif" font-size="13.00">512.05kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN17_0 -->
<g id="NN17_0" class="node">
<title>NN17_0</title>
<g id="a_NN17_0"><a xlink:title="512.05kB">
<polygon fill="#f8f8f8" stroke="black" points="1686,-2072 1636,-2072 1632,-2068 1632,-2036 1682,-2036 1686,-2040 1686,-2072"/>
<polyline fill="none" stroke="black" points="1682,-2068 1632,-2068"/>
<polyline fill="none" stroke="black" points="1682,-2068 1682,-2036"/>
<polyline fill="none" stroke="black" points="1682,-2068 1686,-2072"/>
<text text-anchor="middle" x="1659" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">96B</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;NN17_0 -->
<g id="edge10" class="edge">
<title>N17&#45;&gt;NN17_0</title>
<g id="a_edge10"><a xlink:title="512.05kB">
<path fill="none" stroke="black" d="M1659,-2141.64C1659,-2124.63 1659,-2101.86 1659,-2083.93"/>
<polygon fill="black" stroke="black" points="1662.5,-2083.93 1659,-2073.93 1655.5,-2083.93 1662.5,-2083.93"/>
</a>
</g>
<g id="a_edge10&#45;label"><a xlink:title="512.05kB">
<text text-anchor="middle" x="1688" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 512.05kB</text>
</a>
</g>
</g>
<!-- N18 -->
<g id="node18" class="node">
<title>N18</title>
<g id="a_node18"><a xlink:title="github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddFullOrDomainPattern (512.01kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="843,-728 695,-728 695,-664 843,-664 843,-728"/>
<text text-anchor="middle" x="769" y="-713.6" font-family="Times New Roman,serif" font-size="13.00">strmatcher</text>
<text text-anchor="middle" x="769" y="-699.6" font-family="Times New Roman,serif" font-size="13.00">(*MphMatcherGroup)</text>
<text text-anchor="middle" x="769" y="-685.6" font-family="Times New Roman,serif" font-size="13.00">AddFullOrDomainPattern</text>
<text text-anchor="middle" x="769" y="-671.6" font-family="Times New Roman,serif" font-size="13.00">512.01kB (4.22%)</text>
</a>
</g>
</g>
<!-- NN18_0 -->
<g id="NN18_0" class="node">
<title>NN18_0</title>
<g id="a_NN18_0"><a xlink:title="512.01kB">
<polygon fill="#f8f8f8" stroke="black" points="796,-609 746,-609 742,-605 742,-573 792,-573 796,-577 796,-609"/>
<polyline fill="none" stroke="black" points="792,-605 742,-605"/>
<polyline fill="none" stroke="black" points="792,-605 792,-573"/>
<polyline fill="none" stroke="black" points="792,-605 796,-609"/>
<text text-anchor="middle" x="769" y="-589.1" font-family="Times New Roman,serif" font-size="8.00">24B</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;NN18_0 -->
<g id="edge11" class="edge">
<title>N18&#45;&gt;NN18_0</title>
<g id="a_edge11"><a xlink:title="512.01kB">
<path fill="none" stroke="black" d="M769,-663.54C769,-649.86 769,-633.94 769,-620.6"/>
<polygon fill="black" stroke="black" points="772.5,-620.73 769,-610.73 765.5,-620.73 772.5,-620.73"/>
</a>
</g>
<g id="a_edge11&#45;label"><a xlink:title="512.01kB">
<text text-anchor="middle" x="798" y="-634.8" font-family="Times New Roman,serif" font-size="14.00"> 512.01kB</text>
</a>
</g>
</g>
<!-- N19 -->
<g id="node19" class="node">
<title>N19</title>
<g id="a_node19"><a xlink:title="github.com/metacubex/quic&#45;go.(*client).dial.func1 (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-2328 998,-2328 998,-2275 1096,-2275 1096,-2328"/>
<text text-anchor="middle" x="1047" y="-2317.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1047" y="-2308.6" font-family="Times New Roman,serif" font-size="8.00">(*client)</text>
<text text-anchor="middle" x="1047" y="-2299.6" font-family="Times New Roman,serif" font-size="8.00">dial</text>
<text text-anchor="middle" x="1047" y="-2290.6" font-family="Times New Roman,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="1047" y="-2281.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N49 -->
<g id="node49" class="node">
<title>N49</title>
<g id="a_node49"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).run (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-2189 998,-2189 998,-2145 1096,-2145 1096,-2189"/>
<text text-anchor="middle" x="1047" y="-2178.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1047" y="-2169.6" font-family="Times New Roman,serif" font-size="8.00">(*connection)</text>
<text text-anchor="middle" x="1047" y="-2160.6" font-family="Times New Roman,serif" font-size="8.00">run</text>
<text text-anchor="middle" x="1047" y="-2151.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N49 -->
<g id="edge47" class="edge">
<title>N19&#45;&gt;N49</title>
<g id="a_edge47"><a xlink:title="github.com/metacubex/quic&#45;go.(*client).dial.func1 &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).run (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-2274.64C1047,-2253.57 1047,-2223.69 1047,-2200.92"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-2200.94 1047,-2190.94 1043.5,-2200.94 1050.5,-2200.94"/>
</a>
</g>
<g id="a_edge47&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*client).dial.func1 &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).run (596.16kB)">
<text text-anchor="middle" x="1076" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N20 -->
<g id="node20" class="node">
<title>N20</title>
<g id="a_node20"><a xlink:title="github.com/Dreamacro/clash/listener/mixed.handleConn (514kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1206.5,-2319.5 1119.5,-2319.5 1119.5,-2283.5 1206.5,-2283.5 1206.5,-2319.5"/>
<text text-anchor="middle" x="1163" y="-2308.6" font-family="Times New Roman,serif" font-size="8.00">mixed</text>
<text text-anchor="middle" x="1163" y="-2299.6" font-family="Times New Roman,serif" font-size="8.00">handleConn</text>
<text text-anchor="middle" x="1163" y="-2290.6" font-family="Times New Roman,serif" font-size="8.00">0 of 514kB (4.23%)</text>
</a>
</g>
</g>
<!-- N26 -->
<g id="node26" class="node">
<title>N26</title>
<g id="a_node26"><a xlink:title="github.com/Dreamacro/clash/common/net.NewBufferedConn (514kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1206.5,-2185 1119.5,-2185 1119.5,-2149 1206.5,-2149 1206.5,-2185"/>
<text text-anchor="middle" x="1163" y="-2174.1" font-family="Times New Roman,serif" font-size="8.00">net</text>
<text text-anchor="middle" x="1163" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">NewBufferedConn</text>
<text text-anchor="middle" x="1163" y="-2156.1" font-family="Times New Roman,serif" font-size="8.00">0 of 514kB (4.23%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N26 -->
<g id="edge57" class="edge">
<title>N20&#45;&gt;N26</title>
<g id="a_edge57"><a xlink:title="github.com/Dreamacro/clash/listener/mixed.handleConn &#45;&gt; github.com/Dreamacro/clash/common/net.NewBufferedConn (514kB)">
<path fill="none" stroke="#b2a38c" d="M1163,-2283.18C1163,-2261.16 1163,-2222.84 1163,-2196.49"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1166.5,-2196.84 1163,-2186.84 1159.5,-2196.84 1166.5,-2196.84"/>
</a>
</g>
<g id="a_edge57&#45;label"><a xlink:title="github.com/Dreamacro/clash/listener/mixed.handleConn &#45;&gt; github.com/Dreamacro/clash/common/net.NewBufferedConn (514kB)">
<text text-anchor="middle" x="1183" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 514kB</text>
</a>
</g>
</g>
<!-- N21 -->
<g id="node21" class="node">
<title>N21</title>
<g id="a_node21"><a xlink:title="github.com/metacubex/quic&#45;go.(*packetHandlerMap).listen (512.75kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1336,-2323.5 1238,-2323.5 1238,-2279.5 1336,-2279.5 1336,-2323.5"/>
<text text-anchor="middle" x="1287" y="-2313.1" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1287" y="-2304.1" font-family="Times New Roman,serif" font-size="8.00">(*packetHandlerMap)</text>
<text text-anchor="middle" x="1287" y="-2295.1" font-family="Times New Roman,serif" font-size="8.00">listen</text>
<text text-anchor="middle" x="1287" y="-2286.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.75kB (4.22%)</text>
</a>
</g>
</g>
<!-- N48 -->
<g id="node48" class="node">
<title>N48</title>
<g id="a_node48"><a xlink:title="github.com/metacubex/quic&#45;go.(*basicConn).ReadPacket (512.75kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1336,-2189 1238,-2189 1238,-2145 1336,-2145 1336,-2189"/>
<text text-anchor="middle" x="1287" y="-2178.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1287" y="-2169.6" font-family="Times New Roman,serif" font-size="8.00">(*basicConn)</text>
<text text-anchor="middle" x="1287" y="-2160.6" font-family="Times New Roman,serif" font-size="8.00">ReadPacket</text>
<text text-anchor="middle" x="1287" y="-2151.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.75kB (4.22%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N48 -->
<g id="edge59" class="edge">
<title>N21&#45;&gt;N48</title>
<g id="a_edge59"><a xlink:title="github.com/metacubex/quic&#45;go.(*packetHandlerMap).listen &#45;&gt; github.com/metacubex/quic&#45;go.(*basicConn).ReadPacket (512.75kB)">
<path fill="none" stroke="#b2a38c" d="M1287,-2279.21C1287,-2257.96 1287,-2225.03 1287,-2200.51"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1290.5,-2200.75 1287,-2190.75 1283.5,-2200.75 1290.5,-2200.75"/>
</a>
</g>
<g id="a_edge59&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*packetHandlerMap).listen &#45;&gt; github.com/metacubex/quic&#45;go.(*basicConn).ReadPacket (512.75kB)">
<text text-anchor="middle" x="1316" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 512.75kB</text>
</a>
</g>
</g>
<!-- N22 -->
<g id="node22" class="node">
<title>N22</title>
<g id="a_node22"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadRuleProvider.func1 (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-2323.5 1362,-2323.5 1362,-2279.5 1460,-2279.5 1460,-2323.5"/>
<text text-anchor="middle" x="1411" y="-2313.1" font-family="Times New Roman,serif" font-size="8.00">executor</text>
<text text-anchor="middle" x="1411" y="-2304.1" font-family="Times New Roman,serif" font-size="8.00">loadRuleProvider</text>
<text text-anchor="middle" x="1411" y="-2295.1" font-family="Times New Roman,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="1411" y="-2286.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N40 -->
<g id="node40" class="node">
<title>N40</title>
<g id="a_node40"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadProvider (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-2185 1362,-2185 1362,-2149 1460,-2149 1460,-2185"/>
<text text-anchor="middle" x="1411" y="-2174.1" font-family="Times New Roman,serif" font-size="8.00">executor</text>
<text text-anchor="middle" x="1411" y="-2165.1" font-family="Times New Roman,serif" font-size="8.00">loadProvider</text>
<text text-anchor="middle" x="1411" y="-2156.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N40 -->
<g id="edge63" class="edge">
<title>N22&#45;&gt;N40</title>
<g id="a_edge63"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadRuleProvider.func1 &#45;&gt; github.com/Dreamacro/clash/hub/executor.loadProvider (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-2279.21C1411,-2256.83 1411,-2221.49 1411,-2196.67"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-2196.94 1411,-2186.94 1407.5,-2196.94 1414.5,-2196.94"/>
</a>
</g>
<g id="a_edge63&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadRuleProvider.func1 &#45;&gt; github.com/Dreamacro/clash/hub/executor.loadProvider (512.44kB)">
<text text-anchor="middle" x="1440" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N23 -->
<g id="node23" class="node">
<title>N23</title>
<g id="a_node23"><a xlink:title="runtime.systemstack (512.20kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1584,-2319.5 1486,-2319.5 1486,-2283.5 1584,-2283.5 1584,-2319.5"/>
<text text-anchor="middle" x="1535" y="-2308.6" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="1535" y="-2299.6" font-family="Times New Roman,serif" font-size="8.00">systemstack</text>
<text text-anchor="middle" x="1535" y="-2290.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.20kB (4.22%)</text>
</a>
</g>
</g>
<!-- N65 -->
<g id="node65" class="node">
<title>N65</title>
<g id="a_node65"><a xlink:title="runtime.newproc.func1 (512.20kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1584,-2189 1486,-2189 1486,-2145 1584,-2145 1584,-2189"/>
<text text-anchor="middle" x="1535" y="-2178.6" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="1535" y="-2169.6" font-family="Times New Roman,serif" font-size="8.00">newproc</text>
<text text-anchor="middle" x="1535" y="-2160.6" font-family="Times New Roman,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="1535" y="-2151.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.20kB (4.22%)</text>
</a>
</g>
</g>
<!-- N23&#45;&gt;N65 -->
<g id="edge69" class="edge">
<title>N23&#45;&gt;N65</title>
<g id="a_edge69"><a xlink:title="runtime.systemstack &#45;&gt; runtime.newproc.func1 (512.20kB)">
<path fill="none" stroke="#b2a38c" d="M1535,-2283.18C1535,-2262.25 1535,-2226.61 1535,-2200.51"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1538.5,-2200.78 1535,-2190.78 1531.5,-2200.78 1538.5,-2200.78"/>
</a>
</g>
<g id="a_edge69&#45;label"><a xlink:title="runtime.systemstack &#45;&gt; runtime.newproc.func1 (512.20kB)">
<text text-anchor="middle" x="1564" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 512.20kB</text>
</a>
</g>
</g>
<!-- N24 -->
<g id="node24" class="node">
<title>N24</title>
<g id="a_node24"><a xlink:title="github.com/Dreamacro/clash/tunnel/statistic.(*Manager).handle (512.05kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1708,-2323.5 1610,-2323.5 1610,-2279.5 1708,-2279.5 1708,-2323.5"/>
<text text-anchor="middle" x="1659" y="-2313.1" font-family="Times New Roman,serif" font-size="8.00">statistic</text>
<text text-anchor="middle" x="1659" y="-2304.1" font-family="Times New Roman,serif" font-size="8.00">(*Manager)</text>
<text text-anchor="middle" x="1659" y="-2295.1" font-family="Times New Roman,serif" font-size="8.00">handle</text>
<text text-anchor="middle" x="1659" y="-2286.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.05kB (4.22%)</text>
</a>
</g>
</g>
<!-- N24&#45;&gt;N17 -->
<g id="edge70" class="edge">
<title>N24&#45;&gt;N17</title>
<g id="a_edge70"><a xlink:title="github.com/Dreamacro/clash/tunnel/statistic.(*Manager).handle &#45;&gt; time.NewTicker (512.05kB)">
<path fill="none" stroke="#b2a38c" d="M1659,-2279.21C1659,-2258.84 1659,-2227.74 1659,-2203.6"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1662.5,-2203.9 1659,-2193.9 1655.5,-2203.9 1662.5,-2203.9"/>
</a>
</g>
<g id="a_edge70&#45;label"><a xlink:title="github.com/Dreamacro/clash/tunnel/statistic.(*Manager).handle &#45;&gt; time.NewTicker (512.05kB)">
<text text-anchor="middle" x="1688" y="-2213.8" font-family="Times New Roman,serif" font-size="14.00"> 512.05kB</text>
</a>
</g>
</g>
<!-- N25 -->
<g id="node25" class="node">
<title>N25</title>
<g id="a_node25"><a xlink:title="bufio.NewReader (514kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1206.5,-2072 1119.5,-2072 1119.5,-2036 1206.5,-2036 1206.5,-2072"/>
<text text-anchor="middle" x="1163" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">bufio</text>
<text text-anchor="middle" x="1163" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">NewReader</text>
<text text-anchor="middle" x="1163" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 514kB (4.23%)</text>
</a>
</g>
</g>
<!-- N25&#45;&gt;N13 -->
<g id="edge55" class="edge">
<title>N25&#45;&gt;N13</title>
<g id="a_edge55"><a xlink:title="bufio.NewReader &#45;&gt; bufio.NewReaderSize (514kB)">
<path fill="none" stroke="#b2a38c" d="M1163,-2035.62C1163,-2017.03 1163,-1987.02 1163,-1963.42"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1166.5,-1963.6 1163,-1953.6 1159.5,-1963.6 1166.5,-1963.6"/>
</a>
</g>
<g id="a_edge55&#45;label"><a xlink:title="bufio.NewReader &#45;&gt; bufio.NewReaderSize (514kB)">
<text text-anchor="middle" x="1184" y="-2002.8" font-family="Times New Roman,serif" font-size="14.00"> 514kB</text>
<text text-anchor="middle" x="1184" y="-1987.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N26&#45;&gt;N25 -->
<g id="edge56" class="edge">
<title>N26&#45;&gt;N25</title>
<g id="a_edge56"><a xlink:title="github.com/Dreamacro/clash/common/net.NewBufferedConn &#45;&gt; bufio.NewReader (514kB)">
<path fill="none" stroke="#b2a38c" d="M1163,-2148.66C1163,-2131.22 1163,-2104.06 1163,-2083.46"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1166.5,-2083.74 1163,-2073.74 1159.5,-2083.74 1166.5,-2083.74"/>
</a>
</g>
<g id="a_edge56&#45;label"><a xlink:title="github.com/Dreamacro/clash/common/net.NewBufferedConn &#45;&gt; bufio.NewReader (514kB)">
<text text-anchor="middle" x="1184" y="-2112.8" font-family="Times New Roman,serif" font-size="14.00"> 514kB</text>
<text text-anchor="middle" x="1184" y="-2097.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N28 -->
<g id="node28" class="node">
<title>N28</title>
<g id="a_node28"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSiteWithAttr (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-856 866.5,-856 866.5,-812 969.5,-812 969.5,-856"/>
<text text-anchor="middle" x="918" y="-845.6" font-family="Times New Roman,serif" font-size="8.00">geodata</text>
<text text-anchor="middle" x="918" y="-836.6" font-family="Times New Roman,serif" font-size="8.00">(*loader)</text>
<text text-anchor="middle" x="918" y="-827.6" font-family="Times New Roman,serif" font-size="8.00">LoadGeoSiteWithAttr</text>
<text text-anchor="middle" x="918" y="-818.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N28 -->
<g id="edge34" class="edge">
<title>N27&#45;&gt;N28</title>
<g id="a_edge34"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSite &#45;&gt; github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSiteWithAttr (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-924.6C918,-908.47 918,-886.08 918,-867.72"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-867.85 918,-857.85 914.5,-867.85 921.5,-867.85"/>
</a>
</g>
<g id="a_edge34&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSite &#45;&gt; github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSiteWithAttr (1024.02kB)">
<text text-anchor="middle" x="950" y="-895.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N29 -->
<g id="node29" class="node">
<title>N29</title>
<g id="a_node29"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.(*memConservativeLoader).LoadSiteByPath (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="975,-718 861,-718 861,-674 975,-674 975,-718"/>
<text text-anchor="middle" x="918" y="-707.6" font-family="Times New Roman,serif" font-size="8.00">memconservative</text>
<text text-anchor="middle" x="918" y="-698.6" font-family="Times New Roman,serif" font-size="8.00">(*memConservativeLoader)</text>
<text text-anchor="middle" x="918" y="-689.6" font-family="Times New Roman,serif" font-size="8.00">LoadSiteByPath</text>
<text text-anchor="middle" x="918" y="-680.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N28&#45;&gt;N29 -->
<g id="edge35" class="edge">
<title>N28&#45;&gt;N29</title>
<g id="a_edge35"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSiteWithAttr &#45;&gt; github.com/Dreamacro/clash/component/geodata/memconservative.(*memConservativeLoader).LoadSiteByPath (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-811.75C918,-789.69 918,-754.92 918,-729.43"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-729.61 918,-719.61 914.5,-729.61 921.5,-729.61"/>
</a>
</g>
<g id="a_edge35&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata.(*loader).LoadGeoSiteWithAttr &#45;&gt; github.com/Dreamacro/clash/component/geodata/memconservative.(*memConservativeLoader).LoadSiteByPath (1024.02kB)">
<text text-anchor="middle" x="950" y="-757.3" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N30 -->
<g id="node30" class="node">
<title>N30</title>
<g id="a_node30"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.GeoSiteCache.Unmarshal (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-613 866.5,-613 866.5,-569 969.5,-569 969.5,-613"/>
<text text-anchor="middle" x="918" y="-602.6" font-family="Times New Roman,serif" font-size="8.00">memconservative</text>
<text text-anchor="middle" x="918" y="-593.6" font-family="Times New Roman,serif" font-size="8.00">GeoSiteCache</text>
<text text-anchor="middle" x="918" y="-584.6" font-family="Times New Roman,serif" font-size="8.00">Unmarshal</text>
<text text-anchor="middle" x="918" y="-575.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N30 -->
<g id="edge37" class="edge">
<title>N29&#45;&gt;N30</title>
<g id="a_edge37"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.(*memConservativeLoader).LoadSiteByPath &#45;&gt; github.com/Dreamacro/clash/component/geodata/memconservative.GeoSiteCache.Unmarshal (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-673.66C918,-659.43 918,-640.47 918,-624.4"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-624.83 918,-614.83 914.5,-624.83 921.5,-624.83"/>
</a>
</g>
<g id="a_edge37&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.(*memConservativeLoader).LoadSiteByPath &#45;&gt; github.com/Dreamacro/clash/component/geodata/memconservative.GeoSiteCache.Unmarshal (1024.02kB)">
<text text-anchor="middle" x="950" y="-634.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N59 -->
<g id="node59" class="node">
<title>N59</title>
<g id="a_node59"><a xlink:title="google.golang.org/protobuf/proto.Unmarshal (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-518 866.5,-518 866.5,-482 969.5,-482 969.5,-518"/>
<text text-anchor="middle" x="918" y="-507.1" font-family="Times New Roman,serif" font-size="8.00">proto</text>
<text text-anchor="middle" x="918" y="-498.1" font-family="Times New Roman,serif" font-size="8.00">Unmarshal</text>
<text text-anchor="middle" x="918" y="-489.1" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N59 -->
<g id="edge38" class="edge">
<title>N30&#45;&gt;N59</title>
<g id="a_edge38"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.GeoSiteCache.Unmarshal &#45;&gt; google.golang.org/protobuf/proto.Unmarshal (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-568.91C918,-557.22 918,-542.52 918,-529.79"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-529.87 918,-519.87 914.5,-529.87 921.5,-529.87"/>
</a>
</g>
<g id="a_edge38&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata/memconservative.GeoSiteCache.Unmarshal &#45;&gt; google.golang.org/protobuf/proto.Unmarshal (1024.02kB)">
<text text-anchor="middle" x="950" y="-539.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N31&#45;&gt;N18 -->
<g id="edge72" class="edge">
<title>N31&#45;&gt;N18</title>
<g id="a_edge72"><a xlink:title="github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddPattern &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddFullOrDomainPattern (512.01kB)">
<path fill="none" stroke="#b2a38c" d="M790.94,-811.75C787.27,-792.55 781.76,-763.72 777.18,-739.76"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="780.61,-739.11 775.3,-729.94 773.74,-740.42 780.61,-739.11"/>
</a>
</g>
<g id="a_edge72&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddPattern &#45;&gt; github.com/Dreamacro/clash/component/geodata/strmatcher.(*MphMatcherGroup).AddFullOrDomainPattern (512.01kB)">
<text text-anchor="middle" x="813" y="-764.8" font-family="Times New Roman,serif" font-size="14.00"> 512.01kB</text>
<text text-anchor="middle" x="813" y="-749.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N32 -->
<g id="node32" class="node">
<title>N32</title>
<g id="a_node32"><a xlink:title="github.com/Dreamacro/clash/component/trie.(*DomainTrie[...]).Optimize (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-1727 1362,-1727 1362,-1683 1460,-1683 1460,-1727"/>
<text text-anchor="middle" x="1411" y="-1716.6" font-family="Times New Roman,serif" font-size="8.00">trie</text>
<text text-anchor="middle" x="1411" y="-1707.6" font-family="Times New Roman,serif" font-size="8.00">(*DomainTrie[…])</text>
<text text-anchor="middle" x="1411" y="-1698.6" font-family="Times New Roman,serif" font-size="8.00">Optimize</text>
<text text-anchor="middle" x="1411" y="-1689.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N32&#45;&gt;N15 -->
<g id="edge61" class="edge">
<title>N32&#45;&gt;N15</title>
<g id="a_edge61"><a xlink:title="github.com/Dreamacro/clash/component/trie.(*DomainTrie[...]).Optimize &#45;&gt; github.com/Dreamacro/clash/component/trie.(*Node[...]).optimize (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-1682.66C1411,-1671.45 1411,-1657.29 1411,-1643.93"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-1644 1411,-1634 1407.5,-1644 1414.5,-1644"/>
</a>
</g>
<g id="a_edge61&#45;label"><a xlink:title="github.com/Dreamacro/clash/component/trie.(*DomainTrie[...]).Optimize &#45;&gt; github.com/Dreamacro/clash/component/trie.(*Node[...]).optimize (512.44kB)">
<text text-anchor="middle" x="1440" y="-1653.8" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N33 -->
<g id="node33" class="node">
<title>N33</title>
<g id="a_node33"><a xlink:title="github.com/Dreamacro/clash/config.Parse (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1618 741.5,-1618 741.5,-1582 848.5,-1582 848.5,-1618"/>
<text text-anchor="middle" x="795" y="-1607.1" font-family="Times New Roman,serif" font-size="8.00">config</text>
<text text-anchor="middle" x="795" y="-1598.1" font-family="Times New Roman,serif" font-size="8.00">Parse</text>
<text text-anchor="middle" x="795" y="-1589.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N34 -->
<g id="node34" class="node">
<title>N34</title>
<g id="a_node34"><a xlink:title="github.com/Dreamacro/clash/config.ParseRawConfig (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1492 741.5,-1492 741.5,-1456 848.5,-1456 848.5,-1492"/>
<text text-anchor="middle" x="795" y="-1481.1" font-family="Times New Roman,serif" font-size="8.00">config</text>
<text text-anchor="middle" x="795" y="-1472.1" font-family="Times New Roman,serif" font-size="8.00">ParseRawConfig</text>
<text text-anchor="middle" x="795" y="-1463.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N33&#45;&gt;N34 -->
<g id="edge19" class="edge">
<title>N33&#45;&gt;N34</title>
<g id="a_edge19"><a xlink:title="github.com/Dreamacro/clash/config.Parse &#45;&gt; github.com/Dreamacro/clash/config.ParseRawConfig (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1581.76C795,-1562.07 795,-1529.47 795,-1505.47"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1505.52 795,-1495.52 791.5,-1505.52 798.5,-1505.52"/>
</a>
</g>
<g id="a_edge19&#45;label"><a xlink:title="github.com/Dreamacro/clash/config.Parse &#45;&gt; github.com/Dreamacro/clash/config.ParseRawConfig (2836.92kB)">
<text text-anchor="middle" x="827" y="-1538.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N35 -->
<g id="node35" class="node">
<title>N35</title>
<g id="a_node35"><a xlink:title="github.com/Dreamacro/clash/config.parseRules (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1376 741.5,-1376 741.5,-1340 848.5,-1340 848.5,-1376"/>
<text text-anchor="middle" x="795" y="-1365.1" font-family="Times New Roman,serif" font-size="8.00">config</text>
<text text-anchor="middle" x="795" y="-1356.1" font-family="Times New Roman,serif" font-size="8.00">parseRules</text>
<text text-anchor="middle" x="795" y="-1347.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N35 -->
<g id="edge20" class="edge">
<title>N34&#45;&gt;N35</title>
<g id="a_edge20"><a xlink:title="github.com/Dreamacro/clash/config.ParseRawConfig &#45;&gt; github.com/Dreamacro/clash/config.parseRules (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1455.69C795,-1438.11 795,-1410.54 795,-1389.33"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1389.5 795,-1379.5 791.5,-1389.5 798.5,-1389.5"/>
</a>
</g>
<g id="a_edge20&#45;label"><a xlink:title="github.com/Dreamacro/clash/config.ParseRawConfig &#45;&gt; github.com/Dreamacro/clash/config.parseRules (2836.92kB)">
<text text-anchor="middle" x="827" y="-1401.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N41 -->
<g id="node41" class="node">
<title>N41</title>
<g id="a_node41"><a xlink:title="github.com/Dreamacro/clash/rules.ParseRule (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1281 741.5,-1281 741.5,-1245 848.5,-1245 848.5,-1281"/>
<text text-anchor="middle" x="795" y="-1270.1" font-family="Times New Roman,serif" font-size="8.00">rules</text>
<text text-anchor="middle" x="795" y="-1261.1" font-family="Times New Roman,serif" font-size="8.00">ParseRule</text>
<text text-anchor="middle" x="795" y="-1252.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N35&#45;&gt;N41 -->
<g id="edge21" class="edge">
<title>N35&#45;&gt;N41</title>
<g id="a_edge21"><a xlink:title="github.com/Dreamacro/clash/config.parseRules &#45;&gt; github.com/Dreamacro/clash/rules.ParseRule (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1339.51C795,-1326.78 795,-1309.22 795,-1294.24"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1294.44 795,-1284.44 791.5,-1294.44 798.5,-1294.44"/>
</a>
</g>
<g id="a_edge21&#45;label"><a xlink:title="github.com/Dreamacro/clash/config.parseRules &#45;&gt; github.com/Dreamacro/clash/rules.ParseRule (2836.92kB)">
<text text-anchor="middle" x="827" y="-1306.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N36 -->
<g id="node36" class="node">
<title>N36</title>
<g id="a_node36"><a xlink:title="github.com/Dreamacro/clash/hub.Parse (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-2072 741.5,-2072 741.5,-2036 848.5,-2036 848.5,-2072"/>
<text text-anchor="middle" x="795" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">hub</text>
<text text-anchor="middle" x="795" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">Parse</text>
<text text-anchor="middle" x="795" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N37 -->
<g id="node37" class="node">
<title>N37</title>
<g id="a_node37"><a xlink:title="github.com/Dreamacro/clash/hub/executor.Parse (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1945 741.5,-1945 741.5,-1909 848.5,-1909 848.5,-1945"/>
<text text-anchor="middle" x="795" y="-1934.1" font-family="Times New Roman,serif" font-size="8.00">executor</text>
<text text-anchor="middle" x="795" y="-1925.1" font-family="Times New Roman,serif" font-size="8.00">Parse</text>
<text text-anchor="middle" x="795" y="-1916.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N37 -->
<g id="edge22" class="edge">
<title>N36&#45;&gt;N37</title>
<g id="a_edge22"><a xlink:title="github.com/Dreamacro/clash/hub.Parse &#45;&gt; github.com/Dreamacro/clash/hub/executor.Parse (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-2035.62C795,-2015.56 795,-1982.23 795,-1957.97"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1958.26 795,-1948.26 791.5,-1958.26 798.5,-1958.26"/>
</a>
</g>
<g id="a_edge22&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub.Parse &#45;&gt; github.com/Dreamacro/clash/hub/executor.Parse (2836.92kB)">
<text text-anchor="middle" x="827" y="-2002.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
<text text-anchor="middle" x="827" y="-1987.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N39 -->
<g id="node39" class="node">
<title>N39</title>
<g id="a_node39"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithPath (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1833 741.5,-1833 741.5,-1797 848.5,-1797 848.5,-1833"/>
<text text-anchor="middle" x="795" y="-1822.1" font-family="Times New Roman,serif" font-size="8.00">executor</text>
<text text-anchor="middle" x="795" y="-1813.1" font-family="Times New Roman,serif" font-size="8.00">ParseWithPath</text>
<text text-anchor="middle" x="795" y="-1804.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N39 -->
<g id="edge23" class="edge">
<title>N37&#45;&gt;N39</title>
<g id="a_edge23"><a xlink:title="github.com/Dreamacro/clash/hub/executor.Parse &#45;&gt; github.com/Dreamacro/clash/hub/executor.ParseWithPath (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1908.81C795,-1892.12 795,-1866.42 795,-1846.29"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1846.46 795,-1836.46 791.5,-1846.46 798.5,-1846.46"/>
</a>
</g>
<g id="a_edge23&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub/executor.Parse &#45;&gt; github.com/Dreamacro/clash/hub/executor.ParseWithPath (2836.92kB)">
<text text-anchor="middle" x="827" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N38 -->
<g id="node38" class="node">
<title>N38</title>
<g id="a_node38"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithBytes (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1723 741.5,-1723 741.5,-1687 848.5,-1687 848.5,-1723"/>
<text text-anchor="middle" x="795" y="-1712.1" font-family="Times New Roman,serif" font-size="8.00">executor</text>
<text text-anchor="middle" x="795" y="-1703.1" font-family="Times New Roman,serif" font-size="8.00">ParseWithBytes</text>
<text text-anchor="middle" x="795" y="-1694.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N38&#45;&gt;N33 -->
<g id="edge24" class="edge">
<title>N38&#45;&gt;N33</title>
<g id="a_edge24"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithBytes &#45;&gt; github.com/Dreamacro/clash/config.Parse (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1686.53C795,-1671.34 795,-1649.01 795,-1630.98"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1631.24 795,-1621.24 791.5,-1631.24 798.5,-1631.24"/>
</a>
</g>
<g id="a_edge24&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithBytes &#45;&gt; github.com/Dreamacro/clash/config.Parse (2836.92kB)">
<text text-anchor="middle" x="827" y="-1653.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N38 -->
<g id="edge25" class="edge">
<title>N39&#45;&gt;N38</title>
<g id="a_edge25"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithPath &#45;&gt; github.com/Dreamacro/clash/hub/executor.ParseWithBytes (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1796.65C795,-1780.35 795,-1755.62 795,-1736.11"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1736.34 795,-1726.34 791.5,-1736.34 798.5,-1736.34"/>
</a>
</g>
<g id="a_edge25&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub/executor.ParseWithPath &#45;&gt; github.com/Dreamacro/clash/hub/executor.ParseWithBytes (2836.92kB)">
<text text-anchor="middle" x="827" y="-1763.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
<text text-anchor="middle" x="827" y="-1748.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N44 -->
<g id="node44" class="node">
<title>N44</title>
<g id="a_node44"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*ruleSetProvider).Initial (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-2076 1362,-2076 1362,-2032 1460,-2032 1460,-2076"/>
<text text-anchor="middle" x="1411" y="-2065.6" font-family="Times New Roman,serif" font-size="8.00">provider</text>
<text text-anchor="middle" x="1411" y="-2056.6" font-family="Times New Roman,serif" font-size="8.00">(*ruleSetProvider)</text>
<text text-anchor="middle" x="1411" y="-2047.6" font-family="Times New Roman,serif" font-size="8.00">Initial</text>
<text text-anchor="middle" x="1411" y="-2038.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N44 -->
<g id="edge62" class="edge">
<title>N40&#45;&gt;N44</title>
<g id="a_edge62"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadProvider &#45;&gt; github.com/Dreamacro/clash/rules/provider.(*ruleSetProvider).Initial (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-2148.66C1411,-2132.42 1411,-2107.75 1411,-2087.8"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-2087.92 1411,-2077.92 1407.5,-2087.92 1414.5,-2087.92"/>
</a>
</g>
<g id="a_edge62&#45;label"><a xlink:title="github.com/Dreamacro/clash/hub/executor.loadProvider &#45;&gt; github.com/Dreamacro/clash/rules/provider.(*ruleSetProvider).Initial (512.44kB)">
<text text-anchor="middle" x="1440" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N42 -->
<g id="node42" class="node">
<title>N42</title>
<g id="a_node42"><a xlink:title="github.com/Dreamacro/clash/rules/common.NewGEOSITE (2836.92kB)">
<polygon fill="#edddd5" stroke="#b23f00" points="848.5,-1159 741.5,-1159 741.5,-1123 848.5,-1123 848.5,-1159"/>
<text text-anchor="middle" x="795" y="-1148.1" font-family="Times New Roman,serif" font-size="8.00">common</text>
<text text-anchor="middle" x="795" y="-1139.1" font-family="Times New Roman,serif" font-size="8.00">NewGEOSITE</text>
<text text-anchor="middle" x="795" y="-1130.1" font-family="Times New Roman,serif" font-size="8.00">0 of 2836.92kB (23.36%)</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N42 -->
<g id="edge26" class="edge">
<title>N41&#45;&gt;N42</title>
<g id="a_edge26"><a xlink:title="github.com/Dreamacro/clash/rules.ParseRule &#45;&gt; github.com/Dreamacro/clash/rules/common.NewGEOSITE (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1244.55C795,-1225.62 795,-1195.05 795,-1172.2"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1172.5 795,-1162.5 791.5,-1172.5 798.5,-1172.5"/>
</a>
</g>
<g id="a_edge26&#45;label"><a xlink:title="github.com/Dreamacro/clash/rules.ParseRule &#45;&gt; github.com/Dreamacro/clash/rules/common.NewGEOSITE (2836.92kB)">
<text text-anchor="middle" x="827" y="-1204.3" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N42&#45;&gt;N5 -->
<g id="edge27" class="edge">
<title>N42&#45;&gt;N5</title>
<g id="a_edge27"><a xlink:title="github.com/Dreamacro/clash/rules/common.NewGEOSITE &#45;&gt; github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-1122.87C795,-1108.21 795,-1086.77 795,-1069.24"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-1069.24 795,-1059.24 791.5,-1069.24 798.5,-1069.24"/>
</a>
</g>
<g id="a_edge27&#45;label"><a xlink:title="github.com/Dreamacro/clash/rules/common.NewGEOSITE &#45;&gt; github.com/Dreamacro/clash/component/geodata.LoadGeoSiteMatcher (2836.92kB)">
<text text-anchor="middle" x="827" y="-1077.8" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N43 -->
<g id="node43" class="node">
<title>N43</title>
<g id="a_node43"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*domainStrategy).OnUpdate (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-1837 1362,-1837 1362,-1793 1460,-1793 1460,-1837"/>
<text text-anchor="middle" x="1411" y="-1826.6" font-family="Times New Roman,serif" font-size="8.00">provider</text>
<text text-anchor="middle" x="1411" y="-1817.6" font-family="Times New Roman,serif" font-size="8.00">(*domainStrategy)</text>
<text text-anchor="middle" x="1411" y="-1808.6" font-family="Times New Roman,serif" font-size="8.00">OnUpdate</text>
<text text-anchor="middle" x="1411" y="-1799.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N43&#45;&gt;N32 -->
<g id="edge64" class="edge">
<title>N43&#45;&gt;N32</title>
<g id="a_edge64"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*domainStrategy).OnUpdate &#45;&gt; github.com/Dreamacro/clash/component/trie.(*DomainTrie[...]).Optimize (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-1792.66C1411,-1777.28 1411,-1756.23 1411,-1738.73"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-1738.81 1411,-1728.81 1407.5,-1738.81 1414.5,-1738.81"/>
</a>
</g>
<g id="a_edge64&#45;label"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*domainStrategy).OnUpdate &#45;&gt; github.com/Dreamacro/clash/component/trie.(*DomainTrie[...]).Optimize (512.44kB)">
<text text-anchor="middle" x="1440" y="-1756.3" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N45 -->
<g id="node45" class="node">
<title>N45</title>
<g id="a_node45"><a xlink:title="github.com/Dreamacro/clash/rules/provider.NewRuleSetProvider.func1 (512.44kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1460,-1949 1362,-1949 1362,-1905 1460,-1905 1460,-1949"/>
<text text-anchor="middle" x="1411" y="-1938.6" font-family="Times New Roman,serif" font-size="8.00">provider</text>
<text text-anchor="middle" x="1411" y="-1929.6" font-family="Times New Roman,serif" font-size="8.00">NewRuleSetProvider</text>
<text text-anchor="middle" x="1411" y="-1920.6" font-family="Times New Roman,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="1411" y="-1911.6" font-family="Times New Roman,serif" font-size="8.00">0 of 512.44kB (4.22%)</text>
</a>
</g>
</g>
<!-- N44&#45;&gt;N45 -->
<g id="edge65" class="edge">
<title>N44&#45;&gt;N45</title>
<g id="a_edge65"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*ruleSetProvider).Initial &#45;&gt; github.com/Dreamacro/clash/rules/provider.NewRuleSetProvider.func1 (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-2031.51C1411,-2011.99 1411,-1982.9 1411,-1960.53"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-1960.72 1411,-1950.72 1407.5,-1960.72 1414.5,-1960.72"/>
</a>
</g>
<g id="a_edge65&#45;label"><a xlink:title="github.com/Dreamacro/clash/rules/provider.(*ruleSetProvider).Initial &#45;&gt; github.com/Dreamacro/clash/rules/provider.NewRuleSetProvider.func1 (512.44kB)">
<text text-anchor="middle" x="1440" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N45&#45;&gt;N43 -->
<g id="edge66" class="edge">
<title>N45&#45;&gt;N43</title>
<g id="a_edge66"><a xlink:title="github.com/Dreamacro/clash/rules/provider.NewRuleSetProvider.func1 &#45;&gt; github.com/Dreamacro/clash/rules/provider.(*domainStrategy).OnUpdate (512.44kB)">
<path fill="none" stroke="#b2a38c" d="M1411,-1904.53C1411,-1888.71 1411,-1866.89 1411,-1848.88"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1414.5,-1848.93 1411,-1838.93 1407.5,-1848.93 1414.5,-1848.93"/>
</a>
</g>
<g id="a_edge66&#45;label"><a xlink:title="github.com/Dreamacro/clash/rules/provider.NewRuleSetProvider.func1 &#45;&gt; github.com/Dreamacro/clash/rules/provider.(*domainStrategy).OnUpdate (512.44kB)">
<text text-anchor="middle" x="1440" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 512.44kB</text>
</a>
</g>
</g>
<!-- N46 -->
<g id="node46" class="node">
<title>N46</title>
<g id="a_node46"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*BandwidthSampler).OnPacketSent (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1285 998,-1285 998,-1241 1096,-1241 1096,-1285"/>
<text text-anchor="middle" x="1047" y="-1274.6" font-family="Times New Roman,serif" font-size="8.00">congestion</text>
<text text-anchor="middle" x="1047" y="-1265.6" font-family="Times New Roman,serif" font-size="8.00">(*BandwidthSampler)</text>
<text text-anchor="middle" x="1047" y="-1256.6" font-family="Times New Roman,serif" font-size="8.00">OnPacketSent</text>
<text text-anchor="middle" x="1047" y="-1247.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N12 -->
<g id="edge45" class="edge">
<title>N46&#45;&gt;N12</title>
<g id="a_edge45"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*BandwidthSampler).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*ConnectionStates).Insert (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1240.55C1047,-1225.54 1047,-1204.97 1047,-1186.49"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1186.55 1047,-1176.55 1043.5,-1186.55 1050.5,-1186.55"/>
</a>
</g>
<g id="a_edge45&#45;label"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*BandwidthSampler).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*ConnectionStates).Insert (596.16kB)">
<text text-anchor="middle" x="1076" y="-1211.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
<text text-anchor="middle" x="1076" y="-1196.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N47 -->
<g id="node47" class="node">
<title>N47</title>
<g id="a_node47"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*bbrSender).OnPacketSent (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1380 998,-1380 998,-1336 1096,-1336 1096,-1380"/>
<text text-anchor="middle" x="1047" y="-1369.6" font-family="Times New Roman,serif" font-size="8.00">congestion</text>
<text text-anchor="middle" x="1047" y="-1360.6" font-family="Times New Roman,serif" font-size="8.00">(*bbrSender)</text>
<text text-anchor="middle" x="1047" y="-1351.6" font-family="Times New Roman,serif" font-size="8.00">OnPacketSent</text>
<text text-anchor="middle" x="1047" y="-1342.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N47&#45;&gt;N46 -->
<g id="edge46" class="edge">
<title>N47&#45;&gt;N46</title>
<g id="a_edge46"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*bbrSender).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*BandwidthSampler).OnPacketSent (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1335.9C1047,-1324.33 1047,-1309.73 1047,-1296.72"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1296.86 1047,-1286.86 1043.5,-1296.86 1050.5,-1296.86"/>
</a>
</g>
<g id="a_edge46&#45;label"><a xlink:title="github.com/Dreamacro/clash/transport/tuic/congestion.(*bbrSender).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*BandwidthSampler).OnPacketSent (596.16kB)">
<text text-anchor="middle" x="1076" y="-1306.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N53 -->
<g id="node53" class="node">
<title>N53</title>
<g id="a_node53"><a xlink:title="github.com/metacubex/quic&#45;go.getPacketBuffer (512.75kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1336,-2072 1238,-2072 1238,-2036 1336,-2036 1336,-2072"/>
<text text-anchor="middle" x="1287" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1287" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">getPacketBuffer</text>
<text text-anchor="middle" x="1287" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.75kB (4.22%)</text>
</a>
</g>
</g>
<!-- N48&#45;&gt;N53 -->
<g id="edge58" class="edge">
<title>N48&#45;&gt;N53</title>
<g id="a_edge58"><a xlink:title="github.com/metacubex/quic&#45;go.(*basicConn).ReadPacket &#45;&gt; github.com/metacubex/quic&#45;go.getPacketBuffer (512.75kB)">
<path fill="none" stroke="#b2a38c" d="M1287,-2144.6C1287,-2127.26 1287,-2102.66 1287,-2083.62"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1290.5,-2083.84 1287,-2073.84 1283.5,-2083.84 1290.5,-2083.84"/>
</a>
</g>
<g id="a_edge58&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*basicConn).ReadPacket &#45;&gt; github.com/metacubex/quic&#45;go.getPacketBuffer (512.75kB)">
<text text-anchor="middle" x="1316" y="-2112.8" font-family="Times New Roman,serif" font-size="14.00"> 512.75kB</text>
<text text-anchor="middle" x="1316" y="-2097.8" font-family="Times New Roman,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N52 -->
<g id="node52" class="node">
<title>N52</title>
<g id="a_node52"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackets (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-2076 998,-2076 998,-2032 1096,-2032 1096,-2076"/>
<text text-anchor="middle" x="1047" y="-2065.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1047" y="-2056.6" font-family="Times New Roman,serif" font-size="8.00">(*connection)</text>
<text text-anchor="middle" x="1047" y="-2047.6" font-family="Times New Roman,serif" font-size="8.00">sendPackets</text>
<text text-anchor="middle" x="1047" y="-2038.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N49&#45;&gt;N52 -->
<g id="edge48" class="edge">
<title>N49&#45;&gt;N52</title>
<g id="a_edge48"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).run &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPackets (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-2144.6C1047,-2128.47 1047,-2106.08 1047,-2087.72"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-2087.85 1047,-2077.85 1043.5,-2087.85 1050.5,-2087.85"/>
</a>
</g>
<g id="a_edge48&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).run &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPackets (596.16kB)">
<text text-anchor="middle" x="1076" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N50 -->
<g id="node50" class="node">
<title>N50</title>
<g id="a_node50"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackedPacket (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1837 998,-1837 998,-1793 1096,-1793 1096,-1837"/>
<text text-anchor="middle" x="1047" y="-1826.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1047" y="-1817.6" font-family="Times New Roman,serif" font-size="8.00">(*connection)</text>
<text text-anchor="middle" x="1047" y="-1808.6" font-family="Times New Roman,serif" font-size="8.00">sendPackedPacket</text>
<text text-anchor="middle" x="1047" y="-1799.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N55 -->
<g id="node55" class="node">
<title>N55</title>
<g id="a_node55"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).SentPacket (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1727 998,-1727 998,-1683 1096,-1683 1096,-1727"/>
<text text-anchor="middle" x="1047" y="-1716.6" font-family="Times New Roman,serif" font-size="8.00">ackhandler</text>
<text text-anchor="middle" x="1047" y="-1707.6" font-family="Times New Roman,serif" font-size="8.00">(*sentPacketHandler)</text>
<text text-anchor="middle" x="1047" y="-1698.6" font-family="Times New Roman,serif" font-size="8.00">SentPacket</text>
<text text-anchor="middle" x="1047" y="-1689.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N50&#45;&gt;N55 -->
<g id="edge49" class="edge">
<title>N50&#45;&gt;N55</title>
<g id="a_edge49"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackedPacket &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).SentPacket (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1792.66C1047,-1777.28 1047,-1756.23 1047,-1738.73"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1738.81 1047,-1728.81 1043.5,-1738.81 1050.5,-1738.81"/>
</a>
</g>
<g id="a_edge49&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackedPacket &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).SentPacket (596.16kB)">
<text text-anchor="middle" x="1076" y="-1756.3" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N51 -->
<g id="node51" class="node">
<title>N51</title>
<g id="a_node51"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPacket (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1949 998,-1949 998,-1905 1096,-1905 1096,-1949"/>
<text text-anchor="middle" x="1047" y="-1938.6" font-family="Times New Roman,serif" font-size="8.00">quic&#45;go</text>
<text text-anchor="middle" x="1047" y="-1929.6" font-family="Times New Roman,serif" font-size="8.00">(*connection)</text>
<text text-anchor="middle" x="1047" y="-1920.6" font-family="Times New Roman,serif" font-size="8.00">sendPacket</text>
<text text-anchor="middle" x="1047" y="-1911.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N50 -->
<g id="edge50" class="edge">
<title>N51&#45;&gt;N50</title>
<g id="a_edge50"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPacket &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPackedPacket (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1904.53C1047,-1888.71 1047,-1866.89 1047,-1848.88"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1848.93 1047,-1838.93 1043.5,-1848.93 1050.5,-1848.93"/>
</a>
</g>
<g id="a_edge50&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPacket &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPackedPacket (596.16kB)">
<text text-anchor="middle" x="1076" y="-1858.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N52&#45;&gt;N51 -->
<g id="edge51" class="edge">
<title>N52&#45;&gt;N51</title>
<g id="a_edge51"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackets &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPacket (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-2031.51C1047,-2011.99 1047,-1982.9 1047,-1960.53"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1960.72 1047,-1950.72 1043.5,-1960.72 1050.5,-1960.72"/>
</a>
</g>
<g id="a_edge51&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.(*connection).sendPackets &#45;&gt; github.com/metacubex/quic&#45;go.(*connection).sendPacket (596.16kB)">
<text text-anchor="middle" x="1076" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N53&#45;&gt;N14 -->
<g id="edge60" class="edge">
<title>N53&#45;&gt;N14</title>
<g id="a_edge60"><a xlink:title="github.com/metacubex/quic&#45;go.getPacketBuffer ... github.com/metacubex/quic&#45;go.init.0.func1 (512.75kB)">
<path fill="none" stroke="#b2a38c" stroke-dasharray="1,5" d="M1287,-2035.62C1287,-2020.63 1287,-1998.24 1287,-1977.75"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1290.5,-1977.81 1287,-1967.81 1283.5,-1977.81 1290.5,-1977.81"/>
</a>
</g>
<g id="a_edge60&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go.getPacketBuffer ... github.com/metacubex/quic&#45;go.init.0.func1 (512.75kB)">
<text text-anchor="middle" x="1316" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 512.75kB</text>
</a>
</g>
</g>
<!-- N54 -->
<g id="node54" class="node">
<title>N54</title>
<g id="a_node54"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*ccAdapter).OnPacketSent (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1496 998,-1496 998,-1452 1096,-1452 1096,-1496"/>
<text text-anchor="middle" x="1047" y="-1485.6" font-family="Times New Roman,serif" font-size="8.00">ackhandler</text>
<text text-anchor="middle" x="1047" y="-1476.6" font-family="Times New Roman,serif" font-size="8.00">(*ccAdapter)</text>
<text text-anchor="middle" x="1047" y="-1467.6" font-family="Times New Roman,serif" font-size="8.00">OnPacketSent</text>
<text text-anchor="middle" x="1047" y="-1458.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N54&#45;&gt;N47 -->
<g id="edge52" class="edge">
<title>N54&#45;&gt;N47</title>
<g id="a_edge52"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*ccAdapter).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*bbrSender).OnPacketSent (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1451.56C1047,-1434.68 1047,-1410.88 1047,-1391.63"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1391.86 1047,-1381.86 1043.5,-1391.86 1050.5,-1391.86"/>
</a>
</g>
<g id="a_edge52&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*ccAdapter).OnPacketSent &#45;&gt; github.com/Dreamacro/clash/transport/tuic/congestion.(*bbrSender).OnPacketSent (596.16kB)">
<text text-anchor="middle" x="1076" y="-1401.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N56 -->
<g id="node56" class="node">
<title>N56</title>
<g id="a_node56"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).sentPacketImpl (596.16kB)">
<polygon fill="#edeae7" stroke="#b2a086" points="1096,-1622 998,-1622 998,-1578 1096,-1578 1096,-1622"/>
<text text-anchor="middle" x="1047" y="-1611.6" font-family="Times New Roman,serif" font-size="8.00">ackhandler</text>
<text text-anchor="middle" x="1047" y="-1602.6" font-family="Times New Roman,serif" font-size="8.00">(*sentPacketHandler)</text>
<text text-anchor="middle" x="1047" y="-1593.6" font-family="Times New Roman,serif" font-size="8.00">sentPacketImpl</text>
<text text-anchor="middle" x="1047" y="-1584.6" font-family="Times New Roman,serif" font-size="8.00">0 of 596.16kB (4.91%)</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N56 -->
<g id="edge53" class="edge">
<title>N55&#45;&gt;N56</title>
<g id="a_edge53"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).SentPacket &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).sentPacketImpl (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1682.66C1047,-1668.43 1047,-1649.47 1047,-1633.4"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1633.83 1047,-1623.83 1043.5,-1633.83 1050.5,-1633.83"/>
</a>
</g>
<g id="a_edge53&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).SentPacket &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).sentPacketImpl (596.16kB)">
<text text-anchor="middle" x="1076" y="-1653.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N56&#45;&gt;N54 -->
<g id="edge54" class="edge">
<title>N56&#45;&gt;N54</title>
<g id="a_edge54"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).sentPacketImpl &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*ccAdapter).OnPacketSent (596.16kB)">
<path fill="none" stroke="#b2a086" d="M1047,-1577.68C1047,-1558.43 1047,-1529.81 1047,-1507.67"/>
<polygon fill="#b2a086" stroke="#b2a086" points="1050.5,-1507.97 1047,-1497.97 1043.5,-1507.97 1050.5,-1507.97"/>
</a>
</g>
<g id="a_edge54&#45;label"><a xlink:title="github.com/metacubex/quic&#45;go/internal/ackhandler.(*sentPacketHandler).sentPacketImpl &#45;&gt; github.com/metacubex/quic&#45;go/internal/ackhandler.(*ccAdapter).OnPacketSent (596.16kB)">
<text text-anchor="middle" x="1076" y="-1538.8" font-family="Times New Roman,serif" font-size="14.00"> 596.16kB</text>
</a>
</g>
</g>
<!-- N57 -->
<g id="node57" class="node">
<title>N57</title>
<g id="a_node57"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshal (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-336 866.5,-336 866.5,-292 969.5,-292 969.5,-336"/>
<text text-anchor="middle" x="918" y="-325.6" font-family="Times New Roman,serif" font-size="8.00">impl</text>
<text text-anchor="middle" x="918" y="-316.6" font-family="Times New Roman,serif" font-size="8.00">(*MessageInfo)</text>
<text text-anchor="middle" x="918" y="-307.6" font-family="Times New Roman,serif" font-size="8.00">unmarshal</text>
<text text-anchor="middle" x="918" y="-298.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N8 -->
<g id="edge39" class="edge">
<title>N57&#45;&gt;N8</title>
<g id="a_edge39"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshal &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-291.9C918,-280.33 918,-265.73 918,-252.72"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-252.86 918,-242.86 914.5,-252.86 921.5,-252.86"/>
</a>
</g>
<g id="a_edge39&#45;label"><a xlink:title="google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshal &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer (1024.02kB)">
<text text-anchor="middle" x="950" y="-262.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N58&#45;&gt;N8 -->
<g id="edge42" class="edge">
<title>N58&#45;&gt;N8</title>
<g id="a_edge42"><a xlink:title="google.golang.org/protobuf/internal/impl.consumeMessageSliceInfo &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M998.67,-134.95C996.88,-148.18 992.72,-166.21 983,-179 980.09,-182.83 976.68,-186.36 972.98,-189.6"/>
<polygon fill="#b28e67" stroke="#b28e67" points="970.86,-186.82 965.11,-195.71 975.15,-192.35 970.86,-186.82"/>
</a>
</g>
<g id="a_edge42&#45;label"><a xlink:title="google.golang.org/protobuf/internal/impl.consumeMessageSliceInfo &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshalPointer (1024.02kB)">
<text text-anchor="middle" x="1023" y="-167.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N60 -->
<g id="node60" class="node">
<title>N60</title>
<g id="a_node60"><a xlink:title="google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal (1024.02kB)">
<polygon fill="#ede8e3" stroke="#b28e67" points="969.5,-431 866.5,-431 866.5,-387 969.5,-387 969.5,-431"/>
<text text-anchor="middle" x="918" y="-420.6" font-family="Times New Roman,serif" font-size="8.00">proto</text>
<text text-anchor="middle" x="918" y="-411.6" font-family="Times New Roman,serif" font-size="8.00">UnmarshalOptions</text>
<text text-anchor="middle" x="918" y="-402.6" font-family="Times New Roman,serif" font-size="8.00">unmarshal</text>
<text text-anchor="middle" x="918" y="-393.6" font-family="Times New Roman,serif" font-size="8.00">0 of 1024.02kB (8.43%)</text>
</a>
</g>
</g>
<!-- N59&#45;&gt;N60 -->
<g id="edge43" class="edge">
<title>N59&#45;&gt;N60</title>
<g id="a_edge43"><a xlink:title="google.golang.org/protobuf/proto.Unmarshal &#45;&gt; google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-481.84C918,-470.67 918,-455.74 918,-442.39"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-442.7 918,-432.7 914.5,-442.7 921.5,-442.7"/>
</a>
</g>
<g id="a_edge43&#45;label"><a xlink:title="google.golang.org/protobuf/proto.Unmarshal &#45;&gt; google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal (1024.02kB)">
<text text-anchor="middle" x="950" y="-452.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N60&#45;&gt;N57 -->
<g id="edge44" class="edge">
<title>N60&#45;&gt;N57</title>
<g id="a_edge44"><a xlink:title="google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshal (1024.02kB)">
<path fill="none" stroke="#b28e67" d="M918,-386.9C918,-375.33 918,-360.73 918,-347.72"/>
<polygon fill="#b28e67" stroke="#b28e67" points="921.5,-347.86 918,-337.86 914.5,-347.86 921.5,-347.86"/>
</a>
</g>
<g id="a_edge44&#45;label"><a xlink:title="google.golang.org/protobuf/proto.UnmarshalOptions.unmarshal &#45;&gt; google.golang.org/protobuf/internal/impl.(*MessageInfo).unmarshal (1024.02kB)">
<text text-anchor="middle" x="950" y="-357.8" font-family="Times New Roman,serif" font-size="14.00"> 1024.02kB</text>
</a>
</g>
</g>
<!-- N61&#45;&gt;N36 -->
<g id="edge28" class="edge">
<title>N61&#45;&gt;N36</title>
<g id="a_edge28"><a xlink:title="main.main &#45;&gt; github.com/Dreamacro/clash/hub.Parse (2836.92kB)">
<path fill="none" stroke="#b23f00" stroke-width="2" d="M795,-2148.66C795,-2131.71 795,-2105.57 795,-2085.21"/>
<polygon fill="#b23f00" stroke="#b23f00" stroke-width="2" points="798.5,-2085.25 795,-2075.25 791.5,-2085.25 798.5,-2085.25"/>
</a>
</g>
<g id="a_edge28&#45;label"><a xlink:title="main.main &#45;&gt; github.com/Dreamacro/clash/hub.Parse (2836.92kB)">
<text text-anchor="middle" x="827" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 2836.92kB</text>
</a>
</g>
</g>
<!-- N63 -->
<g id="node63" class="node">
<title>N63</title>
<g id="a_node63"><a xlink:title="runtime.mstart1 (3587.50kB)">
<polygon fill="#eddcd5" stroke="#b23600" points="608.5,-2072 501.5,-2072 501.5,-2036 608.5,-2036 608.5,-2072"/>
<text text-anchor="middle" x="555" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">mstart1</text>
<text text-anchor="middle" x="555" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 3587.50kB (29.54%)</text>
</a>
</g>
</g>
<!-- N62&#45;&gt;N63 -->
<g id="edge17" class="edge">
<title>N62&#45;&gt;N63</title>
<g id="a_edge17"><a xlink:title="runtime.mstart0 &#45;&gt; runtime.mstart1 (3587.50kB)">
<path fill="none" stroke="#b23600" stroke-width="2" d="M555,-2148.66C555,-2131.71 555,-2105.57 555,-2085.21"/>
<polygon fill="#b23600" stroke="#b23600" stroke-width="2" points="558.5,-2085.25 555,-2075.25 551.5,-2085.25 558.5,-2085.25"/>
</a>
</g>
<g id="a_edge17&#45;label"><a xlink:title="runtime.mstart0 &#45;&gt; runtime.mstart1 (3587.50kB)">
<text text-anchor="middle" x="587" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 3587.50kB</text>
</a>
</g>
</g>
<!-- N63&#45;&gt;N2 -->
<g id="edge18" class="edge">
<title>N63&#45;&gt;N2</title>
<g id="a_edge18"><a xlink:title="runtime.mstart1 &#45;&gt; runtime.schedule (3587.50kB)">
<path fill="none" stroke="#b23600" stroke-width="2" d="M555,-2035.62C555,-2015.56 555,-1982.23 555,-1957.97"/>
<polygon fill="#b23600" stroke="#b23600" stroke-width="2" points="558.5,-1958.26 555,-1948.26 551.5,-1958.26 558.5,-1958.26"/>
</a>
</g>
<g id="a_edge18&#45;label"><a xlink:title="runtime.mstart1 &#45;&gt; runtime.schedule (3587.50kB)">
<text text-anchor="middle" x="587" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 3587.50kB</text>
</a>
</g>
</g>
<!-- N64 -->
<g id="node64" class="node">
<title>N64</title>
<g id="a_node64"><a xlink:title="runtime.newm (5637.50kB)">
<polygon fill="#eddad5" stroke="#b22400" points="608.5,-1618 501.5,-1618 501.5,-1582 608.5,-1582 608.5,-1618"/>
<text text-anchor="middle" x="555" y="-1607.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-1598.1" font-family="Times New Roman,serif" font-size="8.00">newm</text>
<text text-anchor="middle" x="555" y="-1589.1" font-family="Times New Roman,serif" font-size="8.00">0 of 5637.50kB (46.41%)</text>
</a>
</g>
</g>
<!-- N64&#45;&gt;N1 -->
<g id="edge12" class="edge">
<title>N64&#45;&gt;N1</title>
<g id="a_edge12"><a xlink:title="runtime.newm &#45;&gt; runtime.allocm (5637.50kB)">
<path fill="none" stroke="#b22400" stroke-width="3" d="M555,-1581.76C555,-1568.68 555,-1549.92 555,-1531.76"/>
<polygon fill="#b22400" stroke="#b22400" stroke-width="3" points="558.5,-1531.99 555,-1521.99 551.5,-1531.99 558.5,-1531.99"/>
</a>
</g>
<g id="a_edge12&#45;label"><a xlink:title="runtime.newm &#45;&gt; runtime.allocm (5637.50kB)">
<text text-anchor="middle" x="587" y="-1538.8" font-family="Times New Roman,serif" font-size="14.00"> 5637.50kB</text>
</a>
</g>
</g>
<!-- N66 -->
<g id="node66" class="node">
<title>N66</title>
<g id="a_node66"><a xlink:title="runtime.newproc1 (512.20kB)">
<polygon fill="#edebe8" stroke="#b2a38c" points="1584,-2072 1486,-2072 1486,-2036 1584,-2036 1584,-2072"/>
<text text-anchor="middle" x="1535" y="-2061.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="1535" y="-2052.1" font-family="Times New Roman,serif" font-size="8.00">newproc1</text>
<text text-anchor="middle" x="1535" y="-2043.1" font-family="Times New Roman,serif" font-size="8.00">0 of 512.20kB (4.22%)</text>
</a>
</g>
</g>
<!-- N65&#45;&gt;N66 -->
<g id="edge67" class="edge">
<title>N65&#45;&gt;N66</title>
<g id="a_edge67"><a xlink:title="runtime.newproc.func1 &#45;&gt; runtime.newproc1 (512.20kB)">
<path fill="none" stroke="#b2a38c" d="M1535,-2144.6C1535,-2127.26 1535,-2102.66 1535,-2083.62"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1538.5,-2083.84 1535,-2073.84 1531.5,-2083.84 1538.5,-2083.84"/>
</a>
</g>
<g id="a_edge67&#45;label"><a xlink:title="runtime.newproc.func1 &#45;&gt; runtime.newproc1 (512.20kB)">
<text text-anchor="middle" x="1564" y="-2105.3" font-family="Times New Roman,serif" font-size="14.00"> 512.20kB</text>
</a>
</g>
</g>
<!-- N66&#45;&gt;N16 -->
<g id="edge68" class="edge">
<title>N66&#45;&gt;N16</title>
<g id="a_edge68"><a xlink:title="runtime.newproc1 &#45;&gt; runtime.malg (512.20kB)">
<path fill="none" stroke="#b2a38c" d="M1535,-2035.62C1535,-2017.03 1535,-1987.02 1535,-1963.42"/>
<polygon fill="#b2a38c" stroke="#b2a38c" points="1538.5,-1963.6 1535,-1953.6 1531.5,-1963.6 1538.5,-1963.6"/>
</a>
</g>
<g id="a_edge68&#45;label"><a xlink:title="runtime.newproc1 &#45;&gt; runtime.malg (512.20kB)">
<text text-anchor="middle" x="1564" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 512.20kB</text>
</a>
</g>
</g>
<!-- N67&#45;&gt;N2 -->
<g id="edge31" class="edge">
<title>N67&#45;&gt;N2</title>
<g id="a_edge31"><a xlink:title="runtime.park_m &#45;&gt; runtime.schedule (2050kB)">
<path fill="none" stroke="#b25a1b" d="M663.64,-2035.66C653.74,-2021.15 638.56,-2000.25 623,-1984 612.32,-1972.84 599.48,-1961.78 587.85,-1952.46"/>
<polygon fill="#b25a1b" stroke="#b25a1b" points="590.06,-1949.75 580.04,-1946.33 585.74,-1955.26 590.06,-1949.75"/>
</a>
</g>
<g id="a_edge31&#45;label"><a xlink:title="runtime.park_m &#45;&gt; runtime.schedule (2050kB)">
<text text-anchor="middle" x="671.5" y="-1995.3" font-family="Times New Roman,serif" font-size="14.00"> 2050kB</text>
</a>
</g>
</g>
<!-- N69 -->
<g id="node69" class="node">
<title>N69</title>
<g id="a_node69"><a xlink:title="runtime.startm (5637.50kB)">
<polygon fill="#eddad5" stroke="#b22400" points="608.5,-1723 501.5,-1723 501.5,-1687 608.5,-1687 608.5,-1723"/>
<text text-anchor="middle" x="555" y="-1712.1" font-family="Times New Roman,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="555" y="-1703.1" font-family="Times New Roman,serif" font-size="8.00">startm</text>
<text text-anchor="middle" x="555" y="-1694.1" font-family="Times New Roman,serif" font-size="8.00">0 of 5637.50kB (46.41%)</text>
</a>
</g>
</g>
<!-- N68&#45;&gt;N69 -->
<g id="edge13" class="edge">
<title>N68&#45;&gt;N69</title>
<g id="a_edge13"><a xlink:title="runtime.resetspinning ... runtime.startm (5637.50kB)">
<path fill="none" stroke="#b22400" stroke-width="3" stroke-dasharray="1,5" d="M555,-1796.65C555,-1780.82 555,-1757.05 555,-1737.82"/>
<polygon fill="#b22400" stroke="#b22400" stroke-width="3" points="558.5,-1737.85 555,-1727.85 551.5,-1737.85 558.5,-1737.85"/>
</a>
</g>
<g id="a_edge13&#45;label"><a xlink:title="runtime.resetspinning ... runtime.startm (5637.50kB)">
<text text-anchor="middle" x="587" y="-1756.3" font-family="Times New Roman,serif" font-size="14.00"> 5637.50kB</text>
</a>
</g>
</g>
<!-- N69&#45;&gt;N64 -->
<g id="edge15" class="edge">
<title>N69&#45;&gt;N64</title>
<g id="a_edge15"><a xlink:title="runtime.startm &#45;&gt; runtime.newm (5637.50kB)">
<path fill="none" stroke="#b22400" stroke-width="3" d="M555,-1686.53C555,-1671.79 555,-1650.32 555,-1632.58"/>
<polygon fill="#b22400" stroke="#b22400" stroke-width="3" points="558.5,-1632.76 555,-1622.76 551.5,-1632.76 558.5,-1632.76"/>
</a>
</g>
<g id="a_edge15&#45;label"><a xlink:title="runtime.startm &#45;&gt; runtime.newm (5637.50kB)">
<text text-anchor="middle" x="587" y="-1653.8" font-family="Times New Roman,serif" font-size="14.00"> 5637.50kB</text>
</a>
</g>
</g>
</g>
</g></svg>