Skip to content

Instantly share code, notes, and snippets.

@shogo82148
Created October 27, 2018 04:54
Show Gist options
  • Save shogo82148/3b8c28125e73ac66f93e8b6ac64ee7a8 to your computer and use it in GitHub Desktop.
Save shogo82148/3b8c28125e73ac66f93e8b6ac64ee7a8 to your computer and use it in GitHub Desktop.
Profiles of go-langserver
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
-->
<!-- Title: go&#45;langserver 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 <[email protected]>. 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 3404)">
<title>go&#45;langserver</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-3404 2665.9224,-3404 2665.9224,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_L</title>
<polygon fill="none" stroke="#000000" points="250.4741,-3240 250.4741,-3392 676.4741,-3392 676.4741,-3240 250.4741,-3240"/>
</g>
<!-- File: go&#45;langserver -->
<g id="node1" class="node">
<title>File: go&#45;langserver</title>
<g id="a_node1"><a xlink:title="go&#45;langserver">
<polygon fill="#f8f8f8" stroke="#000000" points="668.5993,-3384 258.349,-3384 258.349,-3248 668.5993,-3248 668.5993,-3384"/>
<text text-anchor="start" x="266.1616" y="-3367.2" font-family="Times,serif" font-size="16.00" fill="#000000">File: go&#45;langserver</text>
<text text-anchor="start" x="266.1616" y="-3351.2" font-family="Times,serif" font-size="16.00" fill="#000000">Type: cpu</text>
<text text-anchor="start" x="266.1616" y="-3335.2" font-family="Times,serif" font-size="16.00" fill="#000000">Time: Oct 27, 2018 at 1:28pm (JST)</text>
<text text-anchor="start" x="266.1616" y="-3319.2" font-family="Times,serif" font-size="16.00" fill="#000000">Duration: 30.08s, Total samples = 48.61s (161.60%)</text>
<text text-anchor="start" x="266.1616" y="-3303.2" font-family="Times,serif" font-size="16.00" fill="#000000">Showing nodes accounting for 37.93s, 78.03% of 48.61s total</text>
<text text-anchor="start" x="266.1616" y="-3287.2" font-family="Times,serif" font-size="16.00" fill="#000000">Dropped 491 nodes (cum &lt;= 0.24s)</text>
<text text-anchor="start" x="266.1616" y="-3271.2" font-family="Times,serif" font-size="16.00" fill="#000000">Dropped 90 edges (freq &lt;= 0.05s)</text>
<text text-anchor="start" x="266.1616" y="-3255.2" font-family="Times,serif" font-size="16.00" fill="#000000">Showing top 80 nodes out of 292</text>
</a>
</g>
</g>
<!-- N1 -->
<g id="node1" class="node">
<title>N1</title>
<g id="a_node1"><a xlink:title="syscall.Syscall (13.02s)">
<polygon fill="#edddd5" stroke="#b23a00" points="799.283,-1712 597.6653,-1712 597.6653,-1608 799.283,-1608 799.283,-1712"/>
<text text-anchor="middle" x="698.4741" y="-1688.8" font-family="Times,serif" font-size="24.00" fill="#000000">syscall</text>
<text text-anchor="middle" x="698.4741" y="-1664.8" font-family="Times,serif" font-size="24.00" fill="#000000">Syscall</text>
<text text-anchor="middle" x="698.4741" y="-1640.8" font-family="Times,serif" font-size="24.00" fill="#000000">12.97s (26.68%)</text>
<text text-anchor="middle" x="698.4741" y="-1616.8" font-family="Times,serif" font-size="24.00" fill="#000000">of 13.02s (26.78%)</text>
</a>
</g>
</g>
<!-- N2 -->
<g id="node2" class="node">
<title>N2</title>
<g id="a_node2"><a xlink:title="go/build.(*Context).Import (23.85s)">
<polygon fill="#edd9d5" stroke="#b22200" points="816.1863,-2712 722.762,-2712 722.762,-2654 816.1863,-2654 816.1863,-2712"/>
<text text-anchor="middle" x="769.4741" y="-2700" font-family="Times,serif" font-size="10.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="769.4741" y="-2690" font-family="Times,serif" font-size="10.00" fill="#000000">(*Context)</text>
<text text-anchor="middle" x="769.4741" y="-2680" font-family="Times,serif" font-size="10.00" fill="#000000">Import</text>
<text text-anchor="middle" x="769.4741" y="-2670" font-family="Times,serif" font-size="10.00" fill="#000000">0.06s (0.12%)</text>
<text text-anchor="middle" x="769.4741" y="-2660" font-family="Times,serif" font-size="10.00" fill="#000000">of 23.85s (49.06%)</text>
</a>
</g>
</g>
<!-- N7 -->
<g id="node7" class="node">
<title>N7</title>
<g id="a_node7"><a xlink:title="go/build.(*Context).matchFile (14.50s)">
<polygon fill="#eddcd5" stroke="#b23600" points="812.4663,-2589.5 726.482,-2589.5 726.482,-2536.5 812.4663,-2536.5 812.4663,-2589.5"/>
<text text-anchor="middle" x="769.4741" y="-2578.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="769.4741" y="-2569.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*Context)</text>
<text text-anchor="middle" x="769.4741" y="-2560.3" font-family="Times,serif" font-size="9.00" fill="#000000">matchFile</text>
<text text-anchor="middle" x="769.4741" y="-2551.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="769.4741" y="-2542.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 14.50s (29.83%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N7 -->
<g id="edge6" class="edge">
<title>N2&#45;&gt;N7</title>
<g id="a_edge6"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).matchFile (14.50s)">
<path fill="none" stroke="#b23600" stroke-width="2" d="M769.4741,-2653.9513C769.4741,-2637.7527 769.4741,-2617.4093 769.4741,-2600.0721"/>
<polygon fill="#b23600" stroke="#b23600" stroke-width="2" points="772.9742,-2599.7297 769.4741,-2589.7297 765.9742,-2599.7297 772.9742,-2599.7297"/>
</a>
</g>
<g id="a_edge6&#45;label"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).matchFile (14.50s)">
<text text-anchor="middle" x="789.6982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 14.50s</text>
</a>
</g>
</g>
<!-- N9 -->
<g id="node9" class="node">
<title>N9</title>
<g id="a_node9"><a xlink:title="runtime.growslice (3.99s)">
<polygon fill="#ede8e3" stroke="#b28f69" points="872.244,-600 796.7042,-600 796.7042,-564 872.244,-564 872.244,-600"/>
<text text-anchor="middle" x="834.4741" y="-587.6" font-family="Times,serif" font-size="8.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="834.4741" y="-579.6" font-family="Times,serif" font-size="8.00" fill="#000000">growslice</text>
<text text-anchor="middle" x="834.4741" y="-571.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 3.99s (8.21%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N9 -->
<g id="edge99" class="edge">
<title>N2&#45;&gt;N9</title>
<g id="a_edge99"><a xlink:title="go/build.(*Context).Import ... runtime.growslice (0.36s)">
<path fill="none" stroke="#b2b0ab" stroke-dasharray="1,5" d="M752.3698,-2653.684C727.0465,-2610.3694 682.2484,-2534.1183 679.4741,-2532 662.9763,-2519.4029 517.9538,-2491.4533 499.4741,-2482 428.5339,-2445.7106 395.9935,-2440.8221 359.4741,-2370 320.3654,-2294.1562 341.042,-2261.3189 359.4741,-2178 404.3266,-1975.2532 493.3277,-1947.9254 532.4741,-1744 545.9642,-1673.7262 531.4741,-1654.5569 531.4741,-1583 531.4741,-1583 531.4741,-1583 531.4741,-1056 531.4741,-956.9926 503.4741,-934.0074 503.4741,-835 503.4741,-835 503.4741,-835 503.4741,-680.5 503.4741,-647.9666 519.4404,-638.5086 547.4741,-622 586.9843,-598.7331 715.7419,-588.32 786.617,-584.2522"/>
<polygon fill="#b2b0ab" stroke="#b2b0ab" points="786.8454,-587.7451 796.6365,-583.6974 786.4582,-580.7558 786.8454,-587.7451"/>
</a>
</g>
<g id="a_edge99&#45;label"><a xlink:title="go/build.(*Context).Import ... runtime.growslice (0.36s)">
<text text-anchor="middle" x="549.1982" y="-1578.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.36s</text>
</a>
</g>
</g>
<!-- N10 -->
<g id="node10" class="node">
<title>N10</title>
<g id="a_node10"><a xlink:title="go/parser.ParseFile (9.68s)">
<polygon fill="#edded5" stroke="#b24400" points="1183.244,-2581 1103.7043,-2581 1103.7043,-2545 1183.244,-2545 1183.244,-2581"/>
<text text-anchor="middle" x="1143.4741" y="-2568.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1143.4741" y="-2560.6" font-family="Times,serif" font-size="8.00" fill="#000000">ParseFile</text>
<text text-anchor="middle" x="1143.4741" y="-2552.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 9.68s (19.91%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N10 -->
<g id="edge30" class="edge">
<title>N2&#45;&gt;N10</title>
<g id="a_edge30"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/parser.ParseFile (2.96s)">
<path fill="none" stroke="#b29b7c" d="M816.0853,-2668.0445C886.9653,-2645.3023 1021.2601,-2602.2131 1093.876,-2578.9138"/>
<polygon fill="#b29b7c" stroke="#b29b7c" points="1095.2475,-2582.1496 1103.7,-2575.7617 1093.1088,-2575.4843 1095.2475,-2582.1496"/>
</a>
</g>
<g id="a_edge30&#45;label"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/parser.ParseFile (2.96s)">
<text text-anchor="middle" x="1007.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.96s</text>
</a>
</g>
</g>
<!-- N22 -->
<g id="node22" class="node">
<title>N22</title>
<g id="a_node22"><a xlink:title="runtime.mapassign_faststr (1.33s)">
<polygon fill="#edece9" stroke="#b2aa9a" points="1994.1301,-1242 1906.8182,-1242 1906.8182,-1194 1994.1301,-1194 1994.1301,-1242"/>
<text text-anchor="middle" x="1950.4741" y="-1230" font-family="Times,serif" font-size="10.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1950.4741" y="-1220" font-family="Times,serif" font-size="10.00" fill="#000000">mapassign_faststr</text>
<text text-anchor="middle" x="1950.4741" y="-1210" font-family="Times,serif" font-size="10.00" fill="#000000">0.17s (0.35%)</text>
<text text-anchor="middle" x="1950.4741" y="-1200" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.33s (2.74%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N22 -->
<g id="edge106" class="edge">
<title>N2&#45;&gt;N22</title>
<g id="a_edge106"><a xlink:title="go/build.(*Context).Import &#45;&gt; runtime.mapassign_faststr (0.25s)">
<path fill="none" stroke="#b2b1ad" d="M816.3365,-2674.2001C894.6057,-2659.2659 1056.7318,-2627.3204 1192.4741,-2594 1498.7048,-2518.8302 1662.6117,-2634.6313 1875.4741,-2402 1914.547,-2359.2983 1899.4741,-2331.8803 1899.4741,-2274 1899.4741,-2274 1899.4741,-2274 1899.4741,-2000 1899.4741,-1975.9987 1898.5732,-1969.9573 1900.0259,-1946 1912.287,-1743.7934 1950.4741,-1695.578 1950.4741,-1493 1950.4741,-1493 1950.4741,-1493 1950.4741,-1331 1950.4741,-1304.58 1950.4741,-1274.6854 1950.4741,-1252.2833"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="1953.9742,-1252.2471 1950.4741,-1242.2472 1946.9742,-1252.2472 1953.9742,-1252.2471"/>
</a>
</g>
<g id="a_edge106&#45;label"><a xlink:title="go/build.(*Context).Import &#45;&gt; runtime.mapassign_faststr (0.25s)">
<text text-anchor="middle" x="1916.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.25s</text>
</a>
</g>
</g>
<!-- N37 -->
<g id="node37" class="node">
<title>N37</title>
<g id="a_node37"><a xlink:title="go/build.(*Context).Import.func3 (1.73s)">
<polygon fill="#edebe8" stroke="#b2a692" points="670.9664,-2594 593.9818,-2594 593.9818,-2532 670.9664,-2532 670.9664,-2594"/>
<text text-anchor="middle" x="632.4741" y="-2582.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="632.4741" y="-2573.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*Context)</text>
<text text-anchor="middle" x="632.4741" y="-2564.8" font-family="Times,serif" font-size="9.00" fill="#000000">Import</text>
<text text-anchor="middle" x="632.4741" y="-2555.8" font-family="Times,serif" font-size="9.00" fill="#000000">func3</text>
<text text-anchor="middle" x="632.4741" y="-2546.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="632.4741" y="-2537.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.73s (3.56%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N37 -->
<g id="edge44" class="edge">
<title>N2&#45;&gt;N37</title>
<g id="a_edge44"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).Import.func3 (1.73s)">
<path fill="none" stroke="#b2a692" d="M722.6789,-2670.5752C698.1706,-2661.8377 669.4974,-2647.7384 651.0259,-2626 645.6196,-2619.6375 641.7882,-2611.7603 639.0732,-2603.7554"/>
<polygon fill="#b2a692" stroke="#b2a692" points="642.4032,-2602.6704 636.2842,-2594.0212 635.6739,-2604.5984 642.4032,-2602.6704"/>
</a>
</g>
<g id="a_edge44&#45;label"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).Import.func3 (1.73s)">
<text text-anchor="middle" x="668.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.73s</text>
</a>
</g>
</g>
<!-- N76 -->
<g id="node76" class="node">
<title>N76</title>
<g id="a_node76"><a xlink:title="go/build.(*Context).readDir (3.59s)">
<polygon fill="#ede9e4" stroke="#b29470" points="786.244,-2471 710.7042,-2471 710.7042,-2431 786.244,-2431 786.244,-2471"/>
<text text-anchor="middle" x="748.4741" y="-2460.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="748.4741" y="-2452.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*Context)</text>
<text text-anchor="middle" x="748.4741" y="-2444.6" font-family="Times,serif" font-size="8.00" fill="#000000">readDir</text>
<text text-anchor="middle" x="748.4741" y="-2436.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 3.59s (7.39%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N76 -->
<g id="edge24" class="edge">
<title>N2&#45;&gt;N76</title>
<g id="a_edge24"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).readDir (3.40s)">
<path fill="none" stroke="#b29674" d="M816.101,-2660.7042C841.649,-2645.737 870.9907,-2623.3674 885.4741,-2594 897.6623,-2569.2865 899.1282,-2555.9348 885.4741,-2532 866.3661,-2498.5046 827.3749,-2477.4566 795.8589,-2465.2393"/>
<polygon fill="#b29674" stroke="#b29674" points="796.9416,-2461.9081 786.3483,-2461.7272 794.5167,-2468.4747 796.9416,-2461.9081"/>
</a>
</g>
<g id="a_edge24&#45;label"><a xlink:title="go/build.(*Context).Import &#45;&gt; go/build.(*Context).readDir (3.40s)">
<text text-anchor="middle" x="912.1982" y="-2558.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.40s</text>
</a>
</g>
</g>
<!-- N3 -->
<g id="node3" class="node">
<title>N3</title>
<g id="a_node3"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).startLoad.func1 (30.45s)">
<polygon fill="#edd8d5" stroke="#b21700" points="852.2009,-3348 686.7473,-3348 686.7473,-3284 852.2009,-3284 852.2009,-3348"/>
<text text-anchor="middle" x="769.4741" y="-3337.6" font-family="Times,serif" font-size="8.00" fill="#000000">github</text>
<text text-anchor="middle" x="769.4741" y="-3329.6" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="769.4741" y="-3321.6" font-family="Times,serif" font-size="8.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="769.4741" y="-3313.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*importer)</text>
<text text-anchor="middle" x="769.4741" y="-3305.6" font-family="Times,serif" font-size="8.00" fill="#000000">startLoad</text>
<text text-anchor="middle" x="769.4741" y="-3297.6" font-family="Times,serif" font-size="8.00" fill="#000000">func1</text>
<text text-anchor="middle" x="769.4741" y="-3289.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 30.45s (62.64%)</text>
</a>
</g>
</g>
<!-- N43 -->
<g id="node43" class="node">
<title>N43</title>
<g id="a_node43"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).load (30.40s)">
<polygon fill="#edd8d5" stroke="#b21700" points="861.917,-3198 677.0312,-3198 677.0312,-3127 861.917,-3127 861.917,-3198"/>
<text text-anchor="middle" x="769.4741" y="-3186.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="769.4741" y="-3177.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="769.4741" y="-3168.8" font-family="Times,serif" font-size="9.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="769.4741" y="-3159.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*importer)</text>
<text text-anchor="middle" x="769.4741" y="-3150.8" font-family="Times,serif" font-size="9.00" fill="#000000">load</text>
<text text-anchor="middle" x="769.4741" y="-3141.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="769.4741" y="-3132.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 30.40s (62.54%)</text>
</a>
</g>
</g>
<!-- N3&#45;&gt;N43 -->
<g id="edge1" class="edge">
<title>N3&#45;&gt;N43</title>
<g id="a_edge1"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).startLoad.func1 &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).load (30.40s)">
<path fill="none" stroke="#b21700" stroke-width="4" d="M769.4741,-3283.8214C769.4741,-3261.8982 769.4741,-3232.5501 769.4741,-3208.2105"/>
<polygon fill="#b21700" stroke="#b21700" stroke-width="4" points="772.9742,-3208.1222 769.4741,-3198.1222 765.9742,-3208.1222 772.9742,-3208.1222"/>
</a>
</g>
<g id="a_edge1&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).startLoad.func1 &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).load (30.40s)">
<text text-anchor="middle" x="789.6982" y="-3218.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 30.40s</text>
</a>
</g>
</g>
<!-- N4 -->
<g id="node4" class="node">
<title>N4</title>
<g id="a_node4"><a xlink:title="runtime.mallocgc (6.94s)">
<polygon fill="#ede3dc" stroke="#b26b33" points="885.629,-510 783.3192,-510 783.3192,-454 885.629,-454 885.629,-510"/>
<text text-anchor="middle" x="834.4741" y="-496.4" font-family="Times,serif" font-size="12.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="834.4741" y="-484.4" font-family="Times,serif" font-size="12.00" fill="#000000">mallocgc</text>
<text text-anchor="middle" x="834.4741" y="-472.4" font-family="Times,serif" font-size="12.00" fill="#000000">0.53s (1.09%)</text>
<text text-anchor="middle" x="834.4741" y="-460.4" font-family="Times,serif" font-size="12.00" fill="#000000">of 6.94s (14.28%)</text>
</a>
</g>
</g>
<!-- N6 -->
<g id="node6" class="node">
<title>N6</title>
<g id="a_node6"><a xlink:title="runtime.systemstack (10.49s)">
<polygon fill="#edded5" stroke="#b24100" points="1098.4663,-290 1012.482,-290 1012.482,-246 1098.4663,-246 1098.4663,-290"/>
<text text-anchor="middle" x="1055.4741" y="-278.8" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1055.4741" y="-269.8" font-family="Times,serif" font-size="9.00" fill="#000000">systemstack</text>
<text text-anchor="middle" x="1055.4741" y="-260.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.05s (0.1%)</text>
<text text-anchor="middle" x="1055.4741" y="-251.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 10.49s (21.58%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N6 -->
<g id="edge40" class="edge">
<title>N4&#45;&gt;N6</title>
<g id="a_edge40"><a xlink:title="runtime.mallocgc ... runtime.systemstack (1.95s)">
<path fill="none" stroke="#b2a48e" stroke-dasharray="1,5" d="M836.32,-453.7501C840.3991,-415.1282 853.4878,-346.283 895.4741,-308 911.1269,-293.7279 962.1342,-282.5915 1002.3994,-275.7337"/>
<polygon fill="#b2a48e" stroke="#b2a48e" points="1003.0822,-279.1684 1012.3768,-274.0831 1001.9396,-272.2622 1003.0822,-279.1684"/>
</a>
</g>
<g id="a_edge40&#45;label"><a xlink:title="runtime.mallocgc ... runtime.systemstack (1.95s)">
<text text-anchor="middle" x="887.1982" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.95s</text>
</a>
</g>
</g>
<!-- N13 -->
<g id="node13" class="node">
<title>N13</title>
<g id="a_node13"><a xlink:title="runtime.memclrNoHeapPointers (4.42s)">
<polygon fill="#ede7e2" stroke="#b28a61" points="1005.4273,-62 815.521,-62 815.521,0 1005.4273,0 1005.4273,-62"/>
<text text-anchor="middle" x="910.4741" y="-43.6" font-family="Times,serif" font-size="18.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="910.4741" y="-25.6" font-family="Times,serif" font-size="18.00" fill="#000000">memclrNoHeapPointers</text>
<text text-anchor="middle" x="910.4741" y="-7.6" font-family="Times,serif" font-size="18.00" fill="#000000">4.42s (9.09%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N13 -->
<g id="edge20" class="edge">
<title>N4&#45;&gt;N13</title>
<g id="a_edge20"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.memclrNoHeapPointers (3.59s)">
<path fill="none" stroke="#b29470" d="M825.2517,-453.8484C818.8529,-431.8223 811.4741,-400.2898 811.4741,-372 811.4741,-372 811.4741,-372 811.4741,-154 811.4741,-120.3605 834.2239,-90.7077 857.9123,-68.9495"/>
<polygon fill="#b29470" stroke="#b29470" points="860.4199,-71.4049 865.6087,-62.1676 855.792,-66.153 860.4199,-71.4049"/>
</a>
</g>
<g id="a_edge20&#45;label"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.memclrNoHeapPointers (3.59s)">
<text text-anchor="middle" x="828.1982" y="-263.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.59s</text>
</a>
</g>
</g>
<!-- N5 -->
<g id="node5" class="node">
<title>N5</title>
<g id="a_node5"><a xlink:title="runtime.memmove (5.22s)">
<polygon fill="#ede6e0" stroke="#b28152" points="420.6001,-186.5 288.3481,-186.5 288.3481,-121.5 420.6001,-121.5 420.6001,-186.5"/>
<text text-anchor="middle" x="354.4741" y="-167.3" font-family="Times,serif" font-size="19.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="354.4741" y="-148.3" font-family="Times,serif" font-size="19.00" fill="#000000">memmove</text>
<text text-anchor="middle" x="354.4741" y="-129.3" font-family="Times,serif" font-size="19.00" fill="#000000">5.22s (10.74%)</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;N4 -->
<g id="edge161" class="edge">
<title>N6&#45;&gt;N4</title>
<g id="a_edge161"><a xlink:title="runtime.systemstack ... runtime.mallocgc (0.07s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M1029.0066,-290.1779C1012.5978,-304.1553 991.2467,-322.7591 973.0259,-340 935.935,-375.096 895.3377,-417.1653 867.7343,-446.3613"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="864.9718,-444.1892 860.6573,-453.8658 870.0645,-448.9918 864.9718,-444.1892"/>
</a>
</g>
<g id="a_edge161&#45;label"><a xlink:title="runtime.systemstack ... runtime.mallocgc (0.07s)">
<text text-anchor="middle" x="990.1982" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.07s</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;N5 -->
<g id="edge158" class="edge">
<title>N6&#45;&gt;N5</title>
<g id="a_edge158"><a xlink:title="runtime.systemstack ... runtime.memmove (0.08s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M1013.5936,-245.9153C990.0888,-234.5146 959.8596,-221.4651 931.4741,-214 838.9187,-189.659 565.7861,-168.3909 431.1992,-159.0482"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="431.1853,-155.539 420.9681,-158.3424 430.7035,-162.5224 431.1853,-155.539"/>
</a>
</g>
<g id="a_edge158&#45;label"><a xlink:title="runtime.systemstack ... runtime.memmove (0.08s)">
<text text-anchor="middle" x="987.1982" y="-216.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N16 -->
<g id="node16" class="node">
<title>N16</title>
<g id="a_node16"><a xlink:title="runtime.scanobject (7.28s)">
<polygon fill="#ede3db" stroke="#b2662c" points="1132.1769,-196 978.7714,-196 978.7714,-112 1132.1769,-112 1132.1769,-196"/>
<text text-anchor="middle" x="1055.4741" y="-176.8" font-family="Times,serif" font-size="19.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1055.4741" y="-157.8" font-family="Times,serif" font-size="19.00" fill="#000000">scanobject</text>
<text text-anchor="middle" x="1055.4741" y="-138.8" font-family="Times,serif" font-size="19.00" fill="#000000">5.89s (12.12%)</text>
<text text-anchor="middle" x="1055.4741" y="-119.8" font-family="Times,serif" font-size="19.00" fill="#000000">of 7.28s (14.98%)</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;N16 -->
<g id="edge13" class="edge">
<title>N6&#45;&gt;N16</title>
<g id="a_edge13"><a xlink:title="runtime.systemstack ... runtime.scanobject (7.28s)">
<path fill="none" stroke="#b2662c" stroke-dasharray="1,5" d="M1055.4741,-245.749C1055.4741,-234.3822 1055.4741,-220.0341 1055.4741,-206.0819"/>
<polygon fill="#b2662c" stroke="#b2662c" points="1058.9742,-206.0408 1055.4741,-196.0408 1051.9742,-206.0408 1058.9742,-206.0408"/>
</a>
</g>
<g id="a_edge13&#45;label"><a xlink:title="runtime.systemstack ... runtime.scanobject (7.28s)">
<text text-anchor="middle" x="1072.1982" y="-216.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 7.28s</text>
</a>
</g>
</g>
<!-- N71 -->
<g id="node71" class="node">
<title>N71</title>
<g id="a_node71"><a xlink:title="runtime.(*mcentral).cacheSpan (1.76s)">
<polygon fill="#edebe8" stroke="#b2a692" points="1226.9664,-180.5 1149.9818,-180.5 1149.9818,-127.5 1226.9664,-127.5 1226.9664,-180.5"/>
<text text-anchor="middle" x="1188.4741" y="-169.3" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1188.4741" y="-160.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*mcentral)</text>
<text text-anchor="middle" x="1188.4741" y="-151.3" font-family="Times,serif" font-size="9.00" fill="#000000">cacheSpan</text>
<text text-anchor="middle" x="1188.4741" y="-142.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1188.4741" y="-133.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.76s (3.62%)</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;N71 -->
<g id="edge43" class="edge">
<title>N6&#45;&gt;N71</title>
<g id="a_edge43"><a xlink:title="runtime.systemstack ... runtime.(*mcentral).cacheSpan (1.74s)">
<path fill="none" stroke="#b2a692" stroke-dasharray="1,5" d="M1082.3909,-245.8422C1099.4398,-231.715 1121.8872,-212.9431 1141.4741,-196 1144.6863,-193.2214 1148.0049,-190.3199 1151.3237,-187.3966"/>
<polygon fill="#b2a692" stroke="#b2a692" points="1153.8513,-189.8334 1159.0181,-180.5838 1149.2109,-184.5926 1153.8513,-189.8334"/>
</a>
</g>
<g id="a_edge43&#45;label"><a xlink:title="runtime.systemstack ... runtime.(*mcentral).cacheSpan (1.74s)">
<text text-anchor="middle" x="1136.1982" y="-216.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.74s</text>
</a>
</g>
</g>
<!-- N59 -->
<g id="node59" class="node">
<title>N59</title>
<g id="a_node59"><a xlink:title="github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 (9.68s)">
<polygon fill="#edded5" stroke="#b24400" points="692.9126,-2482 508.0356,-2482 508.0356,-2420 692.9126,-2420 692.9126,-2482"/>
<text text-anchor="middle" x="600.4741" y="-2470.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="600.4741" y="-2461.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/langserver/util</text>
<text text-anchor="middle" x="600.4741" y="-2452.8" font-family="Times,serif" font-size="9.00" fill="#000000">PrepareContext</text>
<text text-anchor="middle" x="600.4741" y="-2443.8" font-family="Times,serif" font-size="9.00" fill="#000000">func1</text>
<text text-anchor="middle" x="600.4741" y="-2434.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="600.4741" y="-2425.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 9.68s (19.91%)</text>
</a>
</g>
</g>
<!-- N7&#45;&gt;N59 -->
<g id="edge8" class="edge">
<title>N7&#45;&gt;N59</title>
<g id="a_edge8"><a xlink:title="go/build.(*Context).matchFile ... github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 (9.25s)">
<path fill="none" stroke="#b24b08" stroke-dasharray="1,5" d="M726.7201,-2538.4C721.9853,-2536.0826 717.1755,-2533.8955 712.4741,-2532 684.4946,-2520.7189 671.9007,-2531.0693 647.0259,-2514 638.0184,-2507.819 630.0803,-2499.3141 623.4273,-2490.5522"/>
<polygon fill="#b24b08" stroke="#b24b08" points="626.0952,-2488.2642 617.4494,-2482.1404 620.3892,-2492.3192 626.0952,-2488.2642"/>
</a>
</g>
<g id="a_edge8&#45;label"><a xlink:title="go/build.(*Context).matchFile ... github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 (9.25s)">
<text text-anchor="middle" x="664.1982" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 9.25s</text>
</a>
</g>
</g>
<!-- N78 -->
<g id="node78" class="node">
<title>N78</title>
<g id="a_node78"><a xlink:title="go/build.readImports (2.80s)">
<polygon fill="#edeae6" stroke="#b29c7f" points="905.9664,-2022 828.9818,-2022 828.9818,-1978 905.9664,-1978 905.9664,-2022"/>
<text text-anchor="middle" x="867.4741" y="-2010.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="867.4741" y="-2001.8" font-family="Times,serif" font-size="9.00" fill="#000000">readImports</text>
<text text-anchor="middle" x="867.4741" y="-1992.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="867.4741" y="-1983.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.80s (5.76%)</text>
</a>
</g>
</g>
<!-- N7&#45;&gt;N78 -->
<g id="edge33" class="edge">
<title>N7&#45;&gt;N78</title>
<g id="a_edge33"><a xlink:title="go/build.(*Context).matchFile &#45;&gt; go/build.readImports (2.80s)">
<path fill="none" stroke="#b29c7f" d="M800.4819,-2536.2825C829.1929,-2510.2523 867.4741,-2471.6697 867.4741,-2451 867.4741,-2451 867.4741,-2451 867.4741,-2100 867.4741,-2077.4414 867.4741,-2052.0203 867.4741,-2032.4542"/>
<polygon fill="#b29c7f" stroke="#b29c7f" points="870.9742,-2032.2418 867.4741,-2022.2419 863.9742,-2032.2419 870.9742,-2032.2418"/>
</a>
</g>
<g id="a_edge33&#45;label"><a xlink:title="go/build.(*Context).matchFile &#45;&gt; go/build.readImports (2.80s)">
<text text-anchor="middle" x="884.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.80s</text>
</a>
</g>
</g>
<!-- N8 -->
<g id="node8" class="node">
<title>N8</title>
<g id="a_node8"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles (30.12s)">
<polygon fill="#edd8d5" stroke="#b21700" points="852.2009,-3073.5 686.7473,-3073.5 686.7473,-3017.5 852.2009,-3017.5 852.2009,-3073.5"/>
<text text-anchor="middle" x="769.4741" y="-3063.1" font-family="Times,serif" font-size="8.00" fill="#000000">github</text>
<text text-anchor="middle" x="769.4741" y="-3055.1" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="769.4741" y="-3047.1" font-family="Times,serif" font-size="8.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="769.4741" y="-3039.1" font-family="Times,serif" font-size="8.00" fill="#000000">(*importer)</text>
<text text-anchor="middle" x="769.4741" y="-3031.1" font-family="Times,serif" font-size="8.00" fill="#000000">addFiles</text>
<text text-anchor="middle" x="769.4741" y="-3023.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 30.12s (61.96%)</text>
</a>
</g>
</g>
<!-- N31 -->
<g id="node31" class="node">
<title>N31</title>
<g id="a_node31"><a xlink:title="go/types.(*Checker).checkFiles (5s)">
<polygon fill="#ede6e0" stroke="#b28456" points="1588.2182,-2955 1516.7301,-2955 1516.7301,-2902 1588.2182,-2902 1588.2182,-2955"/>
<text text-anchor="middle" x="1552.4741" y="-2943.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="1552.4741" y="-2934.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="1552.4741" y="-2925.8" font-family="Times,serif" font-size="9.00" fill="#000000">checkFiles</text>
<text text-anchor="middle" x="1552.4741" y="-2916.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="1552.4741" y="-2907.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 5s (10.29%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N31 -->
<g id="edge17" class="edge">
<title>N8&#45;&gt;N31</title>
<g id="a_edge17"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles ... go/types.(*Checker).checkFiles (5s)">
<path fill="none" stroke="#b28456" stroke-dasharray="1,5" d="M852.5275,-3033.0897C1016.7578,-3008.5496 1378.1981,-2954.5412 1506.3238,-2935.396"/>
<polygon fill="#b28456" stroke="#b28456" points="1507.1939,-2938.8049 1516.5669,-2933.8655 1506.1594,-2931.8818 1507.1939,-2938.8049"/>
</a>
</g>
<g id="a_edge17&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles ... go/types.(*Checker).checkFiles (5s)">
<text text-anchor="middle" x="1191.4482" y="-2984.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 5s</text>
</a>
</g>
</g>
<!-- N68 -->
<g id="node68" class="node">
<title>N68</title>
<g id="a_node68"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).importAll (25.09s)">
<polygon fill="#edd9d5" stroke="#b22000" points="861.917,-2964 677.0312,-2964 677.0312,-2893 861.917,-2893 861.917,-2964"/>
<text text-anchor="middle" x="769.4741" y="-2952.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="769.4741" y="-2943.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="769.4741" y="-2934.8" font-family="Times,serif" font-size="9.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="769.4741" y="-2925.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*importer)</text>
<text text-anchor="middle" x="769.4741" y="-2916.8" font-family="Times,serif" font-size="9.00" fill="#000000">importAll</text>
<text text-anchor="middle" x="769.4741" y="-2907.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="769.4741" y="-2898.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 25.09s (51.61%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N68 -->
<g id="edge3" class="edge">
<title>N8&#45;&gt;N68</title>
<g id="a_edge3"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).importAll (25.09s)">
<path fill="none" stroke="#b22000" stroke-width="3" d="M769.4741,-3017.4756C769.4741,-3004.6371 769.4741,-2989.0817 769.4741,-2974.5911"/>
<polygon fill="#b22000" stroke="#b22000" stroke-width="3" points="772.9742,-2974.2819 769.4741,-2964.2819 765.9742,-2974.282 772.9742,-2974.2819"/>
</a>
</g>
<g id="a_edge3&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).importAll (25.09s)">
<text text-anchor="middle" x="789.6982" y="-2984.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 25.09s</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N4 -->
<g id="edge64" class="edge">
<title>N9&#45;&gt;N4</title>
<g id="a_edge64"><a xlink:title="runtime.growslice &#45;&gt; runtime.mallocgc (1.17s)">
<path fill="none" stroke="#b2ab9d" d="M834.4741,-563.6585C834.4741,-551.4722 834.4741,-535.0238 834.4741,-520.0829"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="837.9742,-520.0509 834.4741,-510.0509 830.9742,-520.051 837.9742,-520.0509"/>
</a>
</g>
<g id="a_edge64&#45;label"><a xlink:title="runtime.growslice &#45;&gt; runtime.mallocgc (1.17s)">
<text text-anchor="middle" x="851.1982" y="-530.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.17s</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N5 -->
<g id="edge48" class="edge">
<title>N9&#45;&gt;N5</title>
<g id="a_edge48"><a xlink:title="runtime.growslice &#45;&gt; runtime.memmove (1.65s)">
<path fill="none" stroke="#b2a794" d="M796.6653,-577.4011C690.1798,-563.9417 395.4741,-522.9891 395.4741,-482 395.4741,-482 395.4741,-482 395.4741,-268 395.4741,-243.1945 386.7723,-217.0493 377.3865,-196.0634"/>
<polygon fill="#b2a794" stroke="#b2a794" points="380.4636,-194.3813 373.0547,-186.8077 374.1236,-197.3485 380.4636,-194.3813"/>
</a>
</g>
<g id="a_edge48&#45;label"><a xlink:title="runtime.growslice &#45;&gt; runtime.memmove (1.65s)">
<text text-anchor="middle" x="412.1982" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.65s</text>
</a>
</g>
</g>
<!-- N38 -->
<g id="node38" class="node">
<title>N38</title>
<g id="a_node38"><a xlink:title="runtime.typedmemmove (1.62s)">
<polygon fill="#edebe9" stroke="#b2a794" points="1216.9664,-504 1139.9818,-504 1139.9818,-460 1216.9664,-460 1216.9664,-504"/>
<text text-anchor="middle" x="1178.4741" y="-492.8" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1178.4741" y="-483.8" font-family="Times,serif" font-size="9.00" fill="#000000">typedmemmove</text>
<text text-anchor="middle" x="1178.4741" y="-474.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.04s (0.082%)</text>
<text text-anchor="middle" x="1178.4741" y="-465.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.62s (3.33%)</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N38 -->
<g id="edge68" class="edge">
<title>N9&#45;&gt;N38</title>
<g id="a_edge68"><a xlink:title="runtime.growslice &#45;&gt; runtime.typedmemmove (1.12s)">
<path fill="none" stroke="#b2ab9d" d="M872.2722,-571.0122C935.1538,-552.7327 1061.1573,-516.1037 1130.3118,-496.0007"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="1131.4627,-499.3111 1140.0882,-493.1587 1129.5086,-492.5893 1131.4627,-499.3111"/>
</a>
</g>
<g id="a_edge68&#45;label"><a xlink:title="runtime.growslice &#45;&gt; runtime.typedmemmove (1.12s)">
<text text-anchor="middle" x="1034.1982" y="-530.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.12s</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N1 -->
<g id="edge126" class="edge">
<title>N10&#45;&gt;N1</title>
<g id="a_edge126"><a xlink:title="go/parser.ParseFile ... syscall.Syscall (0.15s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M1103.3258,-2555.9929C1060.6669,-2547.6938 997.2272,-2532.6178 981.4741,-2514 869.7554,-2381.9651 947.1687,-2300.2933 932.0259,-2128 924.8968,-2046.8859 959.6934,-1829.7166 914.4741,-1762 890.0615,-1725.4418 848.8319,-1701.6706 808.8978,-1686.365"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="809.9212,-1683.0122 799.3277,-1682.8449 807.5047,-1689.5819 809.9212,-1683.0122"/>
</a>
</g>
<g id="a_edge126&#45;label"><a xlink:title="go/parser.ParseFile ... syscall.Syscall (0.15s)">
<text text-anchor="middle" x="949.1982" y="-2095.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.15s</text>
</a>
</g>
</g>
<!-- N15 -->
<g id="node15" class="node">
<title>N15</title>
<g id="a_node15"><a xlink:title="go/parser.(*parser).next (3.23s)">
<polygon fill="#ede9e5" stroke="#b29877" points="1032.9664,-1134 955.9818,-1134 955.9818,-1081 1032.9664,-1081 1032.9664,-1134"/>
<text text-anchor="middle" x="994.4741" y="-1122.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="994.4741" y="-1113.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="994.4741" y="-1104.8" font-family="Times,serif" font-size="9.00" fill="#000000">next</text>
<text text-anchor="middle" x="994.4741" y="-1095.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="994.4741" y="-1086.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 3.23s (6.64%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N15 -->
<g id="edge71" class="edge">
<title>N10&#45;&gt;N15</title>
<g id="a_edge71"><a xlink:title="go/parser.ParseFile ... go/parser.(*parser).next (0.97s)">
<path fill="none" stroke="#b2aca0" stroke-dasharray="1,5" d="M1126.9147,-2544.9572C1098.3247,-2512.6336 1040.2068,-2441.5218 1013.4741,-2370 974.6703,-2266.1828 966.0655,-1984.9956 952.4741,-1875 946.2683,-1824.7758 947.2239,-1811.844 938.4741,-1762 908.7597,-1592.7285 852.4741,-1556.8598 852.4741,-1385 852.4741,-1385 852.4741,-1385 852.4741,-1218 852.4741,-1169.1684 905.4228,-1138.7706 946.6553,-1122.502"/>
<polygon fill="#b2aca0" stroke="#b2aca0" points="947.9282,-1125.7627 956.0469,-1118.9555 945.4552,-1119.2141 947.9282,-1125.7627"/>
</a>
</g>
<g id="a_edge71&#45;label"><a xlink:title="go/parser.ParseFile ... go/parser.(*parser).next (0.97s)">
<text text-anchor="middle" x="967.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.97s</text>
</a>
</g>
</g>
<!-- N18 -->
<g id="node18" class="node">
<title>N18</title>
<g id="a_node18"><a xlink:title="go/parser.(*parser).parseFile (8s)">
<polygon fill="#ede1d9" stroke="#b25d1f" points="1179.2182,-2477.5 1107.7301,-2477.5 1107.7301,-2424.5 1179.2182,-2424.5 1179.2182,-2477.5"/>
<text text-anchor="middle" x="1143.4741" y="-2466.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1143.4741" y="-2457.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1143.4741" y="-2448.3" font-family="Times,serif" font-size="9.00" fill="#000000">parseFile</text>
<text text-anchor="middle" x="1143.4741" y="-2439.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1143.4741" y="-2430.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 8s (16.46%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N18 -->
<g id="edge10" class="edge">
<title>N10&#45;&gt;N18</title>
<g id="a_edge10"><a xlink:title="go/parser.ParseFile &#45;&gt; go/parser.(*parser).parseFile (8s)">
<path fill="none" stroke="#b25d1f" d="M1143.4741,-2544.5055C1143.4741,-2529.1979 1143.4741,-2506.9708 1143.4741,-2488.028"/>
<polygon fill="#b25d1f" stroke="#b25d1f" points="1146.9742,-2487.9069 1143.4741,-2477.9069 1139.9742,-2487.907 1146.9742,-2487.9069"/>
</a>
</g>
<g id="a_edge10&#45;label"><a xlink:title="go/parser.ParseFile &#45;&gt; go/parser.(*parser).parseFile (8s)">
<text text-anchor="middle" x="1151.4482" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 8s</text>
</a>
</g>
</g>
<!-- N42 -->
<g id="node42" class="node">
<title>N42</title>
<g id="a_node42"><a xlink:title="runtime.makeslice (1.16s)">
<polygon fill="#edecea" stroke="#b2ab9d" points="432.9664,-1682 355.9818,-1682 355.9818,-1638 432.9664,-1638 432.9664,-1682"/>
<text text-anchor="middle" x="394.4741" y="-1670.8" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="394.4741" y="-1661.8" font-family="Times,serif" font-size="9.00" fill="#000000">makeslice</text>
<text text-anchor="middle" x="394.4741" y="-1652.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="394.4741" y="-1643.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.16s (2.39%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N42 -->
<g id="edge148" class="edge">
<title>N10&#45;&gt;N42</title>
<g id="a_edge148"><a xlink:title="go/parser.ParseFile ... runtime.makeslice (0.10s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1103.4705,-2554.617C1067.2264,-2546.3806 1012.7282,-2532.3826 967.4741,-2514 886.7632,-2481.2146 875.2298,-2455.0453 795.4741,-2420 732.2952,-2392.2387 699.8157,-2416.1119 648.4741,-2370 622.5854,-2346.7483 633.052,-2329.0314 615.4741,-2299 601.6417,-2275.3676 593.9667,-2272.2335 579.4741,-2249 560.5317,-2218.6327 564.245,-2205.6129 541.4741,-2178 519.0734,-2150.8359 500.0681,-2156.948 480.0259,-2128 399.1781,-2011.2274 401.3394,-1965.1762 378.4741,-1825 370.9904,-1779.1207 379.3194,-1725.452 386.4867,-1692.0868"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="389.975,-1692.5269 388.7514,-1682.0029 383.1451,-1690.9929 389.975,-1692.5269"/>
</a>
</g>
<g id="a_edge148&#45;label"><a xlink:title="go/parser.ParseFile ... runtime.makeslice (0.10s)">
<text text-anchor="middle" x="497.1982" y="-2095.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.10s</text>
</a>
</g>
</g>
<!-- N11 -->
<g id="node11" class="node">
<title>N11</title>
<g id="a_node11"><a xlink:title="runtime.newobject (3.26s)">
<polygon fill="#ede9e5" stroke="#b29776" points="1584.9664,-805.5 1507.9818,-805.5 1507.9818,-761.5 1584.9664,-761.5 1584.9664,-805.5"/>
<text text-anchor="middle" x="1546.4741" y="-794.3" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1546.4741" y="-785.3" font-family="Times,serif" font-size="9.00" fill="#000000">newobject</text>
<text text-anchor="middle" x="1546.4741" y="-776.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1546.4741" y="-767.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 3.26s (6.71%)</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;N4 -->
<g id="edge27" class="edge">
<title>N11&#45;&gt;N4</title>
<g id="a_edge27"><a xlink:title="runtime.newobject &#45;&gt; runtime.mallocgc (3.24s)">
<path fill="none" stroke="#b29877" d="M1512.1734,-761.4525C1434.0909,-712.2322 1235.7858,-592.6569 1054.4741,-528 1002.4756,-509.457 940.7576,-497.3601 895.9449,-490.2479"/>
<polygon fill="#b29877" stroke="#b29877" points="896.211,-486.7475 885.7932,-488.6759 895.1398,-493.665 896.211,-486.7475"/>
</a>
</g>
<g id="a_edge27&#45;label"><a xlink:title="runtime.newobject &#45;&gt; runtime.mallocgc (3.24s)">
<text text-anchor="middle" x="1310.1982" y="-624.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.24s</text>
</a>
</g>
</g>
<!-- N12 -->
<g id="node12" class="node">
<title>N12</title>
<g id="a_node12"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.parseFiles.func2 (7.85s)">
<polygon fill="#ede2da" stroke="#b25f22" points="1245.1324,-2722 1041.8159,-2722 1041.8159,-2644 1245.1324,-2644 1245.1324,-2722"/>
<text text-anchor="middle" x="1143.4741" y="-2710" font-family="Times,serif" font-size="10.00" fill="#000000">github</text>
<text text-anchor="middle" x="1143.4741" y="-2700" font-family="Times,serif" font-size="10.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="1143.4741" y="-2690" font-family="Times,serif" font-size="10.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="1143.4741" y="-2680" font-family="Times,serif" font-size="10.00" fill="#000000">parseFiles</text>
<text text-anchor="middle" x="1143.4741" y="-2670" font-family="Times,serif" font-size="10.00" fill="#000000">func2</text>
<text text-anchor="middle" x="1143.4741" y="-2660" font-family="Times,serif" font-size="10.00" fill="#000000">0.12s (0.25%)</text>
<text text-anchor="middle" x="1143.4741" y="-2650" font-family="Times,serif" font-size="10.00" fill="#000000">of 7.85s (16.15%)</text>
</a>
</g>
</g>
<!-- N12&#45;&gt;N10 -->
<g id="edge15" class="edge">
<title>N12&#45;&gt;N10</title>
<g id="a_edge15"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.parseFiles.func2 &#45;&gt; go/parser.ParseFile (6.63s)">
<path fill="none" stroke="#b26f38" d="M1143.4741,-2643.7075C1143.4741,-2626.602 1143.4741,-2606.9371 1143.4741,-2591.3012"/>
<polygon fill="#b26f38" stroke="#b26f38" points="1146.9742,-2591.2009 1143.4741,-2581.201 1139.9742,-2591.201 1146.9742,-2591.2009"/>
</a>
</g>
<g id="a_edge15&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.parseFiles.func2 &#45;&gt; go/parser.ParseFile (6.63s)">
<text text-anchor="middle" x="1160.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 6.63s</text>
</a>
</g>
</g>
<!-- N12&#45;&gt;N59 -->
<g id="edge95" class="edge">
<title>N12&#45;&gt;N59</title>
<g id="a_edge95"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.parseFiles.func2 &#45;&gt; github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 (0.43s)">
<path fill="none" stroke="#b2b0aa" d="M1090.809,-2643.868C1071.7705,-2631.6385 1049.5171,-2619.4177 1027.4741,-2612 989.4897,-2599.2177 880.3369,-2617.7108 848.0259,-2594 823.8587,-2576.2654 843.216,-2552.6363 821.4741,-2532 791.5919,-2503.6374 773.1542,-2514.1857 734.4741,-2500 721.7488,-2495.3331 708.3414,-2490.4226 695.1249,-2485.5858"/>
<polygon fill="#b2b0aa" stroke="#b2b0aa" points="696.1412,-2482.2308 685.5474,-2482.0814 693.7358,-2488.8046 696.1412,-2482.2308"/>
</a>
</g>
<g id="a_edge95&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.parseFiles.func2 &#45;&gt; github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 (0.43s)">
<text text-anchor="middle" x="865.1982" y="-2558.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.43s</text>
</a>
</g>
</g>
<!-- N14 -->
<g id="node14" class="node">
<title>N14</title>
<g id="a_node14"><a xlink:title="runtime.gcWriteBarrier (2.09s)">
<polygon fill="#edebe8" stroke="#b2a38c" points="2330.7921,-928 2214.1561,-928 2214.1561,-860 2330.7921,-860 2330.7921,-928"/>
<text text-anchor="middle" x="2272.4741" y="-912" font-family="Times,serif" font-size="15.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="2272.4741" y="-897" font-family="Times,serif" font-size="15.00" fill="#000000">gcWriteBarrier</text>
<text text-anchor="middle" x="2272.4741" y="-882" font-family="Times,serif" font-size="15.00" fill="#000000">1.85s (3.81%)</text>
<text text-anchor="middle" x="2272.4741" y="-867" font-family="Times,serif" font-size="15.00" fill="#000000">of 2.09s (4.30%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N6 -->
<g id="edge110" class="edge">
<title>N14&#45;&gt;N6</title>
<g id="a_edge110"><a xlink:title="runtime.gcWriteBarrier ... runtime.systemstack (0.24s)">
<path fill="none" stroke="#b2b1ae" stroke-dasharray="1,5" d="M2330.9214,-880.6874C2405.3647,-862.0027 2524.4741,-825.5387 2524.4741,-783.5 2524.4741,-783.5 2524.4741,-783.5 2524.4741,-372 2524.4741,-299.5025 1371.026,-273.8266 1108.2959,-268.9186"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="1108.3107,-265.4183 1098.2477,-268.7329 1108.1813,-272.4171 1108.3107,-265.4183"/>
</a>
</g>
<g id="a_edge110&#45;label"><a xlink:title="runtime.gcWriteBarrier ... runtime.systemstack (0.24s)">
<text text-anchor="middle" x="2541.1982" y="-577.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.24s</text>
</a>
</g>
</g>
<!-- N55 -->
<g id="node55" class="node">
<title>N55</title>
<g id="a_node55"><a xlink:title="go/parser.(*parser).consumeCommentGroup (2.19s)">
<polygon fill="#edebe7" stroke="#b2a28a" points="1074.963,-1031 967.9852,-1031 967.9852,-978 1074.963,-978 1074.963,-1031"/>
<text text-anchor="middle" x="1021.4741" y="-1019.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1021.4741" y="-1010.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1021.4741" y="-1001.8" font-family="Times,serif" font-size="9.00" fill="#000000">consumeCommentGroup</text>
<text text-anchor="middle" x="1021.4741" y="-992.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.04s (0.082%)</text>
<text text-anchor="middle" x="1021.4741" y="-983.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.19s (4.51%)</text>
</a>
</g>
</g>
<!-- N15&#45;&gt;N55 -->
<g id="edge38" class="edge">
<title>N15&#45;&gt;N55</title>
<g id="a_edge38"><a xlink:title="go/parser.(*parser).next &#45;&gt; go/parser.(*parser).consumeCommentGroup (2.19s)">
<path fill="none" stroke="#b2a28a" d="M1001.4273,-1080.9749C1004.6148,-1068.8154 1008.4447,-1054.2049 1011.8991,-1041.0269"/>
<polygon fill="#b2a28a" stroke="#b2a28a" points="1015.3005,-1041.8539 1014.4507,-1031.2932 1008.5293,-1040.0788 1015.3005,-1041.8539"/>
</a>
</g>
<g id="a_edge38&#45;label"><a xlink:title="go/parser.(*parser).next &#45;&gt; go/parser.(*parser).consumeCommentGroup (2.19s)">
<text text-anchor="middle" x="1027.1982" y="-1051.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.19s</text>
</a>
</g>
</g>
<!-- N69 -->
<g id="node69" class="node">
<title>N69</title>
<g id="a_node69"><a xlink:title="go/parser.(*parser).next0 (1.87s)">
<polygon fill="#edebe8" stroke="#b2a590" points="897.9664,-810 820.9818,-810 820.9818,-757 897.9664,-757 897.9664,-810"/>
<text text-anchor="middle" x="859.4741" y="-798.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="859.4741" y="-789.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="859.4741" y="-780.8" font-family="Times,serif" font-size="9.00" fill="#000000">next0</text>
<text text-anchor="middle" x="859.4741" y="-771.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="859.4741" y="-762.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.87s (3.85%)</text>
</a>
</g>
</g>
<!-- N15&#45;&gt;N69 -->
<g id="edge73" class="edge">
<title>N15&#45;&gt;N69</title>
<g id="a_edge73"><a xlink:title="go/parser.(*parser).next &#45;&gt; go/parser.(*parser).next0 (0.95s)">
<path fill="none" stroke="#b2ada1" d="M967.237,-1080.7362C953.8971,-1066.7173 938.2215,-1048.796 926.4741,-1031 882.973,-965.1006 867.5883,-871.6969 862.2417,-820.5436"/>
<polygon fill="#b2ada1" stroke="#b2ada1" points="865.6966,-819.9094 861.2466,-810.2944 858.7294,-820.5859 865.6966,-819.9094"/>
</a>
</g>
<g id="a_edge73&#45;label"><a xlink:title="go/parser.(*parser).next &#45;&gt; go/parser.(*parser).next0 (0.95s)">
<text text-anchor="middle" x="909.1982" y="-948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.95s</text>
</a>
</g>
</g>
<!-- N67 -->
<g id="node67" class="node">
<title>N67</title>
<g id="a_node67"><a xlink:title="runtime.greyobject (1.20s)">
<polygon fill="#edecea" stroke="#b2ab9c" points="797.3503,-61 693.5979,-61 693.5979,-1 797.3503,-1 797.3503,-61"/>
<text text-anchor="middle" x="745.4741" y="-46.6" font-family="Times,serif" font-size="13.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="745.4741" y="-33.6" font-family="Times,serif" font-size="13.00" fill="#000000">greyobject</text>
<text text-anchor="middle" x="745.4741" y="-20.6" font-family="Times,serif" font-size="13.00" fill="#000000">1.08s (2.22%)</text>
<text text-anchor="middle" x="745.4741" y="-7.6" font-family="Times,serif" font-size="13.00" fill="#000000">of 1.20s (2.47%)</text>
</a>
</g>
</g>
<!-- N16&#45;&gt;N67 -->
<g id="edge62" class="edge">
<title>N16&#45;&gt;N67</title>
<g id="a_edge62"><a xlink:title="runtime.scanobject &#45;&gt; runtime.greyobject (1.20s)">
<path fill="none" stroke="#b2ab9c" d="M978.8306,-128.2763C929.1196,-110.959 863.271,-86.8244 806.4741,-62 806.3789,-61.9584 806.2836,-61.9167 806.1882,-61.8749"/>
<polygon fill="#b2ab9c" stroke="#b2ab9c" points="807.745,-58.7378 797.1918,-57.7986 804.8559,-65.1138 807.745,-58.7378"/>
</a>
</g>
<g id="a_edge62&#45;label"><a xlink:title="runtime.scanobject &#45;&gt; runtime.greyobject (1.20s)">
<text text-anchor="middle" x="898.1982" y="-82.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.20s</text>
</a>
</g>
</g>
<!-- N17 -->
<g id="node17" class="node">
<title>N17</title>
<g id="a_node17"><a xlink:title="go/types.(*Checker).objDecl (3.53s)">
<polygon fill="#ede9e4" stroke="#b29471" points="2330.244,-2827.5 2254.7042,-2827.5 2254.7042,-2787.5 2330.244,-2787.5 2330.244,-2827.5"/>
<text text-anchor="middle" x="2292.4741" y="-2817.1" font-family="Times,serif" font-size="8.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2292.4741" y="-2809.1" font-family="Times,serif" font-size="8.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2292.4741" y="-2801.1" font-family="Times,serif" font-size="8.00" fill="#000000">objDecl</text>
<text text-anchor="middle" x="2292.4741" y="-2793.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 3.53s (7.26%)</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N11 -->
<g id="edge138" class="edge">
<title>N17&#45;&gt;N11</title>
<g id="a_edge138"><a xlink:title="go/types.(*Checker).objDecl ... runtime.newobject (0.13s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M2310.2926,-2787.4386C2318.4824,-2777.7107 2328.0109,-2765.6352 2335.4741,-2754 2364.9426,-2708.0587 2398.296,-2604.6606 2400.4741,-2594 2407.5967,-2559.1396 2402.5973,-2549.5697 2403.4741,-2514 2418.3154,-1911.9187 2419.4741,-1761.2642 2419.4741,-1159 2419.4741,-1159 2419.4741,-1159 2419.4741,-1004.5 2419.4741,-981.5884 2375.0434,-860.4527 2374.4741,-860 2342.4907,-834.567 2231.1234,-851.8848 2191.4741,-842 2175.6174,-838.0468 2173.3796,-831.7519 2157.4741,-828 2050.873,-802.8539 1720.3176,-789.3659 1595.164,-785.0537"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.2186,-781.5537 1585.1054,-784.7118 1594.9807,-788.5496 1595.2186,-781.5537"/>
</a>
</g>
<g id="a_edge138&#45;label"><a xlink:title="go/types.(*Checker).objDecl ... runtime.newobject (0.13s)">
<text text-anchor="middle" x="2434.1982" y="-1789.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.13s</text>
</a>
</g>
</g>
<!-- N65 -->
<g id="node65" class="node">
<title>N65</title>
<g id="a_node65"><a xlink:title="go/types.(*Checker).collectParams (1.30s)">
<polygon fill="#edece9" stroke="#b2aa9a" points="2342.9664,-2709.5 2265.9818,-2709.5 2265.9818,-2656.5 2342.9664,-2656.5 2342.9664,-2709.5"/>
<text text-anchor="middle" x="2304.4741" y="-2698.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2304.4741" y="-2689.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2304.4741" y="-2680.3" font-family="Times,serif" font-size="9.00" fill="#000000">collectParams</text>
<text text-anchor="middle" x="2304.4741" y="-2671.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="2304.4741" y="-2662.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.30s (2.67%)</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N65 -->
<g id="edge58" class="edge">
<title>N17&#45;&gt;N65</title>
<g id="a_edge58"><a xlink:title="go/types.(*Checker).objDecl ... go/types.(*Checker).collectParams (1.28s)">
<path fill="none" stroke="#b2aa9a" stroke-dasharray="1,5" d="M2294.4021,-2787.4969C2296.1523,-2769.3391 2298.7776,-2742.1011 2300.9092,-2719.9863"/>
<polygon fill="#b2aa9a" stroke="#b2aa9a" points="2304.4037,-2720.2109 2301.8793,-2709.9212 2297.436,-2719.5393 2304.4037,-2720.2109"/>
</a>
</g>
<g id="a_edge58&#45;label"><a xlink:title="go/types.(*Checker).objDecl ... go/types.(*Checker).collectParams (1.28s)">
<text text-anchor="middle" x="2315.1982" y="-2742.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.28s</text>
</a>
</g>
</g>
<!-- N75 -->
<g id="node75" class="node">
<title>N75</title>
<g id="a_node75"><a xlink:title="go/types.(*Checker).expr (1.74s)">
<polygon fill="#edebe8" stroke="#b2a692" points="2557.244,-2703 2481.7042,-2703 2481.7042,-2663 2557.244,-2663 2557.244,-2703"/>
<text text-anchor="middle" x="2519.4741" y="-2692.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2519.4741" y="-2684.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2519.4741" y="-2676.6" font-family="Times,serif" font-size="8.00" fill="#000000">expr</text>
<text text-anchor="middle" x="2519.4741" y="-2668.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 1.74s (3.58%)</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N75 -->
<g id="edge46" class="edge">
<title>N17&#45;&gt;N75</title>
<g id="a_edge46"><a xlink:title="go/types.(*Checker).objDecl ... go/types.(*Checker).expr (1.73s)">
<path fill="none" stroke="#b2a692" stroke-dasharray="1,5" d="M2330.4541,-2790.3439C2352.1166,-2780.2743 2379.6211,-2767.0058 2403.4741,-2754 2429.4617,-2739.8303 2457.8136,-2722.5128 2479.9827,-2708.5281"/>
<polygon fill="#b2a692" stroke="#b2a692" points="2481.8931,-2711.4612 2488.4643,-2703.1503 2478.1446,-2705.5493 2481.8931,-2711.4612"/>
</a>
</g>
<g id="a_edge46&#45;label"><a xlink:title="go/types.(*Checker).objDecl ... go/types.(*Checker).expr (1.73s)">
<text text-anchor="middle" x="2442.1982" y="-2742.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.73s</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N11 -->
<g id="edge149" class="edge">
<title>N18&#45;&gt;N11</title>
<g id="a_edge149"><a xlink:title="go/parser.(*parser).parseFile ... runtime.newobject (0.09s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1179.3786,-2449.5082C1265.2658,-2445.5431 1489.148,-2432.8609 1673.4741,-2402 1761.0334,-2387.3403 1861.4741,-2423.278 1861.4741,-2334.5 1861.4741,-2334.5 1861.4741,-2334.5 1861.4741,-2047 1861.4741,-1752.7211 1874.4741,-1679.2789 1874.4741,-1385 1874.4741,-1385 1874.4741,-1385 1874.4741,-894 1874.4741,-835.7069 1686.0667,-802.3019 1594.84,-789.5439"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.1243,-786.0502 1584.7418,-788.1606 1594.1743,-792.9855 1595.1243,-786.0502"/>
</a>
</g>
<g id="a_edge149&#45;label"><a xlink:title="go/parser.(*parser).parseFile ... runtime.newobject (0.09s)">
<text text-anchor="middle" x="1888.1982" y="-1578.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.09s</text>
</a>
</g>
</g>
<!-- N19 -->
<g id="node19" class="node">
<title>N19</title>
<g id="a_node19"><a xlink:title="go/parser.(*parser).parseGenDecl (2.70s)">
<polygon fill="#edeae6" stroke="#b29d80" points="1181.9664,-2361 1104.9818,-2361 1104.9818,-2308 1181.9664,-2308 1181.9664,-2361"/>
<text text-anchor="middle" x="1143.4741" y="-2349.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1143.4741" y="-2340.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1143.4741" y="-2331.8" font-family="Times,serif" font-size="9.00" fill="#000000">parseGenDecl</text>
<text text-anchor="middle" x="1143.4741" y="-2322.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1143.4741" y="-2313.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.70s (5.55%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N19 -->
<g id="edge66" class="edge">
<title>N18&#45;&gt;N19</title>
<g id="a_edge66"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseGenDecl (1.13s)">
<path fill="none" stroke="#b2ab9d" d="M1143.4741,-2424.2725C1143.4741,-2408.5845 1143.4741,-2388.5312 1143.4741,-2371.3585"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="1146.9742,-2371.1031 1143.4741,-2361.1031 1139.9742,-2371.1031 1146.9742,-2371.1031"/>
</a>
</g>
<g id="a_edge66&#45;label"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseGenDecl (1.13s)">
<text text-anchor="middle" x="1160.1982" y="-2390.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.13s</text>
</a>
</g>
</g>
<!-- N32 -->
<g id="node32" class="node">
<title>N32</title>
<g id="a_node32"><a xlink:title="go/parser.(*parser).parseDecl (6.07s)">
<polygon fill="#ede5de" stroke="#b27643" points="1302.244,-1459 1222.7043,-1459 1222.7043,-1419 1302.244,-1419 1302.244,-1459"/>
<text text-anchor="middle" x="1262.4741" y="-1448.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1262.4741" y="-1440.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1262.4741" y="-1432.6" font-family="Times,serif" font-size="8.00" fill="#000000">parseDecl</text>
<text text-anchor="middle" x="1262.4741" y="-1424.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 6.07s (12.49%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N32 -->
<g id="edge16" class="edge">
<title>N18&#45;&gt;N32</title>
<g id="a_edge16"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseDecl (6.07s)">
<path fill="none" stroke="#b27643" d="M1175.9532,-2424.4323C1198.488,-2402.8504 1224.4741,-2370.2193 1224.4741,-2334.5 1224.4741,-2334.5 1224.4741,-2334.5 1224.4741,-1538 1224.4741,-1513.3189 1234.8953,-1487.3379 1244.823,-1468.187"/>
<polygon fill="#b27643" stroke="#b27643" points="1247.9143,-1469.8284 1249.6091,-1459.37 1241.7623,-1466.4889 1247.9143,-1469.8284"/>
</a>
</g>
<g id="a_edge16&#45;label"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseDecl (6.07s)">
<text text-anchor="middle" x="1241.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 6.07s</text>
</a>
</g>
</g>
<!-- N41 -->
<g id="node41" class="node">
<title>N41</title>
<g id="a_node41"><a xlink:title="go/parser.(*parser).parseIdent (1.09s)">
<polygon fill="#edecea" stroke="#b2ac9e" points="1639.629,-1252 1543.3192,-1252 1543.3192,-1184 1639.629,-1184 1639.629,-1252"/>
<text text-anchor="middle" x="1591.4741" y="-1238.4" font-family="Times,serif" font-size="12.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1591.4741" y="-1226.4" font-family="Times,serif" font-size="12.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1591.4741" y="-1214.4" font-family="Times,serif" font-size="12.00" fill="#000000">parseIdent</text>
<text text-anchor="middle" x="1591.4741" y="-1202.4" font-family="Times,serif" font-size="12.00" fill="#000000">0.63s (1.30%)</text>
<text text-anchor="middle" x="1591.4741" y="-1190.4" font-family="Times,serif" font-size="12.00" fill="#000000">of 1.09s (2.24%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N41 -->
<g id="edge154" class="edge">
<title>N18&#45;&gt;N41</title>
<g id="a_edge154"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseIdent (0.08s)">
<path fill="none" stroke="#b2b2b1" d="M1179.55,-2448.5944C1318.9236,-2438.8278 1814.4741,-2399.5297 1814.4741,-2334.5 1814.4741,-2334.5 1814.4741,-2334.5 1814.4741,-1737 1814.4741,-1521.3125 1815.3215,-1439.9196 1682.4741,-1270 1673.4592,-1258.4693 1661.1252,-1249.0509 1648.4479,-1241.5558"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1650.0948,-1238.4669 1639.6531,-1236.6718 1646.6963,-1244.5866 1650.0948,-1238.4669"/>
</a>
</g>
<g id="a_edge154&#45;label"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).parseIdent (0.08s)">
<text text-anchor="middle" x="1831.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N62 -->
<g id="node62" class="node">
<title>N62</title>
<g id="a_node62"><a xlink:title="go/parser.(*parser).expectSemi (1.39s)">
<polygon fill="#edebe9" stroke="#b2a998" points="1032.9664,-1244.5 955.9818,-1244.5 955.9818,-1191.5 1032.9664,-1191.5 1032.9664,-1244.5"/>
<text text-anchor="middle" x="994.4741" y="-1233.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="994.4741" y="-1224.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="994.4741" y="-1215.3" font-family="Times,serif" font-size="9.00" fill="#000000">expectSemi</text>
<text text-anchor="middle" x="994.4741" y="-1206.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="994.4741" y="-1197.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.39s (2.86%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N62 -->
<g id="edge96" class="edge">
<title>N18&#45;&gt;N62</title>
<g id="a_edge96"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).expectSemi (0.42s)">
<path fill="none" stroke="#b2b0aa" d="M1107.7046,-2436.265C1070.4535,-2418.2584 1017.4741,-2383.9556 1017.4741,-2334.5 1017.4741,-2334.5 1017.4741,-2334.5 1017.4741,-2153 1017.4741,-2067.0279 1027.5836,-2045.9235 1030.4741,-1960 1035.7358,-1803.5929 1042.5582,-1763.0688 1021.4741,-1608 1014.8225,-1559.0788 1001.3794,-1549.0169 995.4741,-1500 984.9335,-1412.5071 988.7213,-1308.6346 991.8992,-1254.6714"/>
<polygon fill="#b2b0aa" stroke="#b2b0aa" points="995.4003,-1254.7603 992.5223,-1244.5639 988.4136,-1254.3296 995.4003,-1254.7603"/>
</a>
</g>
<g id="a_edge96&#45;label"><a xlink:title="go/parser.(*parser).parseFile &#45;&gt; go/parser.(*parser).expectSemi (0.42s)">
<text text-anchor="middle" x="1052.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.42s</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N9 -->
<g id="edge121" class="edge">
<title>N19&#45;&gt;N9</title>
<g id="a_edge121"><a xlink:title="go/parser.(*parser).parseGenDecl ... runtime.growslice (0.18s)">
<path fill="none" stroke="#b2b1af" stroke-dasharray="1,5" d="M1119.967,-2307.8735C1113.4195,-2299.6265 1106.6823,-2290.2639 1101.4741,-2281 1094.0304,-2267.7597 1093.9985,-2263.4999 1089.4741,-2249 1034.056,-2071.3933 1033.5137,-2023.2655 987.4741,-1843 960.7722,-1738.4502 964.7822,-1708.8769 926.4741,-1608 901.674,-1542.6936 877.0336,-1534.2996 855.0259,-1468 803.819,-1313.736 793.4741,-1270.0409 793.4741,-1107.5 793.4741,-1107.5 793.4741,-1107.5 793.4741,-835 793.4741,-799.3197 788.5415,-783.4635 812.4741,-757 828.597,-739.1722 849.4959,-758.5547 863.4741,-739 893.7147,-696.6951 880.9186,-671.3333 864.4741,-622 862.9095,-617.306 860.5543,-612.7193 857.8382,-608.4247"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="860.5462,-606.1937 851.8938,-600.0793 854.8447,-610.2549 860.5462,-606.1937"/>
</a>
</g>
<g id="a_edge121&#45;label"><a xlink:title="go/parser.(*parser).parseGenDecl ... runtime.growslice (0.18s)">
<text text-anchor="middle" x="872.1982" y="-1434.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.18s</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N11 -->
<g id="edge115" class="edge">
<title>N19&#45;&gt;N11</title>
<g id="a_edge115"><a xlink:title="go/parser.(*parser).parseGenDecl ... runtime.newobject (0.21s)">
<path fill="none" stroke="#b2b1ae" stroke-dasharray="1,5" d="M1182.1182,-2331.241C1319.5519,-2319.141 1776.4741,-2274.3378 1776.4741,-2213.5 1776.4741,-2213.5 1776.4741,-2213.5 1776.4741,-1737 1776.4741,-1578.2991 1836.4741,-1543.7009 1836.4741,-1385 1836.4741,-1385 1836.4741,-1385 1836.4741,-894 1836.4741,-842.9255 1677.4147,-806.8949 1594.893,-791.6387"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="1595.4485,-788.1824 1584.9839,-789.8386 1594.1972,-795.0697 1595.4485,-788.1824"/>
</a>
</g>
<g id="a_edge115&#45;label"><a xlink:title="go/parser.(*parser).parseGenDecl ... runtime.newobject (0.21s)">
<text text-anchor="middle" x="1835.1982" y="-1533.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.21s</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N15 -->
<g id="edge116" class="edge">
<title>N19&#45;&gt;N15</title>
<g id="a_edge116"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).next (0.20s)">
<path fill="none" stroke="#b2b1ae" stroke-dasharray="1,5" d="M1125.423,-2307.9222C1111.1011,-2284.2285 1093.4741,-2248.0493 1093.4741,-2213.5 1093.4741,-2213.5 1093.4741,-2213.5 1093.4741,-1953 1093.4741,-1797.9347 1104.2069,-1749.8091 1041.4741,-1608 993.0506,-1498.5373 890.4741,-1504.6951 890.4741,-1385 890.4741,-1385 890.4741,-1385 890.4741,-1218 890.4741,-1182.0686 919.9945,-1153.0586 947.5798,-1133.7939"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="949.6786,-1136.6009 956.0438,-1128.1312 945.7862,-1130.7829 949.6786,-1136.6009"/>
</a>
</g>
<g id="a_edge116&#45;label"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).next (0.20s)">
<text text-anchor="middle" x="1102.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.20s</text>
</a>
</g>
</g>
<!-- N52 -->
<g id="node52" class="node">
<title>N52</title>
<g id="a_node52"><a xlink:title="go/parser.(*parser).parseRhsList (1.96s)">
<polygon fill="#edebe8" stroke="#b2a48e" points="1475.244,-2233.5 1399.7042,-2233.5 1399.7042,-2193.5 1475.244,-2193.5 1475.244,-2233.5"/>
<text text-anchor="middle" x="1437.4741" y="-2223.1" font-family="Times,serif" font-size="8.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1437.4741" y="-2215.1" font-family="Times,serif" font-size="8.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1437.4741" y="-2207.1" font-family="Times,serif" font-size="8.00" fill="#000000">parseRhsList</text>
<text text-anchor="middle" x="1437.4741" y="-2199.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 1.96s (4.03%)</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N52 -->
<g id="edge77" class="edge">
<title>N19&#45;&gt;N52</title>
<g id="a_edge77"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).parseRhsList (0.89s)">
<path fill="none" stroke="#b2ada2" stroke-dasharray="1,5" d="M1181.9095,-2318.6814C1235.4305,-2296.654 1332.3328,-2256.7724 1390.2067,-2232.9536"/>
<polygon fill="#b2ada2" stroke="#b2ada2" points="1391.5799,-2236.1734 1399.4952,-2229.1308 1388.9157,-2229.7002 1391.5799,-2236.1734"/>
</a>
</g>
<g id="a_edge77&#45;label"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).parseRhsList (0.89s)">
<text text-anchor="middle" x="1315.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.89s</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N62 -->
<g id="edge86" class="edge">
<title>N19&#45;&gt;N62</title>
<g id="a_edge86"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).expectSemi (0.66s)">
<path fill="none" stroke="#b2afa6" stroke-dasharray="1,5" d="M1140.5998,-2307.7816C1137.0497,-2272.4179 1131.4741,-2208.1057 1131.4741,-2153 1131.4741,-2153 1131.4741,-2153 1131.4741,-1793.5 1131.4741,-1709.6821 1115.7445,-1689.8023 1097.4741,-1608 1068.2172,-1477.0074 1025.035,-1323.5556 1005.1776,-1254.6974"/>
<polygon fill="#b2afa6" stroke="#b2afa6" points="1008.4489,-1253.4105 1002.3089,-1244.7762 1001.7244,-1255.3549 1008.4489,-1253.4105"/>
</a>
</g>
<g id="a_edge86&#45;label"><a xlink:title="go/parser.(*parser).parseGenDecl ... go/parser.(*parser).expectSemi (0.66s)">
<text text-anchor="middle" x="1148.1982" y="-1789.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.66s</text>
</a>
</g>
</g>
<!-- N20 -->
<g id="node20" class="node">
<title>N20</title>
<g id="a_node20"><a xlink:title="os.openFileNolog (7.65s)">
<polygon fill="#ede2da" stroke="#b26126" points="645.244,-2018 565.7043,-2018 565.7043,-1982 645.244,-1982 645.244,-2018"/>
<text text-anchor="middle" x="605.4741" y="-2005.6" font-family="Times,serif" font-size="8.00" fill="#000000">os</text>
<text text-anchor="middle" x="605.4741" y="-1997.6" font-family="Times,serif" font-size="8.00" fill="#000000">openFileNolog</text>
<text text-anchor="middle" x="605.4741" y="-1989.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 7.65s (15.74%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N1 -->
<g id="edge23" class="edge">
<title>N20&#45;&gt;N1</title>
<g id="a_edge23"><a xlink:title="os.openFileNolog ... syscall.Syscall (3.46s)">
<path fill="none" stroke="#b29572" stroke-dasharray="1,5" d="M603.6824,-1981.981C600.3166,-1941.2887 595.7635,-1839.7715 624.4741,-1762 629.7882,-1747.6052 637.7449,-1733.4418 646.4974,-1720.4635"/>
<polygon fill="#b29572" stroke="#b29572" points="649.4742,-1722.3142 652.3442,-1712.1154 643.7406,-1718.2985 649.4742,-1722.3142"/>
</a>
</g>
<g id="a_edge23&#45;label"><a xlink:title="os.openFileNolog ... syscall.Syscall (3.46s)">
<text text-anchor="middle" x="623.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.46s</text>
</a>
</g>
</g>
<!-- N29 -->
<g id="node29" class="node">
<title>N29</title>
<g id="a_node29"><a xlink:title="os.newFile (4.10s)">
<polygon fill="#ede8e3" stroke="#b28e67" points="755.1863,-1925.5 671.7619,-1925.5 671.7619,-1877.5 755.1863,-1877.5 755.1863,-1925.5"/>
<text text-anchor="middle" x="713.4741" y="-1913.5" font-family="Times,serif" font-size="10.00" fill="#000000">os</text>
<text text-anchor="middle" x="713.4741" y="-1903.5" font-family="Times,serif" font-size="10.00" fill="#000000">newFile</text>
<text text-anchor="middle" x="713.4741" y="-1893.5" font-family="Times,serif" font-size="10.00" fill="#000000">0.09s (0.19%)</text>
<text text-anchor="middle" x="713.4741" y="-1883.5" font-family="Times,serif" font-size="10.00" fill="#000000">of 4.10s (8.43%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N29 -->
<g id="edge19" class="edge">
<title>N20&#45;&gt;N29</title>
<g id="a_edge19"><a xlink:title="os.openFileNolog &#45;&gt; os.newFile (4.10s)">
<path fill="none" stroke="#b28e67" d="M625.283,-1981.9336C640.4156,-1968.1321 661.6338,-1948.7803 679.4655,-1932.5171"/>
<polygon fill="#b28e67" stroke="#b28e67" points="681.8427,-1935.0861 686.8728,-1925.7614 677.1256,-1929.9141 681.8427,-1935.0861"/>
</a>
</g>
<g id="a_edge19&#45;label"><a xlink:title="os.openFileNolog &#45;&gt; os.newFile (4.10s)">
<text text-anchor="middle" x="680.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 4.10s</text>
</a>
</g>
</g>
<!-- N21 -->
<g id="node21" class="node">
<title>N21</title>
<g id="a_node21"><a xlink:title="go/parser.(*parser).parseStmt (3.29s)">
<polygon fill="#ede9e5" stroke="#b29776" points="1480.244,-1558 1404.7042,-1558 1404.7042,-1518 1480.244,-1518 1480.244,-1558"/>
<text text-anchor="middle" x="1442.4741" y="-1547.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1442.4741" y="-1539.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1442.4741" y="-1531.6" font-family="Times,serif" font-size="8.00" fill="#000000">parseStmt</text>
<text text-anchor="middle" x="1442.4741" y="-1523.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 3.29s (6.77%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N32 -->
<g id="edge155" class="edge">
<title>N21&#45;&gt;N32</title>
<g id="a_edge155"><a xlink:title="go/parser.(*parser).parseStmt &#45;&gt; go/parser.(*parser).parseDecl (0.08s)">
<path fill="none" stroke="#b2b2b1" d="M1414.6174,-1517.8882C1400.0274,-1507.7544 1381.6619,-1495.6118 1364.4741,-1486 1347.6745,-1476.6053 1328.6637,-1467.4672 1311.6453,-1459.7847"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1312.981,-1456.5482 1302.4223,-1455.674 1310.1313,-1462.9419 1312.981,-1456.5482"/>
</a>
</g>
<g id="a_edge155&#45;label"><a xlink:title="go/parser.(*parser).parseStmt &#45;&gt; go/parser.(*parser).parseDecl (0.08s)">
<text text-anchor="middle" x="1403.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N34 -->
<g id="node34" class="node">
<title>N34</title>
<g id="a_node34"><a xlink:title="go/parser.(*parser).parseSimpleStmt (1.95s)">
<polygon fill="#edebe8" stroke="#b2a48e" points="1580.8048,-1468 1496.1434,-1468 1496.1434,-1410 1580.8048,-1410 1580.8048,-1468"/>
<text text-anchor="middle" x="1538.4741" y="-1456" font-family="Times,serif" font-size="10.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1538.4741" y="-1446" font-family="Times,serif" font-size="10.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1538.4741" y="-1436" font-family="Times,serif" font-size="10.00" fill="#000000">parseSimpleStmt</text>
<text text-anchor="middle" x="1538.4741" y="-1426" font-family="Times,serif" font-size="10.00" fill="#000000">0.07s (0.14%)</text>
<text text-anchor="middle" x="1538.4741" y="-1416" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.95s (4.01%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N34 -->
<g id="edge52" class="edge">
<title>N21&#45;&gt;N34</title>
<g id="a_edge52"><a xlink:title="go/parser.(*parser).parseStmt ... go/parser.(*parser).parseSimpleStmt (1.47s)">
<path fill="none" stroke="#b2a997" stroke-dasharray="1,5" d="M1461.9012,-1517.9659C1473.7516,-1505.7451 1489.2554,-1489.7568 1503.2107,-1475.3654"/>
<polygon fill="#b2a997" stroke="#b2a997" points="1505.891,-1477.6291 1510.3398,-1468.0135 1500.8657,-1472.756 1505.891,-1477.6291"/>
</a>
</g>
<g id="a_edge52&#45;label"><a xlink:title="go/parser.(*parser).parseStmt ... go/parser.(*parser).parseSimpleStmt (1.47s)">
<text text-anchor="middle" x="1507.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.47s</text>
</a>
</g>
</g>
<!-- N60 -->
<g id="node60" class="node">
<title>N60</title>
<g id="a_node60"><a xlink:title="go/parser.(*parser).parseIfStmt (1.73s)">
<polygon fill="#edebe8" stroke="#b2a692" points="1477.1863,-1468 1393.7619,-1468 1393.7619,-1410 1477.1863,-1410 1477.1863,-1468"/>
<text text-anchor="middle" x="1435.4741" y="-1456" font-family="Times,serif" font-size="10.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1435.4741" y="-1446" font-family="Times,serif" font-size="10.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1435.4741" y="-1436" font-family="Times,serif" font-size="10.00" fill="#000000">parseIfStmt</text>
<text text-anchor="middle" x="1435.4741" y="-1426" font-family="Times,serif" font-size="10.00" fill="#000000">0.06s (0.12%)</text>
<text text-anchor="middle" x="1435.4741" y="-1416" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.73s (3.56%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N60 -->
<g id="edge45" class="edge">
<title>N21&#45;&gt;N60</title>
<g id="a_edge45"><a xlink:title="go/parser.(*parser).parseStmt &#45;&gt; go/parser.(*parser).parseIfStmt (1.73s)">
<path fill="none" stroke="#b2a692" d="M1441.0576,-1517.9659C1440.249,-1506.5299 1439.2071,-1491.7948 1438.2428,-1478.1564"/>
<polygon fill="#b2a692" stroke="#b2a692" points="1441.7223,-1477.7417 1437.5256,-1468.0135 1434.7397,-1478.2355 1441.7223,-1477.7417"/>
</a>
</g>
<g id="a_edge45&#45;label"><a xlink:title="go/parser.(*parser).parseStmt &#45;&gt; go/parser.(*parser).parseIfStmt (1.73s)">
<text text-anchor="middle" x="1456.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.73s</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N11 -->
<g id="edge122" class="edge">
<title>N22&#45;&gt;N11</title>
<g id="a_edge122"><a xlink:title="runtime.mapassign_faststr &#45;&gt; runtime.newobject (0.18s)">
<path fill="none" stroke="#b2b1af" d="M1940.3313,-1193.8992C1931.9686,-1171.8271 1921.4741,-1138.0439 1921.4741,-1107.5 1921.4741,-1107.5 1921.4741,-1107.5 1921.4741,-894 1921.4741,-861.2043 1915.1987,-847.0092 1888.4741,-828 1842.3857,-795.2173 1678.0685,-786.5852 1595.1205,-784.3123"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="1595.0251,-780.8089 1584.9396,-784.0542 1594.8476,-787.8066 1595.0251,-780.8089"/>
</a>
</g>
<g id="a_edge122&#45;label"><a xlink:title="runtime.mapassign_faststr &#45;&gt; runtime.newobject (0.18s)">
<text text-anchor="middle" x="1938.1982" y="-1000.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.18s</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N38 -->
<g id="edge167" class="edge">
<title>N22&#45;&gt;N38</title>
<g id="a_edge167"><a xlink:title="runtime.mapassign_faststr ... runtime.typedmemmove (0.06s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M1948.9981,-1193.7989C1947.0867,-1143.6851 1948.6488,-1026.52 1997.4741,-946 2028.3431,-895.0926 2210.4741,-843.0353 2210.4741,-783.5 2210.4741,-783.5 2210.4741,-783.5 2210.4741,-582 2210.4741,-531.9345 1430.8517,-493.3546 1226.8481,-484.1164"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1226.8836,-480.6145 1216.7363,-483.6612 1226.5688,-487.6074 1226.8836,-480.6145"/>
</a>
</g>
<g id="a_edge167&#45;label"><a xlink:title="runtime.mapassign_faststr ... runtime.typedmemmove (0.06s)">
<text text-anchor="middle" x="2196.1982" y="-830.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N23 -->
<g id="node23" class="node">
<title>N23</title>
<g id="a_node23"><a xlink:title="runtime.gcBgMarkWorker (7.36s)">
<polygon fill="#ede2db" stroke="#b2652b" points="1095.244,-390 1015.7043,-390 1015.7043,-354 1095.244,-354 1095.244,-390"/>
<text text-anchor="middle" x="1055.4741" y="-377.6" font-family="Times,serif" font-size="8.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1055.4741" y="-369.6" font-family="Times,serif" font-size="8.00" fill="#000000">gcBgMarkWorker</text>
<text text-anchor="middle" x="1055.4741" y="-361.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 7.36s (15.14%)</text>
</a>
</g>
</g>
<!-- N23&#45;&gt;N6 -->
<g id="edge12" class="edge">
<title>N23&#45;&gt;N6</title>
<g id="a_edge12"><a xlink:title="runtime.gcBgMarkWorker &#45;&gt; runtime.systemstack (7.36s)">
<path fill="none" stroke="#b2652b" d="M1055.4741,-353.8846C1055.4741,-339.2336 1055.4741,-318.2262 1055.4741,-300.6554"/>
<polygon fill="#b2652b" stroke="#b2652b" points="1058.9742,-300.2468 1055.4741,-290.2468 1051.9742,-300.2468 1058.9742,-300.2468"/>
</a>
</g>
<g id="a_edge12&#45;label"><a xlink:title="runtime.gcBgMarkWorker &#45;&gt; runtime.systemstack (7.36s)">
<text text-anchor="middle" x="1072.1982" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 7.36s</text>
</a>
</g>
</g>
<!-- N24 -->
<g id="node24" class="node">
<title>N24</title>
<g id="a_node24"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage (24.57s)">
<polygon fill="#edd9d5" stroke="#b22100" points="861.917,-2843 677.0312,-2843 677.0312,-2772 861.917,-2772 861.917,-2843"/>
<text text-anchor="middle" x="769.4741" y="-2831.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="769.4741" y="-2822.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/golang</text>
<text text-anchor="middle" x="769.4741" y="-2813.8" font-family="Times,serif" font-size="9.00" fill="#000000">org/x/tools/go/loader</text>
<text text-anchor="middle" x="769.4741" y="-2804.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*importer)</text>
<text text-anchor="middle" x="769.4741" y="-2795.8" font-family="Times,serif" font-size="9.00" fill="#000000">findPackage</text>
<text text-anchor="middle" x="769.4741" y="-2786.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="769.4741" y="-2777.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 24.57s (50.55%)</text>
</a>
</g>
</g>
<!-- N24&#45;&gt;N2 -->
<g id="edge5" class="edge">
<title>N24&#45;&gt;N2</title>
<g id="a_edge5"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage ... go/build.(*Context).Import (23.23s)">
<path fill="none" stroke="#b22300" stroke-width="3" stroke-dasharray="1,5" d="M769.4741,-2771.8233C769.4741,-2756.3802 769.4741,-2738.2509 769.4741,-2722.4119"/>
<polygon fill="#b22300" stroke="#b22300" stroke-width="3" points="772.9742,-2722.3852 769.4741,-2712.3853 765.9742,-2722.3853 772.9742,-2722.3852"/>
</a>
</g>
<g id="a_edge5&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage ... go/build.(*Context).Import (23.23s)">
<text text-anchor="middle" x="789.6982" y="-2742.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 23.23s</text>
</a>
</g>
</g>
<!-- N26 -->
<g id="node26" class="node">
<title>N26</title>
<g id="a_node26"><a xlink:title="runtime.mapassign (1.42s)">
<polygon fill="#edebe9" stroke="#b2a998" points="2153.1863,-2475 2069.7619,-2475 2069.7619,-2427 2153.1863,-2427 2153.1863,-2475"/>
<text text-anchor="middle" x="2111.4741" y="-2463" font-family="Times,serif" font-size="10.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="2111.4741" y="-2453" font-family="Times,serif" font-size="10.00" fill="#000000">mapassign</text>
<text text-anchor="middle" x="2111.4741" y="-2443" font-family="Times,serif" font-size="10.00" fill="#000000">0.20s (0.41%)</text>
<text text-anchor="middle" x="2111.4741" y="-2433" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.42s (2.92%)</text>
</a>
</g>
</g>
<!-- N24&#45;&gt;N26 -->
<g id="edge105" class="edge">
<title>N24&#45;&gt;N26</title>
<g id="a_edge105"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage &#45;&gt; runtime.mapassign (0.27s)">
<path fill="none" stroke="#b2b1ad" d="M862.1025,-2805.5861C1103.5499,-2800.2075 1739.7911,-2783.4008 1830.4741,-2754 1954.5409,-2713.7757 1992.6517,-2693.9218 2076.4741,-2594 2101.3034,-2564.4019 2102.4633,-2551.7938 2110.4741,-2514 2112.4188,-2504.8255 2113.1731,-2494.7301 2113.3162,-2485.3596"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="2116.815,-2485.1525 2113.2489,-2475.1758 2109.8151,-2485.1988 2116.815,-2485.1525"/>
</a>
</g>
<g id="a_edge105&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage &#45;&gt; runtime.mapassign (0.27s)">
<text text-anchor="middle" x="2076.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.27s</text>
</a>
</g>
</g>
<!-- N25 -->
<g id="node25" class="node">
<title>N25</title>
<g id="a_node25"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open (9.65s)">
<polygon fill="#edded5" stroke="#b24501" points="532.873,-2362.5 368.0752,-2362.5 368.0752,-2306.5 532.873,-2306.5 532.873,-2362.5"/>
<text text-anchor="middle" x="450.4741" y="-2352.1" font-family="Times,serif" font-size="8.00" fill="#000000">github</text>
<text text-anchor="middle" x="450.4741" y="-2344.1" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/github</text>
<text text-anchor="middle" x="450.4741" y="-2336.1" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/ctxvfs</text>
<text text-anchor="middle" x="450.4741" y="-2328.1" font-family="Times,serif" font-size="8.00" fill="#000000">NameSpace</text>
<text text-anchor="middle" x="450.4741" y="-2320.1" font-family="Times,serif" font-size="8.00" fill="#000000">Open</text>
<text text-anchor="middle" x="450.4741" y="-2312.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 9.65s (19.85%)</text>
</a>
</g>
</g>
<!-- N28 -->
<g id="node28" class="node">
<title>N28</title>
<g id="a_node28"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open (8.21s)">
<polygon fill="#ede1d9" stroke="#b25a1b" points="532.873,-2241.5 368.0752,-2241.5 368.0752,-2185.5 532.873,-2185.5 532.873,-2241.5"/>
<text text-anchor="middle" x="450.4741" y="-2231.1" font-family="Times,serif" font-size="8.00" fill="#000000">github</text>
<text text-anchor="middle" x="450.4741" y="-2223.1" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/github</text>
<text text-anchor="middle" x="450.4741" y="-2215.1" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/ctxvfs</text>
<text text-anchor="middle" x="450.4741" y="-2207.1" font-family="Times,serif" font-size="8.00" fill="#000000">osFS</text>
<text text-anchor="middle" x="450.4741" y="-2199.1" font-family="Times,serif" font-size="8.00" fill="#000000">Open</text>
<text text-anchor="middle" x="450.4741" y="-2191.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 8.21s (16.89%)</text>
</a>
</g>
</g>
<!-- N25&#45;&gt;N28 -->
<g id="edge9" class="edge">
<title>N25&#45;&gt;N28</title>
<g id="a_edge9"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open (8.21s)">
<path fill="none" stroke="#b25a1b" stroke-dasharray="1,5" d="M450.4741,-2306.436C450.4741,-2290.212 450.4741,-2269.5696 450.4741,-2251.8621"/>
<polygon fill="#b25a1b" stroke="#b25a1b" points="453.9742,-2251.8309 450.4741,-2241.8309 446.9742,-2251.831 453.9742,-2251.8309"/>
</a>
</g>
<g id="a_edge9&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open (8.21s)">
<text text-anchor="middle" x="467.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 8.21s</text>
</a>
</g>
</g>
<!-- N58 -->
<g id="node58" class="node">
<title>N58</title>
<g id="a_node58"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (1.38s)">
<polygon fill="#edebe9" stroke="#b2a999" points="182.9224,-2249 .0259,-2249 .0259,-2178 182.9224,-2178 182.9224,-2249"/>
<text text-anchor="middle" x="91.4741" y="-2237.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="91.4741" y="-2228.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/github</text>
<text text-anchor="middle" x="91.4741" y="-2219.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/ctxvfs</text>
<text text-anchor="middle" x="91.4741" y="-2210.8" font-family="Times,serif" font-size="9.00" fill="#000000">mountedFS</text>
<text text-anchor="middle" x="91.4741" y="-2201.8" font-family="Times,serif" font-size="9.00" fill="#000000">translate</text>
<text text-anchor="middle" x="91.4741" y="-2192.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="91.4741" y="-2183.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.38s (2.84%)</text>
</a>
</g>
</g>
<!-- N25&#45;&gt;N58 -->
<g id="edge69" class="edge">
<title>N25&#45;&gt;N58</title>
<g id="a_edge69"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (1.06s)">
<path fill="none" stroke="#b2ac9f" d="M368.1123,-2306.7402C315.9611,-2289.1628 248.1554,-2266.309 192.7267,-2247.6269"/>
<polygon fill="#b2ac9f" stroke="#b2ac9f" points="193.8307,-2244.3056 183.2365,-2244.4283 191.5948,-2250.939 193.8307,-2244.3056"/>
</a>
</g>
<g id="a_edge69&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (1.06s)">
<text text-anchor="middle" x="299.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.06s</text>
</a>
</g>
</g>
<!-- N26&#45;&gt;N11 -->
<g id="edge135" class="edge">
<title>N26&#45;&gt;N11</title>
<g id="a_edge135"><a xlink:title="runtime.mapassign ... runtime.newobject (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M2111.1467,-2426.9033C2110.855,-2403.3449 2110.4741,-2366.4578 2110.4741,-2334.5 2110.4741,-2334.5 2110.4741,-2334.5 2110.4741,-1737 2110.4741,-1671.5589 2103.904,-1655.4142 2102.0259,-1590 2101.8473,-1583.7803 2102.0091,-1582.2222 2102.0259,-1576 2102.1255,-1539.1107 2102.4741,-1529.8894 2102.4741,-1493 2102.4741,-1493 2102.4741,-1493 2102.4741,-894 2102.4741,-862.7875 2103.2701,-846.9574 2078.4741,-828 2040.5554,-799.0098 1719.1923,-787.8612 1595.0968,-784.612"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1594.8471,-781.1045 1584.7608,-784.3478 1594.6681,-788.1023 1594.8471,-781.1045"/>
</a>
</g>
<g id="a_edge135&#45;label"><a xlink:title="runtime.mapassign ... runtime.newobject (0.14s)">
<text text-anchor="middle" x="2118.1982" y="-1578.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N26&#45;&gt;N38 -->
<g id="edge117" class="edge">
<title>N26&#45;&gt;N38</title>
<g id="a_edge117"><a xlink:title="runtime.mapassign ... runtime.typedmemmove (0.20s)">
<path fill="none" stroke="#b2b1ae" stroke-dasharray="1,5" d="M2124.0006,-2426.7128C2134.7346,-2403.6243 2148.4741,-2367.6052 2148.4741,-2334.5 2148.4741,-2334.5 2148.4741,-2334.5 2148.4741,-1850 2148.4741,-1643.3333 2148.4741,-1591.6667 2148.4741,-1385 2148.4741,-1385 2148.4741,-1385 2148.4741,-953 2148.4741,-904.5209 2178.9929,-900.6075 2205.4741,-860 2228.068,-825.3535 2258.4741,-824.8626 2258.4741,-783.5 2258.4741,-783.5 2258.4741,-783.5 2258.4741,-582 2258.4741,-513.1219 2411.9591,-568.8128 1999.4741,-528 1707.2234,-499.0836 1354.5122,-486.9364 1227.2292,-483.2801"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="1227.1303,-479.776 1217.0353,-482.9917 1226.9323,-486.7732 1227.1303,-479.776"/>
</a>
</g>
<g id="a_edge117&#45;label"><a xlink:title="runtime.mapassign ... runtime.typedmemmove (0.20s)">
<text text-anchor="middle" x="2165.1982" y="-1434.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.20s</text>
</a>
</g>
</g>
<!-- N27 -->
<g id="node27" class="node">
<title>N27</title>
<g id="a_node27"><a xlink:title="go/parser.(*parser).parseFuncDecl (4.58s)">
<polygon fill="#ede7e1" stroke="#b2895e" points="1362.9664,-1357.5 1285.9818,-1357.5 1285.9818,-1304.5 1362.9664,-1304.5 1362.9664,-1357.5"/>
<text text-anchor="middle" x="1324.4741" y="-1346.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1324.4741" y="-1337.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1324.4741" y="-1328.3" font-family="Times,serif" font-size="9.00" fill="#000000">parseFuncDecl</text>
<text text-anchor="middle" x="1324.4741" y="-1319.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1324.4741" y="-1310.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 4.58s (9.42%)</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N11 -->
<g id="edge108" class="edge">
<title>N27&#45;&gt;N11</title>
<g id="a_edge108"><a xlink:title="go/parser.(*parser).parseFuncDecl ... runtime.newobject (0.25s)">
<path fill="none" stroke="#b2b1ad" stroke-dasharray="1,5" d="M1348.1877,-1304.302C1364.9587,-1282.6231 1384.4741,-1250.4296 1384.4741,-1218 1384.4741,-1218 1384.4741,-1218 1384.4741,-894 1384.4741,-860.3717 1395.7739,-849.6878 1421.4741,-828 1443.3102,-809.573 1473.3306,-798.5558 1498.4785,-792.0938"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="1499.3007,-795.4959 1508.205,-789.7546 1497.6638,-788.69 1499.3007,-795.4959"/>
</a>
</g>
<g id="a_edge108&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl ... runtime.newobject (0.25s)">
<text text-anchor="middle" x="1401.1982" y="-1051.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.25s</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N15 -->
<g id="edge150" class="edge">
<title>N27&#45;&gt;N15</title>
<g id="a_edge150"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).next (0.09s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1310.0521,-1304.4686C1290.4507,-1271.0259 1252.1891,-1214.2627 1203.4741,-1184 1173.6207,-1165.4545 1159.797,-1177.169 1126.4741,-1166 1122.0561,-1164.5192 1078.2279,-1145.0181 1042.2673,-1128.9325"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1043.4064,-1125.6078 1032.849,-1124.7173 1040.5468,-1131.9971 1043.4064,-1125.6078"/>
</a>
</g>
<g id="a_edge150&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).next (0.09s)">
<text text-anchor="middle" x="1290.1982" y="-1213.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.09s</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N22 -->
<g id="edge125" class="edge">
<title>N27&#45;&gt;N22</title>
<g id="a_edge125"><a xlink:title="go/parser.(*parser).parseFuncDecl ... runtime.mapassign_faststr (0.15s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M1363.1608,-1324.0166C1470.6314,-1304.617 1773.0147,-1250.0334 1896.7117,-1227.7047"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1897.4929,-1231.1204 1906.7121,-1225.8995 1896.2493,-1224.2317 1897.4929,-1231.1204"/>
</a>
</g>
<g id="a_edge125&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl ... runtime.mapassign_faststr (0.15s)">
<text text-anchor="middle" x="1672.1982" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.15s</text>
</a>
</g>
</g>
<!-- N33 -->
<g id="node33" class="node">
<title>N33</title>
<g id="a_node33"><a xlink:title="go/parser.(*parser).parseStmtList (3.37s)">
<polygon fill="#ede9e4" stroke="#b29674" points="1480.9664,-1686.5 1403.9818,-1686.5 1403.9818,-1633.5 1480.9664,-1633.5 1480.9664,-1686.5"/>
<text text-anchor="middle" x="1442.4741" y="-1675.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1442.4741" y="-1666.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1442.4741" y="-1657.3" font-family="Times,serif" font-size="9.00" fill="#000000">parseStmtList</text>
<text text-anchor="middle" x="1442.4741" y="-1648.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="1442.4741" y="-1639.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 3.37s (6.93%)</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N33 -->
<g id="edge25" class="edge">
<title>N27&#45;&gt;N33</title>
<g id="a_edge25"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).parseStmtList (3.36s)">
<path fill="none" stroke="#b29674" stroke-dasharray="1,5" d="M1322.006,-1357.5816C1318.6492,-1398.8431 1314.4026,-1476.054 1327.0259,-1500 1333.4862,-1512.2551 1342.9296,-1507.9588 1352.4741,-1518 1382.9073,-1550.0171 1408.8122,-1593.8073 1424.9066,-1624.2603"/>
<polygon fill="#b29674" stroke="#b29674" points="1421.8639,-1625.9955 1429.5805,-1633.2553 1428.0753,-1622.7679 1421.8639,-1625.9955"/>
</a>
</g>
<g id="a_edge25&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).parseStmtList (3.36s)">
<text text-anchor="middle" x="1343.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.36s</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N41 -->
<g id="edge136" class="edge">
<title>N27&#45;&gt;N41</title>
<g id="a_edge136"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).parseIdent (0.13s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1362.7287,-1314.8099C1407.3892,-1295.9086 1481.7234,-1264.4488 1533.4875,-1242.5412"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1535.033,-1245.6877 1542.8781,-1238.5669 1532.3047,-1239.2412 1535.033,-1245.6877"/>
</a>
</g>
<g id="a_edge136&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl ... go/parser.(*parser).parseIdent (0.13s)">
<text text-anchor="middle" x="1482.1982" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.13s</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N62 -->
<g id="edge113" class="edge">
<title>N27&#45;&gt;N62</title>
<g id="a_edge113"><a xlink:title="go/parser.(*parser).parseFuncDecl &#45;&gt; go/parser.(*parser).expectSemi (0.22s)">
<path fill="none" stroke="#b2b1ae" d="M1286.1665,-1317.2459C1271.6227,-1312.2049 1254.8582,-1306.61 1239.4741,-1302 1154.5936,-1276.5648 1127.5162,-1287.8306 1046.4741,-1252 1044.6614,-1251.1986 1042.841,-1250.337 1041.0234,-1249.4281"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="1042.4671,-1246.2297 1032.0066,-1244.5479 1039.1352,-1252.3859 1042.4671,-1246.2297"/>
</a>
</g>
<g id="a_edge113&#45;label"><a xlink:title="go/parser.(*parser).parseFuncDecl &#45;&gt; go/parser.(*parser).expectSemi (0.22s)">
<text text-anchor="middle" x="1174.1982" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.22s</text>
</a>
</g>
</g>
<!-- N50 -->
<g id="node50" class="node">
<title>N50</title>
<g id="a_node50"><a xlink:title="os.Open (7.66s)">
<polygon fill="#ede2da" stroke="#b26125" points="645.244,-2118 565.7043,-2118 565.7043,-2082 645.244,-2082 645.244,-2118"/>
<text text-anchor="middle" x="605.4741" y="-2105.6" font-family="Times,serif" font-size="8.00" fill="#000000">os</text>
<text text-anchor="middle" x="605.4741" y="-2097.6" font-family="Times,serif" font-size="8.00" fill="#000000">Open</text>
<text text-anchor="middle" x="605.4741" y="-2089.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 7.66s (15.76%)</text>
</a>
</g>
</g>
<!-- N28&#45;&gt;N50 -->
<g id="edge14" class="edge">
<title>N28&#45;&gt;N50</title>
<g id="a_edge14"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open &#45;&gt; os.Open (7.17s)">
<path fill="none" stroke="#b2682e" d="M488.7887,-2185.4438C514.4506,-2166.6527 547.8909,-2142.1658 572.391,-2124.2254"/>
<polygon fill="#b2682e" stroke="#b2682e" points="574.6563,-2126.9047 580.6567,-2118.1728 570.5206,-2121.2569 574.6563,-2126.9047"/>
</a>
</g>
<g id="a_edge14&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open &#45;&gt; os.Open (7.17s)">
<text text-anchor="middle" x="559.1982" y="-2148.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 7.17s</text>
</a>
</g>
</g>
<!-- N63 -->
<g id="node63" class="node">
<title>N63</title>
<g id="a_node63"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve (0.79s)">
<polygon fill="#edeceb" stroke="#b2aea3" points="270.873,-2128 106.0752,-2128 106.0752,-2072 270.873,-2072 270.873,-2128"/>
<text text-anchor="middle" x="188.4741" y="-2117.6" font-family="Times,serif" font-size="8.00" fill="#000000">github</text>
<text text-anchor="middle" x="188.4741" y="-2109.6" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/github</text>
<text text-anchor="middle" x="188.4741" y="-2101.6" font-family="Times,serif" font-size="8.00" fill="#000000">com/sourcegraph/ctxvfs</text>
<text text-anchor="middle" x="188.4741" y="-2093.6" font-family="Times,serif" font-size="8.00" fill="#000000">osFS</text>
<text text-anchor="middle" x="188.4741" y="-2085.6" font-family="Times,serif" font-size="8.00" fill="#000000">resolve</text>
<text text-anchor="middle" x="188.4741" y="-2077.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 0.79s (1.63%)</text>
</a>
</g>
</g>
<!-- N28&#45;&gt;N63 -->
<g id="edge90" class="edge">
<title>N28&#45;&gt;N63</title>
<g id="a_edge90"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve (0.56s)">
<path fill="none" stroke="#b2afa8" d="M385.7101,-2185.4438C348.5509,-2169.3463 301.7428,-2149.0687 263.0521,-2132.3076"/>
<polygon fill="#b2afa8" stroke="#b2afa8" points="263.9685,-2128.8903 253.4012,-2128.1268 261.1859,-2135.3135 263.9685,-2128.8903"/>
</a>
</g>
<g id="a_edge90&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.Open &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve (0.56s)">
<text text-anchor="middle" x="336.1982" y="-2148.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.56s</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N11 -->
<g id="edge157" class="edge">
<title>N29&#45;&gt;N11</title>
<g id="a_edge157"><a xlink:title="os.newFile &#45;&gt; runtime.newobject (0.08s)">
<path fill="none" stroke="#b2b2b1" d="M755.3071,-1889.3289C774.9287,-1884.0885 798.7294,-1878.3959 820.4741,-1875 894.341,-1863.464 1429.0928,-1866.2064 1491.4741,-1825 1517.8483,-1807.5784 1507.8647,-1788.8931 1524.4741,-1762 1538.8631,-1738.7022 1548.5656,-1736.6579 1560.4741,-1712 1581.7669,-1667.9109 1613.7436,-1548.4967 1620.4741,-1500 1621.3295,-1493.8368 1621.5672,-1492.1255 1620.4741,-1486 1609.9892,-1427.2443 1594.6099,-1416.0219 1574.0259,-1360 1556.3962,-1312.0187 1548.4184,-1301.1789 1534.4741,-1252 1522.966,-1211.4129 1515.4741,-1201.1871 1515.4741,-1159 1515.4741,-1159 1515.4741,-1159 1515.4741,-894 1515.4741,-866.7001 1524.3543,-836.9694 1532.609,-815.2302"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1535.899,-816.428 1536.3236,-805.8417 1529.39,-813.8527 1535.899,-816.428"/>
</a>
</g>
<g id="a_edge157&#45;label"><a xlink:title="os.newFile &#45;&gt; runtime.newobject (0.08s)">
<text text-anchor="middle" x="1590.1982" y="-1326.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N74 -->
<g id="node74" class="node">
<title>N74</title>
<g id="a_node74"><a xlink:title="syscall.Fstat (3.24s)">
<polygon fill="#ede9e5" stroke="#b29877" points="811.9664,-1815.5 734.9818,-1815.5 734.9818,-1771.5 811.9664,-1771.5 811.9664,-1815.5"/>
<text text-anchor="middle" x="773.4741" y="-1804.3" font-family="Times,serif" font-size="9.00" fill="#000000">syscall</text>
<text text-anchor="middle" x="773.4741" y="-1795.3" font-family="Times,serif" font-size="9.00" fill="#000000">Fstat</text>
<text text-anchor="middle" x="773.4741" y="-1786.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="773.4741" y="-1777.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 3.24s (6.67%)</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N74 -->
<g id="edge32" class="edge">
<title>N29&#45;&gt;N74</title>
<g id="a_edge32"><a xlink:title="os.newFile &#45;&gt; syscall.Fstat (2.82s)">
<path fill="none" stroke="#b29c7e" d="M726.9393,-1877.2627C735.5683,-1861.7304 746.8516,-1841.4205 756.1465,-1824.6898"/>
<polygon fill="#b29c7e" stroke="#b29c7e" points="759.2793,-1826.2576 761.0762,-1815.8163 753.1602,-1822.8581 759.2793,-1826.2576"/>
</a>
</g>
<g id="a_edge32&#45;label"><a xlink:title="os.newFile &#45;&gt; syscall.Fstat (2.82s)">
<text text-anchor="middle" x="762.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.82s</text>
</a>
</g>
</g>
<!-- N79 -->
<g id="node79" class="node">
<title>N79</title>
<g id="a_node79"><a xlink:title="runtime.kevent (0.66s)">
<polygon fill="#edeceb" stroke="#b2afa6" points="717.133,-1815.5 633.8152,-1815.5 633.8152,-1771.5 717.133,-1771.5 717.133,-1815.5"/>
<text text-anchor="middle" x="675.4741" y="-1801.9" font-family="Times,serif" font-size="12.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="675.4741" y="-1789.9" font-family="Times,serif" font-size="12.00" fill="#000000">kevent</text>
<text text-anchor="middle" x="675.4741" y="-1777.9" font-family="Times,serif" font-size="12.00" fill="#000000">0.66s (1.36%)</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N79 -->
<g id="edge93" class="edge">
<title>N29&#45;&gt;N79</title>
<g id="a_edge93"><a xlink:title="os.newFile ... runtime.kevent (0.49s)">
<path fill="none" stroke="#b2b0a9" stroke-dasharray="1,5" d="M704.3066,-1877.0606C701.9027,-1870.554 699.3372,-1863.5212 697.0259,-1857 693.3797,-1846.7127 689.5137,-1835.4441 686.0779,-1825.2924"/>
<polygon fill="#b2b0a9" stroke="#b2b0a9" points="689.3191,-1823.9502 682.8096,-1815.5909 682.6854,-1826.185 689.3191,-1823.9502"/>
</a>
</g>
<g id="a_edge93&#45;label"><a xlink:title="os.newFile ... runtime.kevent (0.49s)">
<text text-anchor="middle" x="714.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.49s</text>
</a>
</g>
</g>
<!-- N30 -->
<g id="node30" class="node">
<title>N30</title>
<g id="a_node30"><a xlink:title="go/parser.(*parser).parsePrimaryExpr (2.71s)">
<polygon fill="#edeae6" stroke="#b29d80" points="1478.4541,-1928 1396.4942,-1928 1396.4942,-1875 1478.4541,-1875 1478.4541,-1928"/>
<text text-anchor="middle" x="1437.4741" y="-1916.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1437.4741" y="-1907.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1437.4741" y="-1898.8" font-family="Times,serif" font-size="9.00" fill="#000000">parsePrimaryExpr</text>
<text text-anchor="middle" x="1437.4741" y="-1889.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="1437.4741" y="-1880.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.71s (5.57%)</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N9 -->
<g id="edge101" class="edge">
<title>N30&#45;&gt;N9</title>
<g id="a_edge101"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... runtime.growslice (0.34s)">
<path fill="none" stroke="#b2b1ac" stroke-dasharray="1,5" d="M1414.9107,-1874.9626C1366.8613,-1818.1012 1251.55,-1679.7731 1162.4741,-1558 1134.0914,-1519.1988 1119.5902,-1512.9238 1102.4741,-1468 1067.9568,-1377.4037 1085.3115,-1348.0345 1072.0259,-1252 1059.5487,-1161.8096 1106.4374,-1115.7124 1044.4741,-1049 1018.1945,-1020.7062 986.0064,-1059.0571 959.4741,-1031 943.6778,-1014.2959 908.9834,-641.2891 896.4741,-622 892.3532,-615.6456 886.8286,-610.0927 880.7686,-605.3101"/>
<polygon fill="#b2b1ac" stroke="#b2b1ac" points="882.4341,-602.2001 872.2545,-599.2628 878.3806,-607.907 882.4341,-602.2001"/>
</a>
</g>
<g id="a_edge101&#45;label"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... runtime.growslice (0.34s)">
<text text-anchor="middle" x="1088.1982" y="-1213.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.34s</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N11 -->
<g id="edge145" class="edge">
<title>N30&#45;&gt;N11</title>
<g id="a_edge145"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... runtime.newobject (0.11s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1478.5376,-1877.5665C1489.6121,-1870.9948 1501.5502,-1863.8034 1512.4741,-1857 1534.5528,-1843.2495 1543.1276,-1843.4377 1561.4741,-1825 1603.6476,-1782.6171 1604.3052,-1763.6212 1634.4741,-1712 1749.8047,-1514.6607 1777.4741,-1446.5694 1777.4741,-1218 1777.4741,-1218 1777.4741,-1218 1777.4741,-894 1777.4741,-851.8832 1746.2147,-848.5902 1709.4741,-828 1673.8764,-808.0503 1628.8355,-796.6419 1595.1254,-790.3828"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.5071,-786.8961 1585.0505,-788.6019 1594.2886,-793.7893 1595.5071,-786.8961"/>
</a>
</g>
<g id="a_edge145&#45;label"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... runtime.newobject (0.11s)">
<text text-anchor="middle" x="1791.9419" y="-1326.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.11s</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N15 -->
<g id="edge109" class="edge">
<title>N30&#45;&gt;N15</title>
<g id="a_edge109"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... go/parser.(*parser).next (0.25s)">
<path fill="none" stroke="#b2b1ad" stroke-dasharray="1,5" d="M1396.4973,-1885.127C1386.7436,-1881.531 1376.3102,-1877.9274 1366.4741,-1875 1331.5439,-1864.6041 1315.2173,-1879.406 1286.4741,-1857 1249.1649,-1827.9165 1263.7915,-1801.9607 1238.4741,-1762 1164.9154,-1645.8958 1156.7213,-1602.6971 1048.4741,-1518 1032.9774,-1505.8747 1023.1743,-1512.5577 1008.0259,-1500 960.1799,-1460.3367 928.4741,-1447.1483 928.4741,-1385 928.4741,-1385 928.4741,-1385 928.4741,-1218 928.4741,-1189.7906 944.524,-1162.5317 960.7944,-1142.1459"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="963.5329,-1144.3268 967.2483,-1134.4048 958.1564,-1139.8443 963.5329,-1144.3268"/>
</a>
</g>
<g id="a_edge109&#45;label"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... go/parser.(*parser).next (0.25s)">
<text text-anchor="middle" x="1025.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.25s</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N41 -->
<g id="edge137" class="edge">
<title>N30&#45;&gt;N41</title>
<g id="a_edge137"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... go/parser.(*parser).parseIdent (0.13s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1471.1551,-1874.6555C1487.925,-1860.6161 1508.0666,-1842.7007 1524.4741,-1825 1528.3037,-1820.8686 1582.5686,-1748.8262 1585.4741,-1744 1593.5754,-1730.5432 1594.096,-1726.354 1600.4741,-1712 1638.4533,-1626.5274 1637.0623,-1600.0138 1682.0259,-1518 1686.7019,-1509.471 1691.5762,-1509.285 1694.4741,-1500 1725.4588,-1400.7229 1638.0825,-1382.4199 1604.4741,-1284 1602.0871,-1277.0097 1600.086,-1269.4447 1598.4259,-1262.0157"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1601.8157,-1261.1239 1596.3692,-1252.0363 1594.9598,-1262.5369 1601.8157,-1261.1239"/>
</a>
</g>
<g id="a_edge137&#45;label"><a xlink:title="go/parser.(*parser).parsePrimaryExpr ... go/parser.(*parser).parseIdent (0.13s)">
<text text-anchor="middle" x="1698.1982" y="-1533.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.13s</text>
</a>
</g>
</g>
<!-- N46 -->
<g id="node46" class="node">
<title>N46</title>
<g id="a_node46"><a xlink:title="go/parser.(*parser).parseOperand (1.39s)">
<polygon fill="#edebe9" stroke="#b2a998" points="1482.4073,-1825 1392.541,-1825 1392.541,-1762 1482.4073,-1762 1482.4073,-1825"/>
<text text-anchor="middle" x="1437.4741" y="-1812.2" font-family="Times,serif" font-size="11.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1437.4741" y="-1801.2" font-family="Times,serif" font-size="11.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1437.4741" y="-1790.2" font-family="Times,serif" font-size="11.00" fill="#000000">parseOperand</text>
<text text-anchor="middle" x="1437.4741" y="-1779.2" font-family="Times,serif" font-size="11.00" fill="#000000">0.22s (0.45%)</text>
<text text-anchor="middle" x="1437.4741" y="-1768.2" font-family="Times,serif" font-size="11.00" fill="#000000">of 1.39s (2.86%)</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N46 -->
<g id="edge55" class="edge">
<title>N30&#45;&gt;N46</title>
<g id="a_edge55"><a xlink:title="go/parser.(*parser).parsePrimaryExpr &#45;&gt; go/parser.(*parser).parseOperand (1.39s)">
<path fill="none" stroke="#b2a998" d="M1437.4741,-1874.8034C1437.4741,-1862.9741 1437.4741,-1848.7727 1437.4741,-1835.5723"/>
<polygon fill="#b2a998" stroke="#b2a998" points="1440.9742,-1835.2648 1437.4741,-1825.2648 1433.9742,-1835.2648 1440.9742,-1835.2648"/>
</a>
</g>
<g id="a_edge55&#45;label"><a xlink:title="go/parser.(*parser).parsePrimaryExpr &#45;&gt; go/parser.(*parser).parseOperand (1.39s)">
<text text-anchor="middle" x="1454.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.39s</text>
</a>
</g>
</g>
<!-- N31&#45;&gt;N17 -->
<g id="edge21" class="edge">
<title>N31&#45;&gt;N17</title>
<g id="a_edge21"><a xlink:title="go/types.(*Checker).checkFiles ... go/types.(*Checker).objDecl (3.49s)">
<path fill="none" stroke="#b29572" stroke-dasharray="1,5" d="M1588.1659,-2922.6639C1709.5605,-2902.8143 2106.5819,-2837.8959 2244.6419,-2815.3212"/>
<polygon fill="#b29572" stroke="#b29572" points="2245.2077,-2818.7753 2254.5118,-2813.7074 2244.078,-2811.867 2245.2077,-2818.7753"/>
</a>
</g>
<g id="a_edge21&#45;label"><a xlink:title="go/types.(*Checker).checkFiles ... go/types.(*Checker).objDecl (3.49s)">
<text text-anchor="middle" x="1961.1982" y="-2863.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.49s</text>
</a>
</g>
</g>
<!-- N51 -->
<g id="node51" class="node">
<title>N51</title>
<g id="a_node51"><a xlink:title="go/types.(*Checker).collectObjects (0.99s)">
<polygon fill="#edecea" stroke="#b2aca0" points="2067.1863,-2592 1983.7619,-2592 1983.7619,-2534 2067.1863,-2534 2067.1863,-2592"/>
<text text-anchor="middle" x="2025.4741" y="-2580" font-family="Times,serif" font-size="10.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2025.4741" y="-2570" font-family="Times,serif" font-size="10.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2025.4741" y="-2560" font-family="Times,serif" font-size="10.00" fill="#000000">collectObjects</text>
<text text-anchor="middle" x="2025.4741" y="-2550" font-family="Times,serif" font-size="10.00" fill="#000000">0.09s (0.19%)</text>
<text text-anchor="middle" x="2025.4741" y="-2540" font-family="Times,serif" font-size="10.00" fill="#000000">of 0.99s (2.04%)</text>
</a>
</g>
</g>
<!-- N31&#45;&gt;N51 -->
<g id="edge70" class="edge">
<title>N31&#45;&gt;N51</title>
<g id="a_edge70"><a xlink:title="go/types.(*Checker).checkFiles &#45;&gt; go/types.(*Checker).collectObjects (0.99s)">
<path fill="none" stroke="#b2aca0" d="M1586.8721,-2901.9197C1670.6355,-2837.1935 1885.2284,-2671.3717 1979.6808,-2598.3857"/>
<polygon fill="#b2aca0" stroke="#b2aca0" points="1981.8543,-2601.1294 1987.6271,-2592.2454 1977.5742,-2595.5904 1981.8543,-2601.1294"/>
</a>
</g>
<g id="a_edge70&#45;label"><a xlink:title="go/types.(*Checker).checkFiles &#45;&gt; go/types.(*Checker).collectObjects (0.99s)">
<text text-anchor="middle" x="1810.1982" y="-2742.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.99s</text>
</a>
</g>
</g>
<!-- N32&#45;&gt;N19 -->
<g id="edge50" class="edge">
<title>N32&#45;&gt;N19</title>
<g id="a_edge50"><a xlink:title="go/parser.(*parser).parseDecl &#45;&gt; go/parser.(*parser).parseGenDecl (1.57s)">
<path fill="none" stroke="#b2a895" d="M1270.812,-1459.0932C1283.2635,-1490.2999 1306.1437,-1552.5994 1314.4741,-1608 1323.462,-1667.7725 1321.7226,-1683.9918 1314.4741,-1744 1288.325,-1960.4805 1195.0012,-2207.5261 1158.3775,-2298.4711"/>
<polygon fill="#b2a895" stroke="#b2a895" points="1155.1165,-2297.1992 1154.6059,-2307.7817 1161.6044,-2299.8274 1155.1165,-2297.1992"/>
</a>
</g>
<g id="a_edge50&#45;label"><a xlink:title="go/parser.(*parser).parseDecl &#45;&gt; go/parser.(*parser).parseGenDecl (1.57s)">
<text text-anchor="middle" x="1308.1982" y="-1897.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.57s</text>
</a>
</g>
</g>
<!-- N32&#45;&gt;N27 -->
<g id="edge18" class="edge">
<title>N32&#45;&gt;N27</title>
<g id="a_edge18"><a xlink:title="go/parser.(*parser).parseDecl &#45;&gt; go/parser.(*parser).parseFuncDecl (4.58s)">
<path fill="none" stroke="#b2895e" d="M1267.0749,-1418.9197C1270.4137,-1406.592 1275.6472,-1390.7732 1283.0259,-1378 1285.4493,-1373.8049 1288.2837,-1369.6472 1291.3129,-1365.6407"/>
<polygon fill="#b2895e" stroke="#b2895e" points="1294.1889,-1367.6496 1297.7349,-1357.6657 1288.7369,-1363.2592 1294.1889,-1367.6496"/>
</a>
</g>
<g id="a_edge18&#45;label"><a xlink:title="go/parser.(*parser).parseDecl &#45;&gt; go/parser.(*parser).parseFuncDecl (4.58s)">
<text text-anchor="middle" x="1299.1982" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 4.58s</text>
</a>
</g>
</g>
<!-- N33&#45;&gt;N9 -->
<g id="edge124" class="edge">
<title>N33&#45;&gt;N9</title>
<g id="a_edge124"><a xlink:title="go/parser.(*parser).parseStmtList &#45;&gt; runtime.growslice (0.17s)">
<path fill="none" stroke="#b2b1af" d="M1409.1392,-1633.2892C1346.8978,-1583.2469 1218.7798,-1479.3721 1213.4741,-1468 1202.5754,-1444.6395 1211.8724,-1435.728 1213.4741,-1410 1214.3647,-1395.6948 1210.5434,-1390.5458 1217.4741,-1378 1223.5831,-1366.9417 1233.1013,-1370.9083 1239.4741,-1360 1285.2155,-1281.7048 1274.4741,-1249.6776 1274.4741,-1159 1274.4741,-1159 1274.4741,-1159 1274.4741,-1004.5 1274.4741,-963.1374 1236.726,-966.4479 1221.4741,-928 1206.0613,-889.1464 1207.4741,-876.799 1207.4741,-835 1207.4741,-835 1207.4741,-835 1207.4741,-680.5 1207.4741,-652.397 1205.8839,-638.9582 1183.4741,-622 1159.9673,-604.2116 972.8957,-590.4764 882.7333,-584.8186"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="882.6927,-581.3095 872.4956,-584.1849 882.2601,-588.2962 882.6927,-581.3095"/>
</a>
</g>
<g id="a_edge124&#45;label"><a xlink:title="go/parser.(*parser).parseStmtList &#45;&gt; runtime.growslice (0.17s)">
<text text-anchor="middle" x="1291.1982" y="-1103.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.17s</text>
</a>
</g>
</g>
<!-- N33&#45;&gt;N21 -->
<g id="edge26" class="edge">
<title>N33&#45;&gt;N21</title>
<g id="a_edge26"><a xlink:title="go/parser.(*parser).parseStmtList &#45;&gt; go/parser.(*parser).parseStmt (3.29s)">
<path fill="none" stroke="#b29776" d="M1442.4741,-1633.2266C1442.4741,-1614.0817 1442.4741,-1588.2863 1442.4741,-1568.372"/>
<polygon fill="#b29776" stroke="#b29776" points="1445.9742,-1568.2774 1442.4741,-1558.2774 1438.9742,-1568.2774 1445.9742,-1568.2774"/>
</a>
</g>
<g id="a_edge26&#45;label"><a xlink:title="go/parser.(*parser).parseStmtList &#45;&gt; go/parser.(*parser).parseStmt (3.29s)">
<text text-anchor="middle" x="1459.1982" y="-1578.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.29s</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N11 -->
<g id="edge152" class="edge">
<title>N34&#45;&gt;N11</title>
<g id="a_edge152"><a xlink:title="go/parser.(*parser).parseSimpleStmt ... runtime.newobject (0.09s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1569.8719,-1409.8231C1598.5332,-1380.975 1639.136,-1334.0071 1657.4741,-1284 1692.4029,-1188.7512 1668.4741,-1157.4512 1668.4741,-1056 1668.4741,-1056 1668.4741,-1056 1668.4741,-894 1668.4741,-851.8964 1628.0644,-821.6554 1593.7585,-803.5685"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.2446,-800.398 1584.741,-799.011 1592.0871,-806.6455 1595.2446,-800.398"/>
</a>
</g>
<g id="a_edge152&#45;label"><a xlink:title="go/parser.(*parser).parseSimpleStmt ... runtime.newobject (0.09s)">
<text text-anchor="middle" x="1689.1982" y="-1103.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.09s</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N21 -->
<g id="edge163" class="edge">
<title>N34&#45;&gt;N21</title>
<g id="a_edge163"><a xlink:title="go/parser.(*parser).parseSimpleStmt &#45;&gt; go/parser.(*parser).parseStmt (0.06s)">
<path fill="none" stroke="#b2b2b1" d="M1538.8142,-1468.0363C1537.6021,-1479.0178 1534.5074,-1491.0196 1527.4741,-1500 1524.6733,-1503.5762 1507.9443,-1511.3382 1490.0585,-1518.9206"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1488.544,-1515.7602 1480.6676,-1522.8463 1491.2438,-1522.2186 1488.544,-1515.7602"/>
</a>
</g>
<g id="a_edge163&#45;label"><a xlink:title="go/parser.(*parser).parseSimpleStmt &#45;&gt; go/parser.(*parser).parseStmt (0.06s)">
<text text-anchor="middle" x="1551.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N52 -->
<g id="edge89" class="edge">
<title>N34&#45;&gt;N52</title>
<g id="a_edge89"><a xlink:title="go/parser.(*parser).parseSimpleStmt &#45;&gt; go/parser.(*parser).parseRhsList (0.61s)">
<path fill="none" stroke="#b2afa7" d="M1561.5208,-1468.0099C1565.2809,-1473.7352 1568.8106,-1479.874 1571.4741,-1486 1616.9348,-1590.5602 1624.4741,-1622.9846 1624.4741,-1737 1624.4741,-2100 1624.4741,-2100 1624.4741,-2100 1624.4741,-2132.6694 1540.0133,-2172.691 1484.6168,-2195.427"/>
<polygon fill="#b2afa7" stroke="#b2afa7" points="1483.2706,-2192.196 1475.3164,-2199.1946 1485.8989,-2198.6839 1483.2706,-2192.196"/>
</a>
</g>
<g id="a_edge89&#45;label"><a xlink:title="go/parser.(*parser).parseSimpleStmt &#45;&gt; go/parser.(*parser).parseRhsList (0.61s)">
<text text-anchor="middle" x="1641.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.61s</text>
</a>
</g>
</g>
<!-- N35 -->
<g id="node35" class="node">
<title>N35</title>
<g id="a_node35"><a xlink:title="runtime.slicebytetostring (1.90s)">
<polygon fill="#edebe8" stroke="#b2a58f" points="370.9664,-604 293.9818,-604 293.9818,-560 370.9664,-560 370.9664,-604"/>
<text text-anchor="middle" x="332.4741" y="-592.8" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="332.4741" y="-583.8" font-family="Times,serif" font-size="9.00" fill="#000000">slicebytetostring</text>
<text text-anchor="middle" x="332.4741" y="-574.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.03s (0.062%)</text>
<text text-anchor="middle" x="332.4741" y="-565.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.90s (3.91%)</text>
</a>
</g>
</g>
<!-- N35&#45;&gt;N4 -->
<g id="edge94" class="edge">
<title>N35&#45;&gt;N4</title>
<g id="a_edge94"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.mallocgc (0.45s)">
<path fill="none" stroke="#b2b0aa" d="M343.2681,-559.9763C350.1305,-548.4452 360.1552,-535.2505 373.0259,-528 407.071,-508.8213 654.8638,-492.2762 772.6283,-485.4002"/>
<polygon fill="#b2b0aa" stroke="#b2b0aa" points="773.1453,-488.8762 782.9264,-484.8042 772.7408,-481.8879 773.1453,-488.8762"/>
</a>
</g>
<g id="a_edge94&#45;label"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.mallocgc (0.45s)">
<text text-anchor="middle" x="390.1982" y="-530.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.45s</text>
</a>
</g>
</g>
<!-- N35&#45;&gt;N5 -->
<g id="edge54" class="edge">
<title>N35&#45;&gt;N5</title>
<g id="a_edge54"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.memmove (1.42s)">
<path fill="none" stroke="#b2a998" d="M326.1786,-559.9628C320.9879,-539.8355 314.4741,-509.1658 314.4741,-482 314.4741,-482 314.4741,-482 314.4741,-268 314.4741,-243.263 322.9637,-217.1232 332.1206,-196.1232"/>
<polygon fill="#b2a998" stroke="#b2a998" points="335.3803,-197.4105 336.3467,-186.8598 329.0117,-194.505 335.3803,-197.4105"/>
</a>
</g>
<g id="a_edge54&#45;label"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.memmove (1.42s)">
<text text-anchor="middle" x="331.1982" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.42s</text>
</a>
</g>
</g>
<!-- N36 -->
<g id="node36" class="node">
<title>N36</title>
<g id="a_node36"><a xlink:title="go/types.(*Checker).exprInternal (1.70s)">
<polygon fill="#edebe9" stroke="#b2a793" points="2607.4073,-3077 2517.541,-3077 2517.541,-3014 2607.4073,-3014 2607.4073,-3077"/>
<text text-anchor="middle" x="2562.4741" y="-3064.2" font-family="Times,serif" font-size="11.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2562.4741" y="-3053.2" font-family="Times,serif" font-size="11.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2562.4741" y="-3042.2" font-family="Times,serif" font-size="11.00" fill="#000000">exprInternal</text>
<text text-anchor="middle" x="2562.4741" y="-3031.2" font-family="Times,serif" font-size="11.00" fill="#000000">0.28s (0.58%)</text>
<text text-anchor="middle" x="2562.4741" y="-3020.2" font-family="Times,serif" font-size="11.00" fill="#000000">of 1.70s (3.50%)</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N42 -->
<g id="edge170" class="edge">
<title>N36&#45;&gt;N42</title>
<g id="a_edge170"><a xlink:title="go/types.(*Checker).exprInternal ... runtime.makeslice (0.05s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M2517.2753,-3045.0137C2286.9361,-3042.3944 1249.1394,-3028.8456 1109.4741,-2996 968.722,-2962.8987 952.6055,-2900.3613 813.4741,-2861 750.9875,-2843.3221 725.0957,-2874.7975 668.4741,-2843 434.4527,-2711.5786 381.3841,-2623.4372 293.0259,-2370 239.7357,-2217.1481 331.8529,-1731.4372 332.4741,-1730 338.973,-1714.9643 349.9803,-1700.9068 360.9325,-1689.3922"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="363.5062,-1691.7676 368.0738,-1682.2079 358.5416,-1686.8327 363.5062,-1691.7676"/>
</a>
</g>
<g id="a_edge170&#45;label"><a xlink:title="go/types.(*Checker).exprInternal ... runtime.makeslice (0.05s)">
<text text-anchor="middle" x="310.1982" y="-2330.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.05s</text>
</a>
</g>
</g>
<!-- N61 -->
<g id="node61" class="node">
<title>N61</title>
<g id="a_node61"><a xlink:title="go/types.(*Checker).ident (1.36s)">
<polygon fill="#edece9" stroke="#b2a999" points="2334.1863,-2957.5 2250.7619,-2957.5 2250.7619,-2899.5 2334.1863,-2899.5 2334.1863,-2957.5"/>
<text text-anchor="middle" x="2292.4741" y="-2945.5" font-family="Times,serif" font-size="10.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2292.4741" y="-2935.5" font-family="Times,serif" font-size="10.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2292.4741" y="-2925.5" font-family="Times,serif" font-size="10.00" fill="#000000">ident</text>
<text text-anchor="middle" x="2292.4741" y="-2915.5" font-family="Times,serif" font-size="10.00" fill="#000000">0.10s (0.21%)</text>
<text text-anchor="middle" x="2292.4741" y="-2905.5" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.36s (2.80%)</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N61 -->
<g id="edge83" class="edge">
<title>N36&#45;&gt;N61</title>
<g id="a_edge83"><a xlink:title="go/types.(*Checker).exprInternal &#45;&gt; go/types.(*Checker).ident (0.70s)">
<path fill="none" stroke="#b2aea5" d="M2517.2822,-3025.9168C2469.3312,-3005.138 2393.7148,-2972.371 2343.6138,-2950.6605"/>
<polygon fill="#b2aea5" stroke="#b2aea5" points="2344.8263,-2947.3715 2334.2591,-2946.6068 2342.043,-2953.7944 2344.8263,-2947.3715"/>
</a>
</g>
<g id="a_edge83&#45;label"><a xlink:title="go/types.(*Checker).exprInternal &#45;&gt; go/types.(*Checker).ident (0.70s)">
<text text-anchor="middle" x="2460.1982" y="-2984.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.70s</text>
</a>
</g>
</g>
<!-- N64 -->
<g id="node64" class="node">
<title>N64</title>
<g id="a_node64"><a xlink:title="go/types.(*Checker).indexedElts (1.36s)">
<polygon fill="#edece9" stroke="#b2a999" points="2600.9664,-2955 2523.9818,-2955 2523.9818,-2902 2600.9664,-2902 2600.9664,-2955"/>
<text text-anchor="middle" x="2562.4741" y="-2943.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2562.4741" y="-2934.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2562.4741" y="-2925.8" font-family="Times,serif" font-size="9.00" fill="#000000">indexedElts</text>
<text text-anchor="middle" x="2562.4741" y="-2916.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="2562.4741" y="-2907.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.36s (2.80%)</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N64 -->
<g id="edge57" class="edge">
<title>N36&#45;&gt;N64</title>
<g id="a_edge57"><a xlink:title="go/types.(*Checker).exprInternal &#45;&gt; go/types.(*Checker).indexedElts (1.36s)">
<path fill="none" stroke="#b2a999" d="M2562.4741,-3013.8381C2562.4741,-2998.8817 2562.4741,-2980.9373 2562.4741,-2965.3709"/>
<polygon fill="#b2a999" stroke="#b2a999" points="2565.9742,-2965.0399 2562.4741,-2955.04 2558.9742,-2965.04 2565.9742,-2965.0399"/>
</a>
</g>
<g id="a_edge57&#45;label"><a xlink:title="go/types.(*Checker).exprInternal &#45;&gt; go/types.(*Checker).indexedElts (1.36s)">
<text text-anchor="middle" x="2579.1982" y="-2984.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.36s</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N14 -->
<g id="edge169" class="edge">
<title>N37&#45;&gt;N14</title>
<g id="a_edge169"><a xlink:title="go/build.(*Context).Import.func3 ... runtime.gcWriteBarrier (0.05s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M671.0602,-2545.8147C685.3471,-2540.2896 701.8694,-2534.8608 717.4741,-2532 869.7273,-2504.0872 1961.8099,-2557.1175 2110.4741,-2514 2217.9328,-2482.8334 2186.4741,-2385.8871 2186.4741,-2274 2186.4741,-2274 2186.4741,-2274 2186.4741,-1793.5 2186.4741,-1611.6569 2209.4741,-1566.8431 2209.4741,-1385 2209.4741,-1385 2209.4741,-1385 2209.4741,-1004.5 2209.4741,-979.8775 2221.4253,-955.7416 2234.917,-936.3392"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="2237.8999,-938.1894 2240.9741,-928.0504 2232.2481,-934.0593 2237.8999,-938.1894"/>
</a>
</g>
<g id="a_edge169&#45;label"><a xlink:title="go/build.(*Context).Import.func3 ... runtime.gcWriteBarrier (0.05s)">
<text text-anchor="middle" x="2204.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.05s</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N58 -->
<g id="edge107" class="edge">
<title>N37&#45;&gt;N58</title>
<g id="a_edge107"><a xlink:title="go/build.(*Context).Import.func3 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (0.25s)">
<path fill="none" stroke="#b2b1ad" stroke-dasharray="1,5" d="M593.9612,-2560.1738C518.4954,-2554.1655 354.1085,-2538.6241 303.4741,-2514 197.5003,-2462.4637 134.1371,-2329.0398 107.0276,-2258.5942"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="110.2458,-2257.2088 103.4423,-2249.0871 103.6961,-2259.6789 110.2458,-2257.2088"/>
</a>
</g>
<g id="a_edge107&#45;label"><a xlink:title="go/build.(*Context).Import.func3 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (0.25s)">
<text text-anchor="middle" x="197.1982" y="-2390.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.25s</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N63 -->
<g id="edge119" class="edge">
<title>N37&#45;&gt;N63</title>
<g id="a_edge119"><a xlink:title="go/build.(*Context).Import.func3 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve (0.19s)">
<path fill="none" stroke="#b2b1af" stroke-dasharray="1,5" d="M593.9679,-2558.1576C509.5287,-2545.2391 308.8699,-2501.465 224.0259,-2370 211.7111,-2350.9184 197.8553,-2208.3882 191.7086,-2138.4629"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="195.1776,-2137.9537 190.8242,-2128.2946 188.2039,-2138.5603 195.1776,-2137.9537"/>
</a>
</g>
<g id="a_edge119&#45;label"><a xlink:title="go/build.(*Context).Import.func3 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve (0.19s)">
<text text-anchor="middle" x="241.1982" y="-2330.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.19s</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N76 -->
<g id="edge120" class="edge">
<title>N37&#45;&gt;N76</title>
<g id="a_edge120"><a xlink:title="go/build.(*Context).Import.func3 ... go/build.(*Context).readDir (0.19s)">
<path fill="none" stroke="#b2b1af" stroke-dasharray="1,5" d="M664.7866,-2531.8018C682.2269,-2514.9628 703.5505,-2494.3745 720.3083,-2478.1946"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="722.8932,-2480.564 727.6561,-2471.1001 718.031,-2475.5282 722.8932,-2480.564"/>
</a>
</g>
<g id="a_edge120&#45;label"><a xlink:title="go/build.(*Context).Import.func3 ... go/build.(*Context).readDir (0.19s)">
<text text-anchor="middle" x="714.1982" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.19s</text>
</a>
</g>
</g>
<!-- N38&#45;&gt;N5 -->
<g id="edge103" class="edge">
<title>N38&#45;&gt;N5</title>
<g id="a_edge103"><a xlink:title="runtime.typedmemmove &#45;&gt; runtime.memmove (0.30s)">
<path fill="none" stroke="#b2b1ac" d="M1139.943,-479.5007C1086.9933,-474.1216 991.5911,-457.1947 932.4741,-404 909.3946,-383.2326 918.6692,-367.6125 904.4741,-340 882.2405,-296.7506 888.3662,-273.8112 848.4741,-246 781.9994,-199.6564 551.8499,-172.1253 430.5884,-160.5084"/>
<polygon fill="#b2b1ac" stroke="#b2b1ac" points="430.9109,-157.0234 420.6258,-159.5663 430.2519,-163.9923 430.9109,-157.0234"/>
</a>
</g>
<g id="a_edge103&#45;label"><a xlink:title="runtime.typedmemmove &#45;&gt; runtime.memmove (0.30s)">
<text text-anchor="middle" x="913.1982" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.30s</text>
</a>
</g>
</g>
<!-- N70 -->
<g id="node70" class="node">
<title>N70</title>
<g id="a_node70"><a xlink:title="runtime.bulkBarrierPreWrite (1.35s)">
<polygon fill="#edece9" stroke="#b2aa99" points="1243.4838,-404 1113.4644,-404 1113.4644,-340 1243.4838,-340 1243.4838,-404"/>
<text text-anchor="middle" x="1178.4741" y="-388.8" font-family="Times,serif" font-size="14.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1178.4741" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">bulkBarrierPreWrite</text>
<text text-anchor="middle" x="1178.4741" y="-360.8" font-family="Times,serif" font-size="14.00" fill="#000000">1.28s (2.63%)</text>
<text text-anchor="middle" x="1178.4741" y="-346.8" font-family="Times,serif" font-size="14.00" fill="#000000">of 1.35s (2.78%)</text>
</a>
</g>
</g>
<!-- N38&#45;&gt;N70 -->
<g id="edge59" class="edge">
<title>N38&#45;&gt;N70</title>
<g id="a_edge59"><a xlink:title="runtime.typedmemmove &#45;&gt; runtime.bulkBarrierPreWrite (1.28s)">
<path fill="none" stroke="#b2aa9a" d="M1178.4741,-459.7399C1178.4741,-446.7841 1178.4741,-430.0175 1178.4741,-414.6171"/>
<polygon fill="#b2aa9a" stroke="#b2aa9a" points="1181.9742,-414.2372 1178.4741,-404.2372 1174.9742,-414.2373 1181.9742,-414.2372"/>
</a>
</g>
<g id="a_edge59&#45;label"><a xlink:title="runtime.typedmemmove &#45;&gt; runtime.bulkBarrierPreWrite (1.28s)">
<text text-anchor="middle" x="1195.1982" y="-424.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.28s</text>
</a>
</g>
</g>
<!-- N39 -->
<g id="node39" class="node">
<title>N39</title>
<g id="a_node39"><a xlink:title="path.Clean (1.29s)">
<polygon fill="#edecea" stroke="#b2aa9a" points="226.9664,-1815.5 149.9818,-1815.5 149.9818,-1771.5 226.9664,-1771.5 226.9664,-1815.5"/>
<text text-anchor="middle" x="188.4741" y="-1804.3" font-family="Times,serif" font-size="9.00" fill="#000000">path</text>
<text text-anchor="middle" x="188.4741" y="-1795.3" font-family="Times,serif" font-size="9.00" fill="#000000">Clean</text>
<text text-anchor="middle" x="188.4741" y="-1786.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.01s (0.021%)</text>
<text text-anchor="middle" x="188.4741" y="-1777.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.29s (2.65%)</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N5 -->
<g id="edge98" class="edge">
<title>N39&#45;&gt;N5</title>
<g id="a_edge98"><a xlink:title="path.Clean ... runtime.memmove (0.37s)">
<path fill="none" stroke="#b2b0ab" stroke-dasharray="1,5" d="M177.2707,-1771.4599C165.1313,-1745.4972 147.4741,-1700.7324 147.4741,-1660 147.4741,-1660 147.4741,-1660 147.4741,-268 147.4741,-206.2376 219.0555,-177.6924 278.0313,-164.6553"/>
<polygon fill="#b2b0ab" stroke="#b2b0ab" points="279.052,-168.0177 288.1239,-162.5449 277.6192,-161.1658 279.052,-168.0177"/>
</a>
</g>
<g id="a_edge98&#45;label"><a xlink:title="path.Clean ... runtime.memmove (0.37s)">
<text text-anchor="middle" x="164.1982" y="-948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.37s</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N35 -->
<g id="edge87" class="edge">
<title>N39&#45;&gt;N35</title>
<g id="a_edge87"><a xlink:title="path.Clean ... runtime.slicebytetostring (0.62s)">
<path fill="none" stroke="#b2afa7" stroke-dasharray="1,5" d="M183.5876,-1771.4774C181.9411,-1757.8852 182.5729,-1741.0028 192.4741,-1730 224.4386,-1694.4792 266.0947,-1747.143 298.4741,-1712 356.059,-1649.5004 331.4741,-1415.9837 331.4741,-1331 331.4741,-1331 331.4741,-1331 331.4741,-1159 331.4741,-1090.3319 332.4741,-1073.1681 332.4741,-1004.5 332.4741,-1004.5 332.4741,-1004.5 332.4741,-680.5 332.4741,-658.4241 332.4741,-633.5651 332.4741,-614.3436"/>
<polygon fill="#b2afa7" stroke="#b2afa7" points="335.9742,-614.2984 332.4741,-604.2984 328.9742,-614.2984 335.9742,-614.2984"/>
</a>
</g>
<g id="a_edge87&#45;label"><a xlink:title="path.Clean ... runtime.slicebytetostring (0.62s)">
<text text-anchor="middle" x="348.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.62s</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N42 -->
<g id="edge112" class="edge">
<title>N39&#45;&gt;N42</title>
<g id="a_edge112"><a xlink:title="path.Clean ... runtime.makeslice (0.23s)">
<path fill="none" stroke="#b2b1ae" stroke-dasharray="1,5" d="M188.7033,-1771.4653C190.0856,-1757.5109 194.3068,-1740.2288 206.0259,-1730 251.1141,-1690.6457 285.4738,-1737.8008 339.4741,-1712 350.6621,-1706.6545 361.0748,-1698.1849 369.7637,-1689.6205"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="372.5364,-1691.786 376.9319,-1682.1459 367.4841,-1686.9409 372.5364,-1691.786"/>
</a>
</g>
<g id="a_edge112&#45;label"><a xlink:title="path.Clean ... runtime.makeslice (0.23s)">
<text text-anchor="middle" x="223.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.23s</text>
</a>
</g>
</g>
<!-- N40 -->
<g id="node40" class="node">
<title>N40</title>
<g id="a_node40"><a xlink:title="os.(*File).readdir (2.64s)">
<polygon fill="#edeae6" stroke="#b29e82" points="463.9664,-1820 386.9818,-1820 386.9818,-1767 463.9664,-1767 463.9664,-1820"/>
<text text-anchor="middle" x="425.4741" y="-1808.8" font-family="Times,serif" font-size="9.00" fill="#000000">os</text>
<text text-anchor="middle" x="425.4741" y="-1799.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*File)</text>
<text text-anchor="middle" x="425.4741" y="-1790.8" font-family="Times,serif" font-size="9.00" fill="#000000">readdir</text>
<text text-anchor="middle" x="425.4741" y="-1781.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="425.4741" y="-1772.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.64s (5.43%)</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N1 -->
<g id="edge49" class="edge">
<title>N40&#45;&gt;N1</title>
<g id="a_edge49"><a xlink:title="os.(*File).readdir ... syscall.Syscall (1.58s)">
<path fill="none" stroke="#b2a895" stroke-dasharray="1,5" d="M463.7211,-1774.7968C496.1208,-1758.953 544.2313,-1735.4264 588.4779,-1713.7894"/>
<polygon fill="#b2a895" stroke="#b2a895" points="590.1155,-1716.8847 597.5613,-1709.3475 587.0403,-1710.5963 590.1155,-1716.8847"/>
</a>
</g>
<g id="a_edge49&#45;label"><a xlink:title="os.(*File).readdir ... syscall.Syscall (1.58s)">
<text text-anchor="middle" x="571.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.58s</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N9 -->
<g id="edge147" class="edge">
<title>N40&#45;&gt;N9</title>
<g id="a_edge147"><a xlink:title="os.(*File).readdir ... runtime.growslice (0.11s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M434.1573,-1766.8964C450.3374,-1714.884 483.4741,-1595.8124 483.4741,-1493 483.4741,-1493 483.4741,-1493 483.4741,-1218 483.4741,-1188.6629 481.6997,-1181.1995 484.5386,-1152 498.3903,-1009.5285 541.4741,-978.1433 541.4741,-835 541.4741,-835 541.4741,-835 541.4741,-680.5 541.4741,-652.397 543.3516,-639.3312 565.4741,-622 598.9706,-595.7582 718.6529,-586.6399 786.5501,-583.5413"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="786.7381,-587.0365 796.5785,-583.1102 786.4374,-580.043 786.7381,-587.0365"/>
</a>
</g>
<g id="a_edge147&#45;label"><a xlink:title="os.(*File).readdir ... runtime.growslice (0.11s)">
<text text-anchor="middle" x="501.9419" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.11s</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N11 -->
<g id="edge166" class="edge">
<title>N40&#45;&gt;N11</title>
<g id="a_edge166"><a xlink:title="os.(*File).readdir ... runtime.newobject (0.06s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M463.8915,-1786.6709C503.8947,-1779.7358 568.4241,-1769.0425 624.4741,-1762 667.2131,-1756.63 780.11,-1765.4331 817.4741,-1744 933.2335,-1677.5971 934.1958,-1620.055 992.4741,-1500 1038.9455,-1404.2676 987.1631,-1348.4858 1059.0259,-1270 1073.9768,-1253.6712 1089.3457,-1267.1669 1105.4741,-1252 1141.1127,-1218.4861 1126.4345,-1194.0274 1151.4741,-1152 1234.5052,-1012.6376 1264.1858,-982.5514 1370.4741,-860 1383.6524,-844.8054 1385.2493,-838.3851 1402.4741,-828 1431.8405,-810.2946 1468.8764,-799.0551 1498.0342,-792.3012"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1498.9866,-795.6752 1507.9936,-790.0961 1497.4734,-788.8407 1498.9866,-795.6752"/>
</a>
</g>
<g id="a_edge166&#45;label"><a xlink:title="os.(*File).readdir ... runtime.newobject (0.06s)">
<text text-anchor="middle" x="1075.1982" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N35 -->
<g id="edge156" class="edge">
<title>N40&#45;&gt;N35</title>
<g id="a_edge156"><a xlink:title="os.(*File).readdir ... runtime.slicebytetostring (0.08s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M386.7812,-1780.3776C325.0289,-1759.2738 210.4825,-1719.4017 204.4741,-1712 167.9505,-1667.0062 185.4741,-1640.9519 185.4741,-1583 185.4741,-1583 185.4741,-1583 185.4741,-1218 185.4741,-1188.6656 181.3183,-1180.9542 186.0259,-1152 209.9224,-1005.0245 294.4741,-983.9055 294.4741,-835 294.4741,-835 294.4741,-835 294.4741,-680.5 294.4741,-656.8232 304.1495,-631.9612 313.7359,-613.1386"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="316.9129,-614.6195 318.5401,-604.1503 310.7394,-611.3197 316.9129,-614.6195"/>
</a>
</g>
<g id="a_edge156&#45;label"><a xlink:title="os.(*File).readdir ... runtime.slicebytetostring (0.08s)">
<text text-anchor="middle" x="203.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N42 -->
<g id="edge134" class="edge">
<title>N40&#45;&gt;N42</title>
<g id="a_edge134"><a xlink:title="os.(*File).readdir ... runtime.makeslice (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M404.0536,-1766.9115C399.5297,-1759.8594 395.4069,-1751.9754 393.0259,-1744 388.1102,-1727.5346 388.0257,-1708.4338 389.3667,-1692.6106"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="392.8913,-1692.5693 390.4811,-1682.2523 385.9315,-1691.8205 392.8913,-1692.5693"/>
</a>
</g>
<g id="a_edge134&#45;label"><a xlink:title="os.(*File).readdir ... runtime.makeslice (0.14s)">
<text text-anchor="middle" x="410.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N45 -->
<g id="node45" class="node">
<title>N45</title>
<g id="a_node45"><a xlink:title="runtime.concatstrings (1.11s)">
<polygon fill="#edecea" stroke="#b2ab9e" points="289.6354,-1682 213.3128,-1682 213.3128,-1638 289.6354,-1638 289.6354,-1682"/>
<text text-anchor="middle" x="251.4741" y="-1670.8" font-family="Times,serif" font-size="9.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="251.4741" y="-1661.8" font-family="Times,serif" font-size="9.00" fill="#000000">concatstrings</text>
<text text-anchor="middle" x="251.4741" y="-1652.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="251.4741" y="-1643.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.11s (2.28%)</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N45 -->
<g id="edge160" class="edge">
<title>N40&#45;&gt;N45</title>
<g id="a_edge160"><a xlink:title="os.(*File).readdir ... runtime.concatstrings (0.07s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M387.0355,-1768.1977C375.9147,-1760.6205 363.8578,-1752.1534 353.0259,-1744 329.5685,-1726.3431 304.112,-1705.2821 284.5543,-1688.6659"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="286.7057,-1685.9007 276.827,-1682.0715 282.1617,-1691.2253 286.7057,-1685.9007"/>
</a>
</g>
<g id="a_edge160&#45;label"><a xlink:title="os.(*File).readdir ... runtime.concatstrings (0.07s)">
<text text-anchor="middle" x="370.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.07s</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N11 -->
<g id="edge97" class="edge">
<title>N41&#45;&gt;N11</title>
<g id="a_edge97"><a xlink:title="go/parser.(*parser).parseIdent &#45;&gt; runtime.newobject (0.37s)">
<path fill="none" stroke="#b2b0ab" d="M1584.4134,-1183.818C1580.5228,-1162.0683 1576.4741,-1133.2488 1576.4741,-1107.5 1576.4741,-1107.5 1576.4741,-1107.5 1576.4741,-894 1576.4741,-866.7634 1567.8804,-837.0282 1559.892,-815.2712"/>
<polygon fill="#b2b0ab" stroke="#b2b0ab" points="1563.1391,-813.9633 1556.2972,-805.8737 1556.6011,-816.4642 1563.1391,-813.9633"/>
</a>
</g>
<g id="a_edge97&#45;label"><a xlink:title="go/parser.(*parser).parseIdent &#45;&gt; runtime.newobject (0.37s)">
<text text-anchor="middle" x="1593.1982" y="-1000.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.37s</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N15 -->
<g id="edge151" class="edge">
<title>N41&#45;&gt;N15</title>
<g id="a_edge151"><a xlink:title="go/parser.(*parser).parseIdent &#45;&gt; go/parser.(*parser).next (0.09s)">
<path fill="none" stroke="#b2b2b0" d="M1543.1633,-1210.2883C1495.9104,-1202.9093 1421.8671,-1191.7819 1357.4741,-1184 1274.8243,-1174.0118 1252.4809,-1183.2 1171.0259,-1166 1164.4912,-1164.6201 1092.6435,-1140.5837 1042.6447,-1123.7559"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1043.5561,-1120.3697 1032.962,-1120.4952 1041.3221,-1127.0037 1043.5561,-1120.3697"/>
</a>
</g>
<g id="a_edge151&#45;label"><a xlink:title="go/parser.(*parser).parseIdent &#45;&gt; go/parser.(*parser).next (0.09s)">
<text text-anchor="middle" x="1187.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.09s</text>
</a>
</g>
</g>
<!-- N42&#45;&gt;N4 -->
<g id="edge65" class="edge">
<title>N42&#45;&gt;N4</title>
<g id="a_edge65"><a xlink:title="runtime.makeslice &#45;&gt; runtime.mallocgc (1.15s)">
<path fill="none" stroke="#b2ab9d" d="M410.0529,-1637.7757C425.0511,-1614.1665 445.4741,-1575.1899 445.4741,-1538 445.4741,-1538 445.4741,-1538 445.4741,-582 445.4741,-515.2085 663.3083,-492.3815 772.9567,-485.1221"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="773.4624,-488.5971 783.2192,-484.4672 773.0165,-481.6113 773.4624,-488.5971"/>
</a>
</g>
<g id="a_edge65&#45;label"><a xlink:title="runtime.makeslice &#45;&gt; runtime.mallocgc (1.15s)">
<text text-anchor="middle" x="462.1982" y="-1051.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.15s</text>
</a>
</g>
</g>
<!-- N43&#45;&gt;N8 -->
<g id="edge2" class="edge">
<title>N43&#45;&gt;N8</title>
<g id="a_edge2"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).load &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles (29.78s)">
<path fill="none" stroke="#b21800" stroke-width="4" d="M769.4741,-3126.7604C769.4741,-3113.1582 769.4741,-3097.6111 769.4741,-3083.7826"/>
<polygon fill="#b21800" stroke="#b21800" stroke-width="4" points="772.9742,-3083.6034 769.4741,-3073.6035 765.9742,-3083.6035 772.9742,-3083.6034"/>
</a>
</g>
<g id="a_edge2&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).load &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).addFiles (29.78s)">
<text text-anchor="middle" x="789.6982" y="-3097.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 29.78s</text>
</a>
</g>
</g>
<!-- N44 -->
<g id="node44" class="node">
<title>N44</title>
<g id="a_node44"><a xlink:title="go/parser.(*parser).parseExprList (2.95s)">
<polygon fill="#edeae5" stroke="#b29b7c" points="1475.9664,-2126.5 1398.9818,-2126.5 1398.9818,-2073.5 1475.9664,-2073.5 1475.9664,-2126.5"/>
<text text-anchor="middle" x="1437.4741" y="-2115.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1437.4741" y="-2106.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1437.4741" y="-2097.3" font-family="Times,serif" font-size="9.00" fill="#000000">parseExprList</text>
<text text-anchor="middle" x="1437.4741" y="-2088.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.05s (0.1%)</text>
<text text-anchor="middle" x="1437.4741" y="-2079.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.95s (6.07%)</text>
</a>
</g>
</g>
<!-- N47 -->
<g id="node47" class="node">
<title>N47</title>
<g id="a_node47"><a xlink:title="go/parser.(*parser).parseExpr (2.88s)">
<polygon fill="#edeae6" stroke="#b29b7d" points="1475.244,-2020 1399.7042,-2020 1399.7042,-1980 1475.244,-1980 1475.244,-2020"/>
<text text-anchor="middle" x="1437.4741" y="-2009.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1437.4741" y="-2001.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1437.4741" y="-1993.6" font-family="Times,serif" font-size="8.00" fill="#000000">parseExpr</text>
<text text-anchor="middle" x="1437.4741" y="-1985.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 2.88s (5.92%)</text>
</a>
</g>
</g>
<!-- N44&#45;&gt;N47 -->
<g id="edge31" class="edge">
<title>N44&#45;&gt;N47</title>
<g id="a_edge31"><a xlink:title="go/parser.(*parser).parseExprList &#45;&gt; go/parser.(*parser).parseExpr (2.86s)">
<path fill="none" stroke="#b29c7d" d="M1437.4741,-2073.4644C1437.4741,-2060.3152 1437.4741,-2044.3659 1437.4741,-2030.6926"/>
<polygon fill="#b29c7d" stroke="#b29c7d" points="1440.9742,-2030.3118 1437.4741,-2020.3118 1433.9742,-2030.3118 1440.9742,-2030.3118"/>
</a>
</g>
<g id="a_edge31&#45;label"><a xlink:title="go/parser.(*parser).parseExprList &#45;&gt; go/parser.(*parser).parseExpr (2.86s)">
<text text-anchor="middle" x="1454.1982" y="-2042.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.86s</text>
</a>
</g>
</g>
<!-- N45&#45;&gt;N4 -->
<g id="edge128" class="edge">
<title>N45&#45;&gt;N4</title>
<g id="a_edge128"><a xlink:title="runtime.concatstrings ... runtime.mallocgc (0.15s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M261.1967,-1637.998C270.9309,-1613.9327 284.4741,-1573.9844 284.4741,-1538 284.4741,-1538 284.4741,-1538 284.4741,-1107.5 284.4741,-1076.0061 413.6354,-585.9547 431.4741,-560 445.1703,-540.0725 453.0018,-536.9267 475.4741,-528 528.2067,-507.0529 685.2052,-492.7674 773.1134,-486.1694"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="773.5051,-489.65 783.2196,-485.4219 772.9886,-482.6691 773.5051,-489.65"/>
</a>
</g>
<g id="a_edge128&#45;label"><a xlink:title="runtime.concatstrings ... runtime.mallocgc (0.15s)">
<text text-anchor="middle" x="313.1982" y="-1051.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.15s</text>
</a>
</g>
</g>
<!-- N45&#45;&gt;N5 -->
<g id="edge74" class="edge">
<title>N45&#45;&gt;N5</title>
<g id="a_edge74"><a xlink:title="runtime.concatstrings &#45;&gt; runtime.memmove (0.94s)">
<path fill="none" stroke="#b2ada1" d="M246.1709,-1637.6601C240.8613,-1613.3057 233.4741,-1573.1121 233.4741,-1538 233.4741,-1538 233.4741,-1538 233.4741,-268 233.4741,-236.4877 255.4841,-211.1186 280.7297,-192.3846"/>
<polygon fill="#b2ada1" stroke="#b2ada1" points="282.8645,-195.1619 289.0162,-186.536 278.8279,-189.4429 282.8645,-195.1619"/>
</a>
</g>
<g id="a_edge74&#45;label"><a xlink:title="runtime.concatstrings &#45;&gt; runtime.memmove (0.94s)">
<text text-anchor="middle" x="250.1982" y="-889.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.94s</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N9 -->
<g id="edge131" class="edge">
<title>N46&#45;&gt;N9</title>
<g id="a_edge131"><a xlink:title="go/parser.(*parser).parseOperand ... runtime.growslice (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M1419.3289,-1761.6351C1392.1998,-1714.8432 1341.3844,-1630.6344 1314.4741,-1608 1272.134,-1572.3875 1245.7525,-1589.7932 1200.4741,-1558 1180.4062,-1543.9088 1180.443,-1534.6855 1162.4741,-1518 1153.2164,-1509.4035 1146.9174,-1510.8669 1140.4741,-1500 1095.5873,-1424.297 1097.2145,-1380.262 1137.4741,-1302 1154.3082,-1269.2756 1186.9047,-1284.8592 1203.4741,-1252 1223.4863,-1212.3135 1206.9167,-1196.3795 1204.4741,-1152 1196.6846,-1010.4692 1169.4741,-976.745 1169.4741,-835 1169.4741,-835 1169.4741,-835 1169.4741,-680.5 1169.4741,-621.3384 974.7367,-595.1318 882.2108,-586.0192"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="882.5398,-582.5348 872.2517,-585.0656 881.8725,-589.5029 882.5398,-582.5348"/>
</a>
</g>
<g id="a_edge131&#45;label"><a xlink:title="go/parser.(*parser).parseOperand ... runtime.growslice (0.14s)">
<text text-anchor="middle" x="1222.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N11 -->
<g id="edge141" class="edge">
<title>N46&#45;&gt;N11</title>
<g id="a_edge141"><a xlink:title="go/parser.(*parser).parseOperand &#45;&gt; runtime.newobject (0.12s)">
<path fill="none" stroke="#b2b2b0" d="M1476.1726,-1761.9301C1491.5254,-1747.8898 1508.3692,-1730.3856 1520.4741,-1712 1548.8921,-1668.8371 1549.2776,-1654.1794 1572.4741,-1608 1620.741,-1511.9106 1636.5132,-1489.68 1681.4741,-1392 1704.6316,-1341.6891 1729.4741,-1332.3846 1729.4741,-1277 1729.4741,-1277 1729.4741,-1277 1729.4741,-894 1729.4741,-831.0661 1649.1815,-803.0228 1594.9659,-791.2606"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.3361,-787.7638 1584.8369,-789.1843 1593.9304,-794.6212 1595.3361,-787.7638"/>
</a>
</g>
<g id="a_edge141&#45;label"><a xlink:title="go/parser.(*parser).parseOperand &#45;&gt; runtime.newobject (0.12s)">
<text text-anchor="middle" x="1746.1982" y="-1272.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N33 -->
<g id="edge140" class="edge">
<title>N46&#45;&gt;N33</title>
<g id="a_edge140"><a xlink:title="go/parser.(*parser).parseOperand ... go/parser.(*parser).parseStmtList (0.12s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M1438.6591,-1761.8624C1439.387,-1742.4271 1440.3228,-1717.4399 1441.0854,-1697.0778"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1444.5896,-1697.0293 1441.4664,-1686.9053 1437.5945,-1696.7672 1444.5896,-1697.0293"/>
</a>
</g>
<g id="a_edge140&#45;label"><a xlink:title="go/parser.(*parser).parseOperand ... go/parser.(*parser).parseStmtList (0.12s)">
<text text-anchor="middle" x="1456.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N41 -->
<g id="edge85" class="edge">
<title>N46&#45;&gt;N41</title>
<g id="a_edge85"><a xlink:title="go/parser.(*parser).parseOperand &#45;&gt; go/parser.(*parser).parseIdent (0.69s)">
<path fill="none" stroke="#b2aea5" d="M1464.4418,-1761.9495C1468.7579,-1756.1738 1472.955,-1750.0534 1476.4741,-1744 1484.1894,-1730.7287 1484.0292,-1726.3529 1489.4741,-1712 1512.2096,-1652.0689 1512.8671,-1635.1873 1537.4741,-1576 1557.9256,-1526.8079 1577.6215,-1519.9388 1589.4741,-1468 1596.9913,-1435.0593 1580.4831,-1309.467 1579.4741,-1284 1579.2278,-1277.7827 1578.77,-1276.1823 1579.4741,-1270 1579.7631,-1267.4627 1580.1289,-1264.869 1580.5518,-1262.2605"/>
<polygon fill="#b2aea5" stroke="#b2aea5" points="1584.0327,-1262.6853 1582.4229,-1252.2135 1577.1511,-1261.4036 1584.0327,-1262.6853"/>
</a>
</g>
<g id="a_edge85&#45;label"><a xlink:title="go/parser.(*parser).parseOperand &#45;&gt; go/parser.(*parser).parseIdent (0.69s)">
<text text-anchor="middle" x="1600.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.69s</text>
</a>
</g>
</g>
<!-- N47&#45;&gt;N30 -->
<g id="edge34" class="edge">
<title>N47&#45;&gt;N30</title>
<g id="a_edge34"><a xlink:title="go/parser.(*parser).parseExpr ... go/parser.(*parser).parsePrimaryExpr (2.71s)">
<path fill="none" stroke="#b29d80" stroke-dasharray="1,5" d="M1437.4741,-1979.5907C1437.4741,-1967.7361 1437.4741,-1952.4393 1437.4741,-1938.5305"/>
<polygon fill="#b29d80" stroke="#b29d80" points="1440.9742,-1938.2448 1437.4741,-1928.2448 1433.9742,-1938.2449 1440.9742,-1938.2448"/>
</a>
</g>
<g id="a_edge34&#45;label"><a xlink:title="go/parser.(*parser).parseExpr ... go/parser.(*parser).parsePrimaryExpr (2.71s)">
<text text-anchor="middle" x="1454.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.71s</text>
</a>
</g>
</g>
<!-- N48 -->
<g id="node48" class="node">
<title>N48</title>
<g id="a_node48"><a xlink:title="io/ioutil.ReadDir (3.14s)">
<polygon fill="#ede9e5" stroke="#b29978" points="664.244,-2231.5 588.7042,-2231.5 588.7042,-2195.5 664.244,-2195.5 664.244,-2231.5"/>
<text text-anchor="middle" x="626.4741" y="-2219.1" font-family="Times,serif" font-size="8.00" fill="#000000">io/ioutil</text>
<text text-anchor="middle" x="626.4741" y="-2211.1" font-family="Times,serif" font-size="8.00" fill="#000000">ReadDir</text>
<text text-anchor="middle" x="626.4741" y="-2203.1" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 3.14s (6.46%)</text>
</a>
</g>
</g>
<!-- N48&#45;&gt;N40 -->
<g id="edge35" class="edge">
<title>N48&#45;&gt;N40</title>
<g id="a_edge35"><a xlink:title="io/ioutil.ReadDir ... os.(*File).readdir (2.63s)">
<path fill="none" stroke="#b29e82" stroke-dasharray="1,5" d="M610.4858,-2195.3525C595.8255,-2178.3987 573.8238,-2152.149 556.4741,-2128 524.0318,-2082.8434 512.5782,-2072.8234 490.0259,-2022 461.1912,-1957.0188 441.9113,-1875.8906 432.3985,-1829.8603"/>
<polygon fill="#b29e82" stroke="#b29e82" points="435.825,-1829.1461 430.4079,-1820.0409 428.9646,-1830.537 435.825,-1829.1461"/>
</a>
</g>
<g id="a_edge35&#45;label"><a xlink:title="io/ioutil.ReadDir ... os.(*File).readdir (2.63s)">
<text text-anchor="middle" x="507.1982" y="-1995.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.63s</text>
</a>
</g>
</g>
<!-- N48&#45;&gt;N50 -->
<g id="edge100" class="edge">
<title>N48&#45;&gt;N50</title>
<g id="a_edge100"><a xlink:title="io/ioutil.ReadDir &#45;&gt; os.Open (0.36s)">
<path fill="none" stroke="#b2b0ab" d="M623.1001,-2195.2643C619.7477,-2177.1451 614.5602,-2149.1082 610.6796,-2128.1344"/>
<polygon fill="#b2b0ab" stroke="#b2b0ab" points="614.1008,-2127.3868 608.8398,-2118.1905 607.2176,-2128.6604 614.1008,-2127.3868"/>
</a>
</g>
<g id="a_edge100&#45;label"><a xlink:title="io/ioutil.ReadDir &#45;&gt; os.Open (0.36s)">
<text text-anchor="middle" x="633.1982" y="-2148.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.36s</text>
</a>
</g>
</g>
<!-- N49 -->
<g id="node49" class="node">
<title>N49</title>
<g id="a_node49"><a xlink:title="go/types.(*Checker).rawExpr (1.74s)">
<polygon fill="#edebe8" stroke="#b2a692" points="2623.244,-2583 2547.7042,-2583 2547.7042,-2543 2623.244,-2543 2623.244,-2583"/>
<text text-anchor="middle" x="2585.4741" y="-2572.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2585.4741" y="-2564.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2585.4741" y="-2556.6" font-family="Times,serif" font-size="8.00" fill="#000000">rawExpr</text>
<text text-anchor="middle" x="2585.4741" y="-2548.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 1.74s (3.58%)</text>
</a>
</g>
</g>
<!-- N49&#45;&gt;N36 -->
<g id="edge47" class="edge">
<title>N49&#45;&gt;N36</title>
<g id="a_edge47"><a xlink:title="go/types.(*Checker).rawExpr &#45;&gt; go/types.(*Checker).exprInternal (1.70s)">
<path fill="none" stroke="#b2a793" d="M2597.452,-2583.026C2610.1754,-2606.2364 2628.4741,-2646.0421 2628.4741,-2683 2628.4741,-2928.5 2628.4741,-2928.5 2628.4741,-2928.5 2628.4741,-2956.7062 2613.7428,-2984.3754 2598.1995,-3005.7194"/>
<polygon fill="#b2a793" stroke="#b2a793" points="2595.2674,-3003.793 2591.9994,-3013.8713 2600.839,-3008.0307 2595.2674,-3003.793"/>
</a>
</g>
<g id="a_edge47&#45;label"><a xlink:title="go/types.(*Checker).rawExpr &#45;&gt; go/types.(*Checker).exprInternal (1.70s)">
<text text-anchor="middle" x="2645.1982" y="-2803.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.70s</text>
</a>
</g>
</g>
<!-- N50&#45;&gt;N20 -->
<g id="edge11" class="edge">
<title>N50&#45;&gt;N20</title>
<g id="a_edge11"><a xlink:title="os.Open ... os.openFileNolog (7.65s)">
<path fill="none" stroke="#b26126" stroke-dasharray="1,5" d="M605.4741,-2081.6585C605.4741,-2066.7164 605.4741,-2045.3665 605.4741,-2028.2446"/>
<polygon fill="#b26126" stroke="#b26126" points="608.9742,-2028.2252 605.4741,-2018.2253 601.9742,-2028.2253 608.9742,-2028.2252"/>
</a>
</g>
<g id="a_edge11&#45;label"><a xlink:title="os.Open ... os.openFileNolog (7.65s)">
<text text-anchor="middle" x="622.1982" y="-2042.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 7.65s</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N11 -->
<g id="edge144" class="edge">
<title>N51&#45;&gt;N11</title>
<g id="a_edge144"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.newobject (0.12s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M2027.3289,-2533.6532C2035.0795,-2408.4004 2064.4741,-1906.1344 2064.4741,-1493 2064.4741,-1493 2064.4741,-1493 2064.4741,-894 2064.4741,-819.1259 1981.7878,-847.4127 1909.4741,-828 1799.5273,-798.4847 1665.528,-788.4846 1595.0993,-785.1418"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1594.9144,-781.63 1584.7674,-784.6778 1594.6003,-788.623 1594.9144,-781.63"/>
</a>
</g>
<g id="a_edge144&#45;label"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.newobject (0.12s)">
<text text-anchor="middle" x="2080.1982" y="-1655.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N14 -->
<g id="edge164" class="edge">
<title>N51&#45;&gt;N14</title>
<g id="a_edge164"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.gcWriteBarrier (0.06s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M2067.1329,-2557.0569C2108.7501,-2548.5694 2170.0821,-2528.4787 2195.4741,-2482 2224.7258,-2428.4564 2247.4741,-1446.0129 2247.4741,-1385 2247.4741,-1385 2247.4741,-1385 2247.4741,-1056 2247.4741,-1015.8126 2255.0815,-970.6667 2261.9033,-938.2615"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="2265.384,-938.7247 2264.0799,-928.2104 2258.5426,-937.2431 2265.384,-938.7247"/>
</a>
</g>
<g id="a_edge164&#45;label"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.gcWriteBarrier (0.06s)">
<text text-anchor="middle" x="2255.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N22 -->
<g id="edge143" class="edge">
<title>N51&#45;&gt;N22</title>
<g id="a_edge143"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.mapassign_faststr (0.12s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M2016.5259,-2533.8307C2010.4351,-2511.4057 2003.4741,-2479.5351 2003.4741,-2451 2003.4741,-2451 2003.4741,-2451 2003.4741,-2000 2003.4741,-1774.4349 2026.4741,-1718.5651 2026.4741,-1493 2026.4741,-1493 2026.4741,-1493 2026.4741,-1331 2026.4741,-1299.6258 2006.0522,-1270.4145 1986.3807,-1249.5542"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1988.7134,-1246.9346 1979.2065,-1242.2581 1983.7221,-1251.8425 1988.7134,-1246.9346"/>
</a>
</g>
<g id="a_edge143&#45;label"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.mapassign_faststr (0.12s)">
<text text-anchor="middle" x="2022.1982" y="-1897.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N26 -->
<g id="edge142" class="edge">
<title>N51&#45;&gt;N26</title>
<g id="a_edge142"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.mapassign (0.12s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M2047.8451,-2533.8657C2059.7965,-2518.3011 2074.5343,-2499.1077 2086.8156,-2483.1135"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="2089.6719,-2485.1404 2092.9862,-2475.0773 2084.1198,-2480.8772 2089.6719,-2485.1404"/>
</a>
</g>
<g id="a_edge142&#45;label"><a xlink:title="go/types.(*Checker).collectObjects ... runtime.mapassign (0.12s)">
<text text-anchor="middle" x="2090.1982" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N52&#45;&gt;N44 -->
<g id="edge39" class="edge">
<title>N52&#45;&gt;N44</title>
<g id="a_edge39"><a xlink:title="go/parser.(*parser).parseRhsList &#45;&gt; go/parser.(*parser).parseExprList (1.96s)">
<path fill="none" stroke="#b2a48e" d="M1437.4741,-2193.4697C1437.4741,-2177.7905 1437.4741,-2155.5576 1437.4741,-2136.709"/>
<polygon fill="#b2a48e" stroke="#b2a48e" points="1440.9742,-2136.6488 1437.4741,-2126.6488 1433.9742,-2136.6488 1440.9742,-2136.6488"/>
</a>
</g>
<g id="a_edge39&#45;label"><a xlink:title="go/parser.(*parser).parseRhsList &#45;&gt; go/parser.(*parser).parseExprList (1.96s)">
<text text-anchor="middle" x="1454.1982" y="-2148.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.96s</text>
</a>
</g>
</g>
<!-- N53 -->
<g id="node53" class="node">
<title>N53</title>
<g id="a_node53"><a xlink:title="go/parser.(*parser).parseBlockStmt (1.65s)">
<polygon fill="#edebe9" stroke="#b2a794" points="1230.1863,-1360 1146.7619,-1360 1146.7619,-1302 1230.1863,-1302 1230.1863,-1360"/>
<text text-anchor="middle" x="1188.4741" y="-1348" font-family="Times,serif" font-size="10.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1188.4741" y="-1338" font-family="Times,serif" font-size="10.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1188.4741" y="-1328" font-family="Times,serif" font-size="10.00" fill="#000000">parseBlockStmt</text>
<text text-anchor="middle" x="1188.4741" y="-1318" font-family="Times,serif" font-size="10.00" fill="#000000">0.08s (0.16%)</text>
<text text-anchor="middle" x="1188.4741" y="-1308" font-family="Times,serif" font-size="10.00" fill="#000000">of 1.65s (3.39%)</text>
</a>
</g>
</g>
<!-- N53&#45;&gt;N15 -->
<g id="edge129" class="edge">
<title>N53&#45;&gt;N15</title>
<g id="a_edge129"><a xlink:title="go/parser.(*parser).parseBlockStmt ... go/parser.(*parser).next (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M1186.3263,-1301.819C1184.765,-1291.4154 1182.0811,-1279.844 1177.4741,-1270 1148.9399,-1209.0285 1085.6301,-1161.2843 1041.5193,-1133.7488"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1043.325,-1130.7505 1032.9691,-1128.5132 1039.6695,-1136.7202 1043.325,-1130.7505"/>
</a>
</g>
<g id="a_edge129&#45;label"><a xlink:title="go/parser.(*parser).parseBlockStmt ... go/parser.(*parser).next (0.14s)">
<text text-anchor="middle" x="1183.1982" y="-1213.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N53&#45;&gt;N33 -->
<g id="edge53" class="edge">
<title>N53&#45;&gt;N33</title>
<g id="a_edge53"><a xlink:title="go/parser.(*parser).parseBlockStmt &#45;&gt; go/parser.(*parser).parseStmtList (1.46s)">
<path fill="none" stroke="#b2a997" d="M1169.5779,-1360.2688C1148.9853,-1396.2525 1122.6413,-1457.7356 1152.0259,-1500 1165.1386,-1518.8602 1179.7226,-1508.1498 1200.4741,-1518 1270.9019,-1551.4303 1347.8509,-1598.5583 1395.6433,-1629.1927"/>
<polygon fill="#b2a997" stroke="#b2a997" points="1393.9168,-1632.2438 1404.2197,-1634.7138 1397.7059,-1626.3579 1393.9168,-1632.2438"/>
</a>
</g>
<g id="a_edge53&#45;label"><a xlink:title="go/parser.(*parser).parseBlockStmt &#45;&gt; go/parser.(*parser).parseStmtList (1.46s)">
<text text-anchor="middle" x="1168.1982" y="-1488.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.46s</text>
</a>
</g>
</g>
<!-- N54 -->
<g id="node54" class="node">
<title>N54</title>
<g id="a_node54"><a xlink:title="go/types.(*Checker).typExpr (1.14s)">
<polygon fill="#edecea" stroke="#b2ab9d" points="2323.244,-2583 2247.7042,-2583 2247.7042,-2543 2323.244,-2543 2323.244,-2583"/>
<text text-anchor="middle" x="2285.4741" y="-2572.6" font-family="Times,serif" font-size="8.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2285.4741" y="-2564.6" font-family="Times,serif" font-size="8.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2285.4741" y="-2556.6" font-family="Times,serif" font-size="8.00" fill="#000000">typExpr</text>
<text text-anchor="middle" x="2285.4741" y="-2548.6" font-family="Times,serif" font-size="8.00" fill="#000000">0 of 1.14s (2.35%)</text>
</a>
</g>
</g>
<!-- N54&#45;&gt;N26 -->
<g id="edge102" class="edge">
<title>N54&#45;&gt;N26</title>
<g id="a_edge102"><a xlink:title="go/types.(*Checker).typExpr ... runtime.mapassign (0.31s)">
<path fill="none" stroke="#b2b1ac" stroke-dasharray="1,5" d="M2261.4895,-2542.8775C2245.5382,-2529.9264 2223.849,-2513.1244 2203.4741,-2500 2190.6188,-2491.7193 2176.2265,-2483.5665 2162.7124,-2476.3594"/>
<polygon fill="#b2b1ac" stroke="#b2b1ac" points="2164.0066,-2473.0857 2153.5265,-2471.531 2160.7497,-2479.2819 2164.0066,-2473.0857"/>
</a>
</g>
<g id="a_edge102&#45;label"><a xlink:title="go/types.(*Checker).typExpr ... runtime.mapassign (0.31s)">
<text text-anchor="middle" x="2238.1982" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.31s</text>
</a>
</g>
</g>
<!-- N73 -->
<g id="node73" class="node">
<title>N73</title>
<g id="a_node73"><a xlink:title="go/types.(*Checker).typExprInternal (0.97s)">
<polygon fill="#edecea" stroke="#b2aca0" points="2323.9664,-2477.5 2246.9818,-2477.5 2246.9818,-2424.5 2323.9664,-2424.5 2323.9664,-2477.5"/>
<text text-anchor="middle" x="2285.4741" y="-2466.3" font-family="Times,serif" font-size="9.00" fill="#000000">go/types</text>
<text text-anchor="middle" x="2285.4741" y="-2457.3" font-family="Times,serif" font-size="9.00" fill="#000000">(*Checker)</text>
<text text-anchor="middle" x="2285.4741" y="-2448.3" font-family="Times,serif" font-size="9.00" fill="#000000">typExprInternal</text>
<text text-anchor="middle" x="2285.4741" y="-2439.3" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="2285.4741" y="-2430.3" font-family="Times,serif" font-size="9.00" fill="#000000">of 0.97s (2.00%)</text>
</a>
</g>
</g>
<!-- N54&#45;&gt;N73 -->
<g id="edge72" class="edge">
<title>N54&#45;&gt;N73</title>
<g id="a_edge72"><a xlink:title="go/types.(*Checker).typExpr &#45;&gt; go/types.(*Checker).typExprInternal (0.97s)">
<path fill="none" stroke="#b2aca0" d="M2285.4741,-2542.9766C2285.4741,-2527.6521 2285.4741,-2506.0943 2285.4741,-2487.7012"/>
<polygon fill="#b2aca0" stroke="#b2aca0" points="2288.9742,-2487.589 2285.4741,-2477.589 2281.9742,-2487.5891 2288.9742,-2487.589"/>
</a>
</g>
<g id="a_edge72&#45;label"><a xlink:title="go/types.(*Checker).typExpr &#45;&gt; go/types.(*Checker).typExprInternal (0.97s)">
<text text-anchor="middle" x="2302.1982" y="-2502.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.97s</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N9 -->
<g id="edge92" class="edge">
<title>N55&#45;&gt;N9</title>
<g id="a_edge92"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; runtime.growslice (0.49s)">
<path fill="none" stroke="#b2b0a9" d="M1004.7261,-977.9191C992.6524,-956.2035 978.4741,-924.2605 978.4741,-894 978.4741,-894 978.4741,-894 978.4741,-680.5 978.4741,-650.8644 969.0135,-641.2419 946.4741,-622 928.3764,-606.55 903.8745,-596.904 882.4024,-590.9675"/>
<polygon fill="#b2b0a9" stroke="#b2b0a9" points="883.0224,-587.5133 872.4662,-588.4178 881.2824,-594.2936 883.0224,-587.5133"/>
</a>
</g>
<g id="a_edge92&#45;label"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; runtime.growslice (0.49s)">
<text text-anchor="middle" x="995.1982" y="-779.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.49s</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N11 -->
<g id="edge162" class="edge">
<title>N55&#45;&gt;N11</title>
<g id="a_edge162"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; runtime.newobject (0.06s)">
<path fill="none" stroke="#b2b2b1" d="M1053.9796,-977.9516C1103.8148,-938.6995 1203.542,-865.7647 1300.4741,-828 1366.1163,-802.4258 1447.4149,-791.3924 1498.1262,-786.7419"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1498.4977,-790.2229 1508.1566,-785.869 1497.8908,-783.2492 1498.4977,-790.2229"/>
</a>
</g>
<g id="a_edge162&#45;label"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; runtime.newobject (0.06s)">
<text text-anchor="middle" x="1244.1982" y="-889.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N14 -->
<g id="edge153" class="edge">
<title>N55&#45;&gt;N14</title>
<g id="a_edge153"><a xlink:title="go/parser.(*parser).consumeCommentGroup ... runtime.gcWriteBarrier (0.08s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M1074.8278,-999.7873C1274.8566,-982.1189 1980.2124,-919.8153 2203.8873,-900.0582"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="2204.2024,-903.5441 2213.8556,-899.1777 2203.5864,-896.5713 2204.2024,-903.5441"/>
</a>
</g>
<g id="a_edge153&#45;label"><a xlink:title="go/parser.(*parser).consumeCommentGroup ... runtime.gcWriteBarrier (0.08s)">
<text text-anchor="middle" x="1663.1982" y="-948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.08s</text>
</a>
</g>
</g>
<!-- N66 -->
<g id="node66" class="node">
<title>N66</title>
<g id="a_node66"><a xlink:title="go/parser.(*parser).consumeComment (1.49s)">
<polygon fill="#edebe9" stroke="#b2a897" points="1104.9646,-925.5 1005.9836,-925.5 1005.9836,-862.5 1104.9646,-862.5 1104.9646,-925.5"/>
<text text-anchor="middle" x="1055.4741" y="-912.7" font-family="Times,serif" font-size="11.00" fill="#000000">go/parser</text>
<text text-anchor="middle" x="1055.4741" y="-901.7" font-family="Times,serif" font-size="11.00" fill="#000000">(*parser)</text>
<text text-anchor="middle" x="1055.4741" y="-890.7" font-family="Times,serif" font-size="11.00" fill="#000000">consumeComment</text>
<text text-anchor="middle" x="1055.4741" y="-879.7" font-family="Times,serif" font-size="11.00" fill="#000000">0.37s (0.76%)</text>
<text text-anchor="middle" x="1055.4741" y="-868.7" font-family="Times,serif" font-size="11.00" fill="#000000">of 1.49s (3.07%)</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N66 -->
<g id="edge51" class="edge">
<title>N55&#45;&gt;N66</title>
<g id="a_edge51"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; go/parser.(*parser).consumeComment (1.49s)">
<path fill="none" stroke="#b2a897" d="M1029.7046,-977.751C1033.6327,-964.9845 1038.4212,-949.4222 1042.7995,-935.1925"/>
<polygon fill="#b2a897" stroke="#b2a897" points="1046.1539,-936.1919 1045.7496,-925.6048 1039.4634,-934.1332 1046.1539,-936.1919"/>
</a>
</g>
<g id="a_edge51&#45;label"><a xlink:title="go/parser.(*parser).consumeCommentGroup &#45;&gt; go/parser.(*parser).consumeComment (1.49s)">
<text text-anchor="middle" x="1055.1982" y="-948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.49s</text>
</a>
</g>
</g>
<!-- N56 -->
<g id="node56" class="node">
<title>N56</title>
<g id="a_node56"><a xlink:title="go/build.(*importReader).readByte (2.60s)">
<polygon fill="#edeae6" stroke="#b29e82" points="905.9664,-1820 828.9818,-1820 828.9818,-1767 905.9664,-1767 905.9664,-1820"/>
<text text-anchor="middle" x="867.4741" y="-1808.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="867.4741" y="-1799.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*importReader)</text>
<text text-anchor="middle" x="867.4741" y="-1790.8" font-family="Times,serif" font-size="9.00" fill="#000000">readByte</text>
<text text-anchor="middle" x="867.4741" y="-1781.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.03s (0.062%)</text>
<text text-anchor="middle" x="867.4741" y="-1772.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.60s (5.35%)</text>
</a>
</g>
</g>
<!-- N56&#45;&gt;N1 -->
<g id="edge60" class="edge">
<title>N56&#45;&gt;N1</title>
<g id="a_edge60"><a xlink:title="go/build.(*importReader).readByte ... syscall.Syscall (1.24s)">
<path fill="none" stroke="#b2aa9b" stroke-dasharray="1,5" d="M829.0752,-1767.0027C826.1987,-1765.2536 823.3117,-1763.5671 820.4741,-1762 803.2495,-1752.4876 796.1601,-1755.2631 780.0259,-1744 769.7683,-1736.8393 759.7291,-1728.2664 750.3963,-1719.3743"/>
<polygon fill="#b2aa9b" stroke="#b2aa9b" points="752.6638,-1716.696 743.0723,-1712.1955 747.7639,-1721.695 752.6638,-1716.696"/>
</a>
</g>
<g id="a_edge60&#45;label"><a xlink:title="go/build.(*importReader).readByte ... syscall.Syscall (1.24s)">
<text text-anchor="middle" x="797.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.24s</text>
</a>
</g>
</g>
<!-- N56&#45;&gt;N9 -->
<g id="edge61" class="edge">
<title>N56&#45;&gt;N9</title>
<g id="a_edge61"><a xlink:title="go/build.(*importReader).readByte &#45;&gt; runtime.growslice (1.21s)">
<path fill="none" stroke="#b2ab9c" d="M859.0886,-1766.9528C831.5253,-1679.5019 745.4741,-1404.8916 745.4741,-1385 745.4741,-1385 745.4741,-1385 745.4741,-680.5 745.4741,-653.7658 743.128,-643.1547 759.4741,-622 766.7319,-612.6072 776.8333,-605.1679 787.2748,-599.3819"/>
<polygon fill="#b2ab9c" stroke="#b2ab9c" points="789.1402,-602.3602 796.4753,-594.7152 785.9736,-596.1174 789.1402,-602.3602"/>
</a>
</g>
<g id="a_edge61&#45;label"><a xlink:title="go/build.(*importReader).readByte &#45;&gt; runtime.growslice (1.21s)">
<text text-anchor="middle" x="762.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.21s</text>
</a>
</g>
</g>
<!-- N57 -->
<g id="node57" class="node">
<title>N57</title>
<g id="a_node57"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir (3.47s)">
<polygon fill="#ede9e4" stroke="#b29572" points="839.9224,-2370 657.0259,-2370 657.0259,-2299 839.9224,-2299 839.9224,-2370"/>
<text text-anchor="middle" x="748.4741" y="-2358.8" font-family="Times,serif" font-size="9.00" fill="#000000">github</text>
<text text-anchor="middle" x="748.4741" y="-2349.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/go&#45;langserver/vendor/github</text>
<text text-anchor="middle" x="748.4741" y="-2340.8" font-family="Times,serif" font-size="9.00" fill="#000000">com/sourcegraph/ctxvfs</text>
<text text-anchor="middle" x="748.4741" y="-2331.8" font-family="Times,serif" font-size="9.00" fill="#000000">NameSpace</text>
<text text-anchor="middle" x="748.4741" y="-2322.8" font-family="Times,serif" font-size="9.00" fill="#000000">ReadDir</text>
<text text-anchor="middle" x="748.4741" y="-2313.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="748.4741" y="-2304.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 3.47s (7.14%)</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N9 -->
<g id="edge159" class="edge">
<title>N57&#45;&gt;N9</title>
<g id="a_edge159"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; runtime.growslice (0.07s)">
<path fill="none" stroke="#b2b2b1" d="M745.4182,-2298.7095C738.7519,-2242.7418 717.9715,-2134.4602 654.4741,-2072 636.7392,-2054.5548 623.6223,-2065.3279 601.4741,-2054 579.6248,-2042.825 567.7267,-2043.8094 556.4741,-2022 547.5076,-2004.6213 555.9635,-1997.5489 556.4741,-1978 561.587,-1782.2442 579.4741,-1733.8225 579.4741,-1538 579.4741,-1538 579.4741,-1538 579.4741,-680.5 579.4741,-636.5896 712.7101,-604.6937 786.5661,-590.3862"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="787.4026,-593.7899 796.5734,-588.4846 786.0958,-586.913 787.4026,-593.7899"/>
</a>
</g>
<g id="a_edge159&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; runtime.growslice (0.07s)">
<text text-anchor="middle" x="596.1982" y="-1434.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.07s</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N22 -->
<g id="edge114" class="edge">
<title>N57&#45;&gt;N22</title>
<g id="a_edge114"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; runtime.mapassign_faststr (0.21s)">
<path fill="none" stroke="#b2b1ae" d="M840.0865,-2321.6751C945.4628,-2307.1875 1123.7387,-2283.4857 1277.4741,-2267 1323.3845,-2262.0768 1441.757,-2266.5285 1484.4741,-2249 1562.4423,-2217.0066 1585.4451,-2199.239 1630.4741,-2128 1757.8727,-1926.4467 1678.6255,-1831.2119 1762.4741,-1608 1805.9498,-1492.2641 1835.7164,-1471.8104 1888.4741,-1360 1905.852,-1323.1707 1924.3583,-1280.2423 1936.5814,-1251.3075"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="1939.8201,-1252.6349 1940.475,-1242.0603 1933.3686,-1249.9184 1939.8201,-1252.6349"/>
</a>
</g>
<g id="a_edge114&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; runtime.mapassign_faststr (0.21s)">
<text text-anchor="middle" x="1739.1982" y="-1789.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.21s</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N48 -->
<g id="edge29" class="edge">
<title>N57&#45;&gt;N48</title>
<g id="a_edge29"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir ... io/ioutil.ReadDir (3.02s)">
<path fill="none" stroke="#b29a7b" stroke-dasharray="1,5" d="M663.6718,-2298.6808C656.7474,-2293.4721 650.3714,-2287.5986 645.0259,-2281 636.0317,-2269.8973 631.3859,-2254.7556 628.9915,-2241.6266"/>
<polygon fill="#b29a7b" stroke="#b29a7b" points="632.4405,-2241.0241 627.5138,-2231.6445 625.516,-2242.0492 632.4405,-2241.0241"/>
</a>
</g>
<g id="a_edge29&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir ... io/ioutil.ReadDir (3.02s)">
<text text-anchor="middle" x="662.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.02s</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N58 -->
<g id="edge168" class="edge">
<title>N57&#45;&gt;N58</title>
<g id="a_edge168"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (0.05s)">
<path fill="none" stroke="#b2b2b1" d="M656.9769,-2309.6258C639.9515,-2305.6138 622.2445,-2301.8493 605.4741,-2299 520.782,-2284.6105 497.966,-2293.8451 413.0259,-2281 338.878,-2269.787 256.0849,-2252.2892 193.0805,-2237.9188"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="193.6722,-2234.4637 183.143,-2235.6407 192.1081,-2241.2868 193.6722,-2234.4637"/>
</a>
</g>
<g id="a_edge168&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate (0.05s)">
<text text-anchor="middle" x="430.1982" y="-2269.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.05s</text>
</a>
</g>
</g>
<!-- N58&#45;&gt;N39 -->
<g id="edge80" class="edge">
<title>N58&#45;&gt;N39</title>
<g id="a_edge80"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate ... path.Clean (0.82s)">
<path fill="none" stroke="#b2aea3" stroke-dasharray="1,5" d="M85.2787,-2177.8366C81.9304,-2155.5385 78.4741,-2126.1805 78.4741,-2100 78.4741,-2100 78.4741,-2100 78.4741,-1901.5 78.4741,-1863.9877 111.4492,-1835.177 141.2906,-1816.7846"/>
<polygon fill="#b2aea3" stroke="#b2aea3" points="143.168,-1819.7407 150.0015,-1811.6441 139.6104,-1813.7121 143.168,-1819.7407"/>
</a>
</g>
<g id="a_edge80&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate ... path.Clean (0.82s)">
<text text-anchor="middle" x="95.1982" y="-1995.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.82s</text>
</a>
</g>
</g>
<!-- N58&#45;&gt;N45 -->
<g id="edge91" class="edge">
<title>N58&#45;&gt;N45</title>
<g id="a_edge91"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate ... runtime.concatstrings (0.54s)">
<path fill="none" stroke="#b2afa8" stroke-dasharray="1,5" d="M60.7954,-2177.9766C45.6052,-2156.7874 30.4741,-2128.5223 30.4741,-2100 30.4741,-2100 30.4741,-2100 30.4741,-1793.5 30.4741,-1713.4019 138.1491,-1680.0788 203.1828,-1667.257"/>
<polygon fill="#b2afa8" stroke="#b2afa8" points="204.0484,-1670.6558 213.2312,-1665.3712 202.7571,-1663.7759 204.0484,-1670.6558"/>
</a>
</g>
<g id="a_edge91&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.mountedFS.translate ... runtime.concatstrings (0.54s)">
<text text-anchor="middle" x="47.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.54s</text>
</a>
</g>
</g>
<!-- N59&#45;&gt;N25 -->
<g id="edge7" class="edge">
<title>N59&#45;&gt;N25</title>
<g id="a_edge7"><a xlink:title="github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open (9.65s)">
<path fill="none" stroke="#b24501" stroke-dasharray="1,5" d="M546.445,-2419.8154C537.7349,-2414.1863 528.9757,-2408.1441 521.0259,-2402 508.3729,-2392.221 495.4648,-2380.4832 484.2078,-2369.5581"/>
<polygon fill="#b24501" stroke="#b24501" points="486.6482,-2367.0492 477.068,-2362.5248 481.7358,-2372.036 486.6482,-2367.0492"/>
</a>
</g>
<g id="a_edge7&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/langserver/util.PrepareContext.func1 ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.Open (9.65s)">
<text text-anchor="middle" x="538.1982" y="-2390.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 9.65s</text>
</a>
</g>
</g>
<!-- N60&#45;&gt;N11 -->
<g id="edge130" class="edge">
<title>N60&#45;&gt;N11</title>
<g id="a_edge130"><a xlink:title="go/parser.(*parser).parseIfStmt ... runtime.newobject (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M1435.4741,-1409.6635C1435.4741,-1387.9421 1435.4741,-1357.625 1435.4741,-1331 1435.4741,-1331 1435.4741,-1331 1435.4741,-894 1435.4741,-855.7632 1468.9654,-826.1924 1499.1549,-807.3042"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1501.1851,-810.1679 1507.9632,-802.0249 1497.5865,-804.1637 1501.1851,-810.1679"/>
</a>
</g>
<g id="a_edge130&#45;label"><a xlink:title="go/parser.(*parser).parseIfStmt ... runtime.newobject (0.14s)">
<text text-anchor="middle" x="1452.1982" y="-1103.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N60&#45;&gt;N53 -->
<g id="edge67" class="edge">
<title>N60&#45;&gt;N53</title>
<g id="a_edge67"><a xlink:title="go/parser.(*parser).parseIfStmt &#45;&gt; go/parser.(*parser).parseBlockStmt (1.13s)">
<path fill="none" stroke="#b2ab9d" d="M1393.7784,-1429.1958C1336.6061,-1415.7285 1240.6958,-1393.0396 1239.0259,-1392 1229.0917,-1385.8158 1220.1772,-1377.0048 1212.7018,-1367.9959"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="1215.4331,-1365.8069 1206.5135,-1360.0892 1209.9207,-1370.1212 1215.4331,-1365.8069"/>
</a>
</g>
<g id="a_edge67&#45;label"><a xlink:title="go/parser.(*parser).parseIfStmt &#45;&gt; go/parser.(*parser).parseBlockStmt (1.13s)">
<text text-anchor="middle" x="1255.1982" y="-1380.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.13s</text>
</a>
</g>
</g>
<!-- N61&#45;&gt;N17 -->
<g id="edge63" class="edge">
<title>N61&#45;&gt;N17</title>
<g id="a_edge63"><a xlink:title="go/types.(*Checker).ident &#45;&gt; go/types.(*Checker).objDecl (1.17s)">
<path fill="none" stroke="#b2ab9d" d="M2292.4741,-2899.2093C2292.4741,-2880.6473 2292.4741,-2856.688 2292.4741,-2837.9138"/>
<polygon fill="#b2ab9d" stroke="#b2ab9d" points="2295.9742,-2837.8123 2292.4741,-2827.8124 2288.9742,-2837.8124 2295.9742,-2837.8123"/>
</a>
</g>
<g id="a_edge63&#45;label"><a xlink:title="go/types.(*Checker).ident &#45;&gt; go/types.(*Checker).objDecl (1.17s)">
<text text-anchor="middle" x="2309.1982" y="-2863.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.17s</text>
</a>
</g>
</g>
<!-- N62&#45;&gt;N15 -->
<g id="edge56" class="edge">
<title>N62&#45;&gt;N15</title>
<g id="a_edge56"><a xlink:title="go/parser.(*parser).expectSemi &#45;&gt; go/parser.(*parser).next (1.38s)">
<path fill="none" stroke="#b2a999" d="M994.4741,-1191.251C994.4741,-1177.1352 994.4741,-1159.6013 994.4741,-1144.2301"/>
<polygon fill="#b2a999" stroke="#b2a999" points="997.9742,-1144.0026 994.4741,-1134.0026 990.9742,-1144.0027 997.9742,-1144.0026"/>
</a>
</g>
<g id="a_edge56&#45;label"><a xlink:title="go/parser.(*parser).expectSemi &#45;&gt; go/parser.(*parser).next (1.38s)">
<text text-anchor="middle" x="1011.1982" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.38s</text>
</a>
</g>
</g>
<!-- N63&#45;&gt;N39 -->
<g id="edge111" class="edge">
<title>N63&#45;&gt;N39</title>
<g id="a_edge111"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve &#45;&gt; path.Clean (0.23s)">
<path fill="none" stroke="#b2b1ae" d="M188.4741,-2071.9876C188.4741,-2015.1087 188.4741,-1886.3693 188.4741,-1825.9531"/>
<polygon fill="#b2b1ae" stroke="#b2b1ae" points="191.9742,-1825.8399 188.4741,-1815.8399 184.9742,-1825.8399 191.9742,-1825.8399"/>
</a>
</g>
<g id="a_edge111&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve &#45;&gt; path.Clean (0.23s)">
<text text-anchor="middle" x="205.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.23s</text>
</a>
</g>
</g>
<!-- N63&#45;&gt;N45 -->
<g id="edge118" class="edge">
<title>N63&#45;&gt;N45</title>
<g id="a_edge118"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve ... runtime.concatstrings (0.19s)">
<path fill="none" stroke="#b2b1af" stroke-dasharray="1,5" d="M177.3129,-2071.571C155.8659,-2012.9464 113.4022,-1874.6763 141.4741,-1762 149.7611,-1728.7374 178.6046,-1702.7152 204.676,-1685.281"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="206.8499,-1688.0447 213.3776,-1679.6997 203.0706,-1682.1526 206.8499,-1688.0447"/>
</a>
</g>
<g id="a_edge118&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.osFS.resolve ... runtime.concatstrings (0.19s)">
<text text-anchor="middle" x="156.1982" y="-1897.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.19s</text>
</a>
</g>
</g>
<!-- N64&#45;&gt;N11 -->
<g id="edge132" class="edge">
<title>N64&#45;&gt;N11</title>
<g id="a_edge132"><a xlink:title="go/types.(*Checker).indexedElts ... runtime.newobject (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M2546.6398,-2901.9719C2524.8552,-2863.7728 2486.7192,-2790.3384 2472.4741,-2722 2465.3999,-2688.0628 2471.9583,-2678.6628 2472.4741,-2644 2478.4748,-2240.755 2499.4741,-2140.2897 2499.4741,-1737 2499.4741,-1737 2499.4741,-1737 2499.4741,-894 2499.4741,-802.0027 1789.6639,-786.4956 1595.2151,-783.9735"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1595.0558,-780.4713 1585.0132,-783.8471 1594.969,-787.4708 1595.0558,-780.4713"/>
</a>
</g>
<g id="a_edge132&#45;label"><a xlink:title="go/types.(*Checker).indexedElts ... runtime.newobject (0.14s)">
<text text-anchor="middle" x="2515.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N64&#45;&gt;N49 -->
<g id="edge79" class="edge">
<title>N64&#45;&gt;N49</title>
<g id="a_edge79"><a xlink:title="go/types.(*Checker).indexedElts ... go/types.(*Checker).rawExpr (0.86s)">
<path fill="none" stroke="#b2ada2" stroke-dasharray="1,5" d="M2564.1468,-2901.9197C2568.3072,-2835.8049 2579.1052,-2664.2106 2583.5348,-2593.8186"/>
<polygon fill="#b2ada2" stroke="#b2ada2" points="2587.054,-2593.6218 2584.189,-2583.4217 2580.0678,-2593.1821 2587.054,-2593.6218"/>
</a>
</g>
<g id="a_edge79&#45;label"><a xlink:title="go/types.(*Checker).indexedElts ... go/types.(*Checker).rawExpr (0.86s)">
<text text-anchor="middle" x="2590.1982" y="-2742.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.86s</text>
</a>
</g>
</g>
<!-- N65&#45;&gt;N11 -->
<g id="edge146" class="edge">
<title>N65&#45;&gt;N11</title>
<g id="a_edge146"><a xlink:title="go/types.(*Checker).collectParams ... runtime.newobject (0.11s)">
<path fill="none" stroke="#b2b2b0" stroke-dasharray="1,5" d="M2321.7083,-2656.0487C2335.1221,-2632.4643 2351.4741,-2596.7852 2351.4741,-2563 2351.4741,-2563 2351.4741,-2563 2351.4741,-2395 2351.4741,-2105.5688 2339.05,-2033.3961 2334.5386,-1744 2333.1114,-1652.4543 2333.4741,-1629.5568 2333.4741,-1538 2333.4741,-1538 2333.4741,-1538 2333.4741,-1277 2333.4741,-1091.6475 2463.5712,-997.6788 2339.4741,-860 2313.5959,-831.2895 2204.359,-849.6622 2166.4741,-842 2145.5279,-837.7636 2141.4743,-831.9605 2120.4741,-828 2020.2451,-809.0972 1715.0083,-792.0511 1595.3424,-785.9154"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="1595.1904,-782.4032 1585.0253,-785.3899 1594.8343,-789.3941 1595.1904,-782.4032"/>
</a>
</g>
<g id="a_edge146&#45;label"><a xlink:title="go/types.(*Checker).collectParams ... runtime.newobject (0.11s)">
<text text-anchor="middle" x="2350.9419" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.11s</text>
</a>
</g>
</g>
<!-- N65&#45;&gt;N14 -->
<g id="edge165" class="edge">
<title>N65&#45;&gt;N14</title>
<g id="a_edge165"><a xlink:title="go/types.(*Checker).collectParams ... runtime.gcWriteBarrier (0.06s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M2338.3457,-2656.4208C2348.0674,-2647.5427 2358.0372,-2637.0682 2365.4741,-2626 2382.1849,-2601.1298 2389.4741,-2592.9629 2389.4741,-2563 2389.4741,-2563 2389.4741,-2563 2389.4741,-2334.5 2389.4741,-2034.6155 2371.4741,-1959.8845 2371.4741,-1660 2371.4741,-1660 2371.4741,-1660 2371.4741,-1277 2371.4741,-1150.4049 2320.1469,-1007.5478 2291.4077,-937.4813"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="2294.5751,-935.9823 2287.5101,-928.087 2288.1095,-938.6649 2294.5751,-935.9823"/>
</a>
</g>
<g id="a_edge165&#45;label"><a xlink:title="go/types.(*Checker).collectParams ... runtime.gcWriteBarrier (0.06s)">
<text text-anchor="middle" x="2390.1982" y="-1789.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.06s</text>
</a>
</g>
</g>
<!-- N65&#45;&gt;N22 -->
<g id="edge127" class="edge">
<title>N65&#45;&gt;N22</title>
<g id="a_edge127"><a xlink:title="go/types.(*Checker).collectParams ... runtime.mapassign_faststr (0.15s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M2274.1937,-2656.4146C2267.15,-2651.4995 2259.3844,-2646.9825 2251.4741,-2644 2123.8519,-2595.881 1955.4741,-2699.3923 1955.4741,-2563 1955.4741,-2563 1955.4741,-2563 1955.4741,-1953 1955.4741,-1748.0301 1988.4741,-1697.9699 1988.4741,-1493 1988.4741,-1493 1988.4741,-1493 1988.4741,-1331 1988.4741,-1303.2345 1978.0395,-1273.539 1968.1062,-1251.5606"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1971.1917,-1249.8973 1963.7647,-1242.3415 1964.8588,-1252.8797 1971.1917,-1249.8973"/>
</a>
</g>
<g id="a_edge127&#45;label"><a xlink:title="go/types.(*Checker).collectParams ... runtime.mapassign_faststr (0.15s)">
<text text-anchor="middle" x="1972.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.15s</text>
</a>
</g>
</g>
<!-- N65&#45;&gt;N54 -->
<g id="edge78" class="edge">
<title>N65&#45;&gt;N54</title>
<g id="a_edge78"><a xlink:title="go/types.(*Checker).collectParams ... go/types.(*Checker).typExpr (0.87s)">
<path fill="none" stroke="#b2ada2" stroke-dasharray="1,5" d="M2300.2574,-2656.3681C2297.3056,-2637.7249 2293.3559,-2612.7796 2290.2817,-2593.3634"/>
<polygon fill="#b2ada2" stroke="#b2ada2" points="2293.6966,-2592.5503 2288.6757,-2583.2207 2286.7827,-2593.645 2293.6966,-2592.5503"/>
</a>
</g>
<g id="a_edge78&#45;label"><a xlink:title="go/types.(*Checker).collectParams ... go/types.(*Checker).typExpr (0.87s)">
<text text-anchor="middle" x="2311.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.87s</text>
</a>
</g>
</g>
<!-- N66&#45;&gt;N11 -->
<g id="edge123" class="edge">
<title>N66&#45;&gt;N11</title>
<g id="a_edge123"><a xlink:title="go/parser.(*parser).consumeComment &#45;&gt; runtime.newobject (0.17s)">
<path fill="none" stroke="#b2b1af" d="M1105.0344,-868.0192C1133.785,-854.0412 1171.1099,-837.7221 1206.0259,-828 1307.4104,-799.7702 1430.8827,-789.3127 1497.7539,-785.5408"/>
<polygon fill="#b2b1af" stroke="#b2b1af" points="1498.1904,-789.0225 1507.9882,-784.9912 1497.8149,-782.0326 1498.1904,-789.0225"/>
</a>
</g>
<g id="a_edge123&#45;label"><a xlink:title="go/parser.(*parser).consumeComment &#45;&gt; runtime.newobject (0.17s)">
<text text-anchor="middle" x="1222.1982" y="-830.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.17s</text>
</a>
</g>
</g>
<!-- N66&#45;&gt;N69 -->
<g id="edge75" class="edge">
<title>N66&#45;&gt;N69</title>
<g id="a_edge75"><a xlink:title="go/parser.(*parser).consumeComment &#45;&gt; go/parser.(*parser).next0 (0.92s)">
<path fill="none" stroke="#b2ada1" d="M1006.015,-866.1162C975.5941,-848.9656 936.8246,-827.1083 906.805,-810.184"/>
<polygon fill="#b2ada1" stroke="#b2ada1" points="908.2184,-806.9629 897.7885,-805.1007 904.7806,-813.0607 908.2184,-806.9629"/>
</a>
</g>
<g id="a_edge75&#45;label"><a xlink:title="go/parser.(*parser).consumeComment &#45;&gt; go/parser.(*parser).next0 (0.92s)">
<text text-anchor="middle" x="974.1982" y="-830.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.92s</text>
</a>
</g>
</g>
<!-- N68&#45;&gt;N24 -->
<g id="edge4" class="edge">
<title>N68&#45;&gt;N24</title>
<g id="a_edge4"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).importAll &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage (24.53s)">
<path fill="none" stroke="#b22100" stroke-width="3" d="M769.4741,-2892.8505C769.4741,-2880.529 769.4741,-2866.5432 769.4741,-2853.5105"/>
<polygon fill="#b22100" stroke="#b22100" stroke-width="3" points="772.9742,-2853.3128 769.4741,-2843.3129 765.9742,-2853.3129 772.9742,-2853.3128"/>
</a>
</g>
<g id="a_edge4&#45;label"><a xlink:title="github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).importAll &#45;&gt; github.com/sourcegraph/go&#45;langserver/vendor/golang.org/x/tools/go/loader.(*importer).findPackage (24.53s)">
<text text-anchor="middle" x="789.6982" y="-2863.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 24.53s</text>
</a>
</g>
</g>
<!-- N72 -->
<g id="node72" class="node">
<title>N72</title>
<g id="a_node72"><a xlink:title="go/scanner.(*Scanner).Scan (1.85s)">
<polygon fill="#edebe8" stroke="#b2a590" points="854.9664,-707 777.9818,-707 777.9818,-654 854.9664,-654 854.9664,-707"/>
<text text-anchor="middle" x="816.4741" y="-695.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/scanner</text>
<text text-anchor="middle" x="816.4741" y="-686.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*Scanner)</text>
<text text-anchor="middle" x="816.4741" y="-677.8" font-family="Times,serif" font-size="9.00" fill="#000000">Scan</text>
<text text-anchor="middle" x="816.4741" y="-668.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="816.4741" y="-659.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 1.85s (3.81%)</text>
</a>
</g>
</g>
<!-- N69&#45;&gt;N72 -->
<g id="edge41" class="edge">
<title>N69&#45;&gt;N72</title>
<g id="a_edge41"><a xlink:title="go/parser.(*parser).next0 &#45;&gt; go/scanner.(*Scanner).Scan (1.84s)">
<path fill="none" stroke="#b2a590" d="M848.4006,-756.9749C843.2745,-744.6961 837.105,-729.9181 831.5616,-716.6397"/>
<polygon fill="#b2a590" stroke="#b2a590" points="834.742,-715.1729 827.6596,-707.2932 828.2823,-717.8697 834.742,-715.1729"/>
</a>
</g>
<g id="a_edge41&#45;label"><a xlink:title="go/parser.(*parser).next0 &#45;&gt; go/scanner.(*Scanner).Scan (1.84s)">
<text text-anchor="middle" x="858.1982" y="-727.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.84s</text>
</a>
</g>
</g>
<!-- N70&#45;&gt;N6 -->
<g id="edge171" class="edge">
<title>N70&#45;&gt;N6</title>
<g id="a_edge171"><a xlink:title="runtime.bulkBarrierPreWrite ... runtime.systemstack (0.05s)">
<path fill="none" stroke="#b2b2b1" stroke-dasharray="1,5" d="M1140.5664,-339.948C1124.337,-326.2255 1105.524,-310.3186 1089.7207,-296.9564"/>
<polygon fill="#b2b2b1" stroke="#b2b2b1" points="1091.6566,-294.0099 1081.7605,-290.2259 1087.1369,-299.3552 1091.6566,-294.0099"/>
</a>
</g>
<g id="a_edge171&#45;label"><a xlink:title="runtime.bulkBarrierPreWrite ... runtime.systemstack (0.05s)">
<text text-anchor="middle" x="1133.1982" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.05s</text>
</a>
</g>
</g>
<!-- N71&#45;&gt;N13 -->
<g id="edge88" class="edge">
<title>N71&#45;&gt;N13</title>
<g id="a_edge88"><a xlink:title="runtime.(*mcentral).cacheSpan ... runtime.memclrNoHeapPointers (0.62s)">
<path fill="none" stroke="#b2afa7" stroke-dasharray="1,5" d="M1162.3152,-127.3959C1155.8735,-121.7898 1148.7303,-116.2834 1141.4741,-112 1102.5954,-89.0495 1056.205,-71.1982 1015.2323,-58.1662"/>
<polygon fill="#b2afa7" stroke="#b2afa7" points="1016.0779,-54.7637 1005.4892,-55.1247 1013.9919,-61.4457 1016.0779,-54.7637"/>
</a>
</g>
<g id="a_edge88&#45;label"><a xlink:title="runtime.(*mcentral).cacheSpan ... runtime.memclrNoHeapPointers (0.62s)">
<text text-anchor="middle" x="1122.1982" y="-82.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.62s</text>
</a>
</g>
</g>
<!-- N77 -->
<g id="node77" class="node">
<title>N77</title>
<g id="a_node77"><a xlink:title="runtime.(*mSpanList).remove (0.77s)">
<polygon fill="#edeceb" stroke="#b2aea4" points="1230.133,-59 1146.8152,-59 1146.8152,-3 1230.133,-3 1230.133,-59"/>
<text text-anchor="middle" x="1188.4741" y="-45.4" font-family="Times,serif" font-size="12.00" fill="#000000">runtime</text>
<text text-anchor="middle" x="1188.4741" y="-33.4" font-family="Times,serif" font-size="12.00" fill="#000000">(*mSpanList)</text>
<text text-anchor="middle" x="1188.4741" y="-21.4" font-family="Times,serif" font-size="12.00" fill="#000000">remove</text>
<text text-anchor="middle" x="1188.4741" y="-9.4" font-family="Times,serif" font-size="12.00" fill="#000000">0.77s (1.58%)</text>
</a>
</g>
</g>
<!-- N71&#45;&gt;N77 -->
<g id="edge81" class="edge">
<title>N71&#45;&gt;N77</title>
<g id="a_edge81"><a xlink:title="runtime.(*mcentral).cacheSpan ... runtime.(*mSpanList).remove (0.72s)">
<path fill="none" stroke="#b2aea5" stroke-dasharray="1,5" d="M1188.4741,-127.3108C1188.4741,-110.3802 1188.4741,-88.2012 1188.4741,-69.3951"/>
<polygon fill="#b2aea5" stroke="#b2aea5" points="1191.9742,-69.3489 1188.4741,-59.349 1184.9742,-69.349 1191.9742,-69.3489"/>
</a>
</g>
<g id="a_edge81&#45;label"><a xlink:title="runtime.(*mcentral).cacheSpan ... runtime.(*mSpanList).remove (0.72s)">
<text text-anchor="middle" x="1205.1982" y="-82.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.72s</text>
</a>
</g>
</g>
<!-- N72&#45;&gt;N9 -->
<g id="edge82" class="edge">
<title>N72&#45;&gt;N9</title>
<g id="a_edge82"><a xlink:title="go/scanner.(*Scanner).Scan ... runtime.growslice (0.71s)">
<path fill="none" stroke="#b2aea5" stroke-dasharray="1,5" d="M821.3452,-653.8445C823.8176,-640.3147 826.8208,-623.8804 829.3306,-610.1463"/>
<polygon fill="#b2aea5" stroke="#b2aea5" points="832.782,-610.7293 831.1367,-600.263 825.896,-609.4709 832.782,-610.7293"/>
</a>
</g>
<g id="a_edge82&#45;label"><a xlink:title="go/scanner.(*Scanner).Scan ... runtime.growslice (0.71s)">
<text text-anchor="middle" x="844.1982" y="-624.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.71s</text>
</a>
</g>
</g>
<!-- N72&#45;&gt;N35 -->
<g id="edge76" class="edge">
<title>N72&#45;&gt;N35</title>
<g id="a_edge76"><a xlink:title="go/scanner.(*Scanner).Scan ... runtime.slicebytetostring (0.91s)">
<path fill="none" stroke="#b2ada1" stroke-dasharray="1,5" d="M778.0909,-672.6885C690.7218,-654.9079 477.1493,-611.4432 380.9031,-591.8559"/>
<polygon fill="#b2ada1" stroke="#b2ada1" points="381.3585,-588.3769 370.8613,-589.8123 379.9624,-595.2363 381.3585,-588.3769"/>
</a>
</g>
<g id="a_edge76&#45;label"><a xlink:title="go/scanner.(*Scanner).Scan ... runtime.slicebytetostring (0.91s)">
<text text-anchor="middle" x="606.1982" y="-624.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.91s</text>
</a>
</g>
</g>
<!-- N73&#45;&gt;N11 -->
<g id="edge133" class="edge">
<title>N73&#45;&gt;N11</title>
<g id="a_edge133"><a xlink:title="go/types.(*Checker).typExprInternal ... runtime.newobject (0.14s)">
<path fill="none" stroke="#b2b2af" stroke-dasharray="1,5" d="M2285.4741,-2424.1622C2285.4741,-2400.5495 2285.4741,-2365.2431 2285.4741,-2334.5 2285.4741,-2334.5 2285.4741,-2334.5 2285.4741,-1850 2285.4741,-1711.3333 2285.4741,-1676.6667 2285.4741,-1538 2285.4741,-1538 2285.4741,-1538 2285.4741,-1056 2285.4741,-1023.2358 2127.5031,-843.1925 2098.4741,-828 2054.4578,-804.9638 1721.6887,-790.1176 1595.1262,-785.253"/>
<polygon fill="#b2b2af" stroke="#b2b2af" points="1595.0779,-781.7487 1584.9522,-784.8664 1594.812,-788.7437 1595.0779,-781.7487"/>
</a>
</g>
<g id="a_edge133&#45;label"><a xlink:title="go/types.(*Checker).typExprInternal ... runtime.newobject (0.14s)">
<text text-anchor="middle" x="2302.1982" y="-1578.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.14s</text>
</a>
</g>
</g>
<!-- N73&#45;&gt;N61 -->
<g id="edge84" class="edge">
<title>N73&#45;&gt;N61</title>
<g id="a_edge84"><a xlink:title="go/types.(*Checker).typExprInternal &#45;&gt; go/types.(*Checker).ident (0.70s)">
<path fill="none" stroke="#b2aea5" d="M2247.5334,-2477.5228C2240.2928,-2484.1266 2233.4365,-2491.7158 2228.4741,-2500 2213.7346,-2524.6061 2214.4741,-2534.317 2214.4741,-2563 2214.4741,-2807.5 2214.4741,-2807.5 2214.4741,-2807.5 2214.4741,-2839.471 2233.9491,-2869.7027 2253.4366,-2891.9508"/>
<polygon fill="#b2aea5" stroke="#b2aea5" points="2250.9745,-2894.4453 2260.2982,-2899.4771 2256.1474,-2889.7292 2250.9745,-2894.4453"/>
</a>
</g>
<g id="a_edge84&#45;label"><a xlink:title="go/types.(*Checker).typExprInternal &#45;&gt; go/types.(*Checker).ident (0.70s)">
<text text-anchor="middle" x="2231.1982" y="-2678.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.70s</text>
</a>
</g>
</g>
<!-- N74&#45;&gt;N1 -->
<g id="edge28" class="edge">
<title>N74&#45;&gt;N1</title>
<g id="a_edge28"><a xlink:title="syscall.Fstat &#45;&gt; syscall.Syscall (3.23s)">
<path fill="none" stroke="#b29877" d="M742.1082,-1771.4055C733.1398,-1763.677 724.1481,-1754.3219 718.0259,-1744 713.9978,-1737.2087 710.7996,-1729.651 708.2603,-1721.9307"/>
<polygon fill="#b29877" stroke="#b29877" points="711.5536,-1720.7229 705.3833,-1712.1102 704.8359,-1722.6909 711.5536,-1720.7229"/>
</a>
</g>
<g id="a_edge28&#45;label"><a xlink:title="syscall.Fstat &#45;&gt; syscall.Syscall (3.23s)">
<text text-anchor="middle" x="735.1982" y="-1732.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.23s</text>
</a>
</g>
</g>
<!-- N75&#45;&gt;N49 -->
<g id="edge42" class="edge">
<title>N75&#45;&gt;N49</title>
<g id="a_edge42"><a xlink:title="go/types.(*Checker).expr ... go/types.(*Checker).rawExpr (1.74s)">
<path fill="none" stroke="#b2a692" stroke-dasharray="1,5" d="M2521.9056,-2662.9928C2524.3513,-2648.1715 2529.0932,-2627.8783 2538.0259,-2612 2542.2825,-2604.4337 2547.9924,-2597.1825 2553.9741,-2590.6864"/>
<polygon fill="#b2a692" stroke="#b2a692" points="2556.572,-2593.0356 2561.0503,-2583.4337 2551.5617,-2588.1471 2556.572,-2593.0356"/>
</a>
</g>
<g id="a_edge42&#45;label"><a xlink:title="go/types.(*Checker).expr ... go/types.(*Checker).rawExpr (1.74s)">
<text text-anchor="middle" x="2554.1982" y="-2614.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 1.74s</text>
</a>
</g>
</g>
<!-- N76&#45;&gt;N48 -->
<g id="edge139" class="edge">
<title>N76&#45;&gt;N48</title>
<g id="a_edge139"><a xlink:title="go/build.(*Context).readDir &#45;&gt; io/ioutil.ReadDir (0.12s)">
<path fill="none" stroke="#b2b2b0" d="M719.9093,-2430.9457C713.9408,-2427.103 707.5984,-2423.2647 701.4741,-2420 662.3067,-2399.1207 635.0478,-2409.6126 615.0259,-2370 594.2895,-2328.9739 605.863,-2274.0386 616.1624,-2241.3542"/>
<polygon fill="#b2b2b0" stroke="#b2b2b0" points="619.5817,-2242.1637 619.419,-2231.5701 612.9399,-2239.953 619.5817,-2242.1637"/>
</a>
</g>
<g id="a_edge139&#45;label"><a xlink:title="go/build.(*Context).readDir &#45;&gt; io/ioutil.ReadDir (0.12s)">
<text text-anchor="middle" x="632.1982" y="-2330.3" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.12s</text>
</a>
</g>
</g>
<!-- N76&#45;&gt;N57 -->
<g id="edge22" class="edge">
<title>N76&#45;&gt;N57</title>
<g id="a_edge22"><a xlink:title="go/build.(*Context).readDir ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir (3.47s)">
<path fill="none" stroke="#b29572" stroke-dasharray="1,5" d="M748.4741,-2430.9729C748.4741,-2417.0508 748.4741,-2397.9131 748.4741,-2380.3518"/>
<polygon fill="#b29572" stroke="#b29572" points="751.9742,-2380.2455 748.4741,-2370.2456 744.9742,-2380.2456 751.9742,-2380.2455"/>
</a>
</g>
<g id="a_edge22&#45;label"><a xlink:title="go/build.(*Context).readDir ... github.com/sourcegraph/go&#45;langserver/vendor/github.com/sourcegraph/ctxvfs.NameSpace.ReadDir (3.47s)">
<text text-anchor="middle" x="765.1982" y="-2390.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 3.47s</text>
</a>
</g>
</g>
<!-- N78&#45;&gt;N42 -->
<g id="edge104" class="edge">
<title>N78&#45;&gt;N42</title>
<g id="a_edge104"><a xlink:title="go/build.readImports ... runtime.makeslice (0.28s)">
<path fill="none" stroke="#b2b1ad" stroke-dasharray="1,5" d="M828.8553,-1995.6873C776.4764,-1989.3259 686.1523,-1976.3898 657.4741,-1960 604.5802,-1929.7707 600.3894,-1907.9751 567.0259,-1857 532.8852,-1804.8376 548.9236,-1776.5665 507.4741,-1730 489.3362,-1709.6229 463.8542,-1693.1387 441.6783,-1681.2971"/>
<polygon fill="#b2b1ad" stroke="#b2b1ad" points="443.2188,-1678.1535 432.7284,-1676.669 440.0034,-1684.3713 443.2188,-1678.1535"/>
</a>
</g>
<g id="a_edge104&#45;label"><a xlink:title="go/build.readImports ... runtime.makeslice (0.28s)">
<text text-anchor="middle" x="584.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 0.28s</text>
</a>
</g>
</g>
<!-- N80 -->
<g id="node80" class="node">
<title>N80</title>
<g id="a_node80"><a xlink:title="go/build.(*importReader).peekByte (2.62s)">
<polygon fill="#edeae6" stroke="#b29e82" points="905.9664,-1928 828.9818,-1928 828.9818,-1875 905.9664,-1875 905.9664,-1928"/>
<text text-anchor="middle" x="867.4741" y="-1916.8" font-family="Times,serif" font-size="9.00" fill="#000000">go/build</text>
<text text-anchor="middle" x="867.4741" y="-1907.8" font-family="Times,serif" font-size="9.00" fill="#000000">(*importReader)</text>
<text text-anchor="middle" x="867.4741" y="-1898.8" font-family="Times,serif" font-size="9.00" fill="#000000">peekByte</text>
<text text-anchor="middle" x="867.4741" y="-1889.8" font-family="Times,serif" font-size="9.00" fill="#000000">0.02s (0.041%)</text>
<text text-anchor="middle" x="867.4741" y="-1880.8" font-family="Times,serif" font-size="9.00" fill="#000000">of 2.62s (5.39%)</text>
</a>
</g>
</g>
<!-- N78&#45;&gt;N80 -->
<g id="edge37" class="edge">
<title>N78&#45;&gt;N80</title>
<g id="a_edge37"><a xlink:title="go/build.readImports ... go/build.(*importReader).peekByte (2.45s)">
<path fill="none" stroke="#b2a085" stroke-dasharray="1,5" d="M867.4741,-1977.6488C867.4741,-1966.0935 867.4741,-1951.6885 867.4741,-1938.5267"/>
<polygon fill="#b2a085" stroke="#b2a085" points="870.9742,-1938.3159 867.4741,-1928.3159 863.9742,-1938.316 870.9742,-1938.3159"/>
</a>
</g>
<g id="a_edge37&#45;label"><a xlink:title="go/build.readImports ... go/build.(*importReader).peekByte (2.45s)">
<text text-anchor="middle" x="884.1982" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.45s</text>
</a>
</g>
</g>
<!-- N80&#45;&gt;N56 -->
<g id="edge36" class="edge">
<title>N80&#45;&gt;N56</title>
<g id="a_edge36"><a xlink:title="go/build.(*importReader).peekByte &#45;&gt; go/build.(*importReader).readByte (2.60s)">
<path fill="none" stroke="#b29e82" d="M867.4741,-1874.8034C867.4741,-1861.433 867.4741,-1845.0321 867.4741,-1830.4714"/>
<polygon fill="#b29e82" stroke="#b29e82" points="870.9742,-1830.2638 867.4741,-1820.2638 863.9742,-1830.2639 870.9742,-1830.2638"/>
</a>
</g>
<g id="a_edge36&#45;label"><a xlink:title="go/build.(*importReader).peekByte &#45;&gt; go/build.(*importReader).readByte (2.60s)">
<text text-anchor="middle" x="884.1982" y="-1845.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 2.60s</text>
</a>
</g>
</g>
</g>
</g></svg>
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment