Skip to content

Instantly share code, notes, and snippets.

@tumdum
Last active January 24, 2016 20:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tumdum/83581aee2693a60f5133 to your computer and use it in GitHub Desktop.
Save tumdum/83581aee2693a60f5133 to your computer and use it in GitHub Desktop.
Cost of string
package main
import (
"bufio"
"flag"
"fmt"
"log"
"os"
"regexp"
"runtime/pprof"
)
var cpuprofile = flag.String("cpuprofile", "", "write cpu profile to file")
func main() {
flag.Parse()
if *cpuprofile != "" {
f, err := os.Create(*cpuprofile)
if err != nil {
log.Fatal(err)
}
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
}
file, err := os.Open(flag.Args()[0])
if err != nil {
panic(err)
}
defer file.Close()
scanner := bufio.NewScanner(file)
var i int
// Compile regular expression first
r := regexp.MustCompile(`sshd\[\d{5}\]:\s*Failed`)
for scanner.Scan() {
line := scanner.Bytes()
if r.Match(line) {
i++
}
}
if err := scanner.Err(); err != nil {
fmt.Println(err)
}
fmt.Println(i)
}
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
package main
import (
"bufio"
"flag"
"fmt"
"log"
"os"
"regexp"
"runtime/pprof"
)
var cpuprofile = flag.String("cpuprofile", "", "write cpu profile to file")
func main() {
flag.Parse()
if *cpuprofile != "" {
f, err := os.Create(*cpuprofile)
if err != nil {
log.Fatal(err)
}
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
}
file, err := os.Open(flag.Args()[0])
if err != nil {
panic(err)
}
defer file.Close()
scanner := bufio.NewScanner(file)
var i int
// Compile regular expression first
r := regexp.MustCompile(`sshd\[\d{5}\]:\s*Failed`)
for scanner.Scan() {
line := scanner.Text()
if r.MatchString(line) {
i++
}
}
if err := scanner.Err(); err != nil {
fmt.Println(err)
}
fmt.Println(i)
}
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.38.0 (20140413.2041)
-->
<!-- Title: goregexp 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.1
* ======================
*
* Given an unique existing element with id "viewport" (or when missing, the first g
* element), including the 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.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-2010 Andrea Leofreddi <a.leofreddi@itcharm.com>. 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.
*
* THIS SOFTWARE IS PROVIDED BY Andrea Leofreddi ``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 Andrea Leofreddi 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)
/// <====
/// END OF CONFIGURATION
var root = document.documentElement;
var state = 'none', svgRoot, 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(typeof(svgRoot) == "undefined") {
var g = null;
g = root.getElementById("viewport");
if(g == null)
g = root.getElementsByTagName('g')[0];
if(g == null)
alert('Unable to obtain SVG root element');
setCTM(g, g.getCTM());
g.removeAttribute("viewBox");
svgRoot = g;
}
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 / 3600; // Chrome/Safari
else
delta = evt.detail / -90; // Mozilla
var z = 1 + delta; // Zoom factor: 0.9/1.1
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 1357)">
<title>goregexp</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-1357 1642.5,-1357 1642.5,4 -4,4"/>
<g id="clust1" class="cluster"><title>cluster_L</title>
<polygon fill="none" stroke="black" points="320.5,-1181 320.5,-1345 790.5,-1345 790.5,-1181 320.5,-1181"/>
</g>
<!-- L -->
<g id="node1" class="node"><title>L</title>
<polygon fill="#f8f8f8" stroke="black" points="783,-1337 328,-1337 328,-1189 783,-1189 783,-1337"/>
<text text-anchor="start" x="336" y="-1307.4" font-family="Times,serif" font-size="32.00">File: goregexp</text>
<text text-anchor="start" x="336" y="-1272.4" font-family="Times,serif" font-size="32.00">Type: cpu</text>
<text text-anchor="start" x="336" y="-1237.4" font-family="Times,serif" font-size="32.00">1.95s of 2.04s total (95.59%)</text>
<text text-anchor="start" x="336" y="-1202.4" font-family="Times,serif" font-size="32.00">Dropped 25 nodes (cum &lt;= 0.01s)</text>
</g>
<!-- N1 -->
<g id="node2" class="node"><title>N1</title>
<g id="a_node2"><a xlink:title="strings.Index (0.79s)">
<polygon fill="#f8f8f8" stroke="black" points="933,-558 748,-558 748,-472 933,-472 933,-558"/>
<text text-anchor="middle" x="840.5" y="-534.8" font-family="Times,serif" font-size="24.00">strings.Index</text>
<text text-anchor="middle" x="840.5" y="-508.8" font-family="Times,serif" font-size="24.00">0.75s(36.76%)</text>
<text text-anchor="middle" x="840.5" y="-482.8" font-family="Times,serif" font-size="24.00">of 0.79s(38.73%)</text>
</a>
</g>
</g>
<!-- N12 -->
<g id="node13" class="node"><title>N12</title>
<g id="a_node13"><a xlink:title="strings.hashStr (0.04s)">
<polygon fill="#f8f8f8" stroke="black" points="883.5,-408 797.5,-408 797.5,-372 883.5,-372 883.5,-408"/>
<text text-anchor="middle" x="840.5" y="-393.4" font-family="Times,serif" font-size="12.00">strings.hashStr</text>
<text text-anchor="middle" x="840.5" y="-380.4" font-family="Times,serif" font-size="12.00">0.04s(1.96%)</text>
</a>
</g>
</g>
<!-- N1&#45;&gt;N12 -->
<g id="edge49" class="edge"><title>N1&#45;&gt;N12</title>
<g id="a_edge49"><a xlink:title="strings.Index &#45;&gt; strings.hashStr (0.04s)">
<path fill="none" stroke="black" d="M840.5,-471.67C840.5,-453.941 840.5,-433.851 840.5,-418.154"/>
<polygon fill="black" stroke="black" points="844,-418.072 840.5,-408.072 837,-418.072 844,-418.072"/>
</a>
</g>
<g id="a_edge49&#45;label"><a xlink:title="strings.Index &#45;&gt; strings.hashStr (0.04s)">
<text text-anchor="middle" x="857.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.04s</text>
</a>
</g>
</g>
<!-- N2 -->
<g id="node3" class="node"><title>N2</title>
<g id="a_node3"><a xlink:title="syscall.Syscall (0.16s)">
<polygon fill="#f8f8f8" stroke="black" points="121,-421 7.10543e-15,-421 7.10543e-15,-359 121,-359 121,-421"/>
<text text-anchor="middle" x="60.5" y="-404.2" font-family="Times,serif" font-size="16.00">syscall.Syscall</text>
<text text-anchor="middle" x="60.5" y="-386.2" font-family="Times,serif" font-size="16.00">0.15s(7.35%)</text>
<text text-anchor="middle" x="60.5" y="-368.2" font-family="Times,serif" font-size="16.00">of 0.16s(7.84%)</text>
</a>
</g>
</g>
<!-- N3 -->
<g id="node4" class="node"><title>N3</title>
<g id="a_node4"><a xlink:title="runtime.futex (0.14s)">
<polygon fill="#f8f8f8" stroke="black" points="1463.5,-308 1363.5,-308 1363.5,-266 1463.5,-266 1463.5,-308"/>
<text text-anchor="middle" x="1413.5" y="-292" font-family="Times,serif" font-size="15.00">runtime.futex</text>
<text text-anchor="middle" x="1413.5" y="-275" font-family="Times,serif" font-size="15.00">0.14s(6.86%)</text>
</a>
</g>
</g>
<!-- N4 -->
<g id="node5" class="node"><title>N4</title>
<g id="a_node5"><a xlink:title="sync/atomic.AddUint32 (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="479,-533 334,-533 334,-497 479,-497 479,-533"/>
<text text-anchor="middle" x="406.5" y="-518.6" font-family="Times,serif" font-size="13.00">sync/atomic.AddUint32</text>
<text text-anchor="middle" x="406.5" y="-504.6" font-family="Times,serif" font-size="13.00">0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N5 -->
<g id="node6" class="node"><title>N5</title>
<g id="a_node6"><a xlink:title="regexp.(*Regexp).put (0.10s)">
<polygon fill="#f8f8f8" stroke="black" points="607.5,-760 473.5,-760 473.5,-710 607.5,-710 607.5,-760"/>
<text text-anchor="middle" x="540.5" y="-745.6" font-family="Times,serif" font-size="13.00">regexp.(*Regexp).put</text>
<text text-anchor="middle" x="540.5" y="-731.6" font-family="Times,serif" font-size="13.00">0.06s(2.94%)</text>
<text text-anchor="middle" x="540.5" y="-717.6" font-family="Times,serif" font-size="13.00">of 0.10s(4.90%)</text>
</a>
</g>
</g>
<!-- N26 -->
<g id="node27" class="node"><title>N26</title>
<g id="a_node27"><a xlink:title="sync.(*Mutex).Unlock (0.09s)">
<polygon fill="#f8f8f8" stroke="black" points="449.5,-656 333.5,-656 333.5,-612 449.5,-612 449.5,-656"/>
<text text-anchor="middle" x="391.5" y="-643.2" font-family="Times,serif" font-size="11.00">sync.(*Mutex).Unlock</text>
<text text-anchor="middle" x="391.5" y="-631.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
<text text-anchor="middle" x="391.5" y="-619.2" font-family="Times,serif" font-size="11.00">of 0.09s(4.41%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N26 -->
<g id="edge51" class="edge"><title>N5&#45;&gt;N26</title>
<g id="a_edge51"><a xlink:title="regexp.(*Regexp).put &#45;&gt; sync.(*Mutex).Unlock (0.03s)">
<path fill="none" stroke="black" d="M504.05,-709.782C482.202,-695.265 454.384,-676.782 431.871,-661.824"/>
<polygon fill="black" stroke="black" points="433.792,-658.898 423.526,-656.279 429.918,-664.728 433.792,-658.898"/>
</a>
</g>
<g id="a_edge51&#45;label"><a xlink:title="regexp.(*Regexp).put &#45;&gt; sync.(*Mutex).Unlock (0.03s)">
<text text-anchor="middle" x="492.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N34 -->
<g id="node35" class="node"><title>N34</title>
<g id="a_node35"><a xlink:title="sync.(*Mutex).Lock (0.04s)">
<polygon fill="#f8f8f8" stroke="black" points="315,-654.5 216,-654.5 216,-613.5 315,-613.5 315,-654.5"/>
<text text-anchor="middle" x="265.5" y="-642.5" font-family="Times,serif" font-size="10.00">sync.(*Mutex).Lock</text>
<text text-anchor="middle" x="265.5" y="-631.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="265.5" y="-620.5" font-family="Times,serif" font-size="10.00">of 0.04s(1.96%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N34 -->
<g id="edge66" class="edge"><title>N5&#45;&gt;N34</title>
<g id="a_edge66"><a xlink:title="regexp.(*Regexp).put &#45;&gt; sync.(*Mutex).Lock (0.01s)">
<path fill="none" stroke="black" d="M473.041,-711.588C430.277,-697.131 373.905,-677.615 324.5,-659 323.918,-658.781 323.333,-658.559 322.745,-658.336"/>
<polygon fill="black" stroke="black" points="323.664,-654.939 313.074,-654.6 321.141,-661.469 323.664,-654.939"/>
</a>
</g>
<g id="a_edge66&#45;label"><a xlink:title="regexp.(*Regexp).put &#45;&gt; sync.(*Mutex).Lock (0.01s)">
<text text-anchor="middle" x="430.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.01s</text>
</a>
</g>
</g>
<!-- N6 -->
<g id="node7" class="node"><title>N6</title>
<g id="a_node7"><a xlink:title="runtime.indexbytebody (0.06s)">
<polygon fill="#f8f8f8" stroke="black" points="455,-753 314,-753 314,-717 455,-717 455,-753"/>
<text text-anchor="middle" x="384.5" y="-738.6" font-family="Times,serif" font-size="13.00">runtime.indexbytebody</text>
<text text-anchor="middle" x="384.5" y="-724.6" font-family="Times,serif" font-size="13.00">0.06s(2.94%)</text>
</a>
</g>
</g>
<!-- N7 -->
<g id="node8" class="node"><title>N7</title>
<g id="a_node8"><a xlink:title="runtime.mallocgc (0.12s)">
<polygon fill="#f8f8f8" stroke="black" points="1158.5,-659 1048.5,-659 1048.5,-609 1158.5,-609 1158.5,-659"/>
<text text-anchor="middle" x="1103.5" y="-644.6" font-family="Times,serif" font-size="13.00">runtime.mallocgc</text>
<text text-anchor="middle" x="1103.5" y="-630.6" font-family="Times,serif" font-size="13.00">0.06s(2.94%)</text>
<text text-anchor="middle" x="1103.5" y="-616.6" font-family="Times,serif" font-size="13.00">of 0.12s(5.88%)</text>
</a>
</g>
</g>
<!-- N16 -->
<g id="node17" class="node"><title>N16</title>
<g id="a_node17"><a xlink:title="runtime.prefetchnta (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="1127.5,-533 1019.5,-533 1019.5,-497 1127.5,-497 1127.5,-533"/>
<text text-anchor="middle" x="1073.5" y="-518.4" font-family="Times,serif" font-size="12.00">runtime.prefetchnta</text>
<text text-anchor="middle" x="1073.5" y="-505.4" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
</a>
</g>
</g>
<!-- N7&#45;&gt;N16 -->
<g id="edge52" class="edge"><title>N7&#45;&gt;N16</title>
<g id="a_edge52"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.prefetchnta (0.03s)">
<path fill="none" stroke="black" d="M1086.39,-608.591C1083.24,-603.035 1080.37,-596.996 1078.5,-591 1073.74,-575.709 1072.4,-557.843 1072.28,-543.385"/>
<polygon fill="black" stroke="black" points="1075.79,-543.133 1072.4,-533.093 1068.79,-543.051 1075.79,-543.133"/>
</a>
</g>
<g id="a_edge52&#45;label"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.prefetchnta (0.03s)">
<text text-anchor="middle" x="1095.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N61 -->
<g id="node62" class="node"><title>N61</title>
<g id="a_node62"><a xlink:title="runtime.systemstack (0.12s)">
<polygon fill="#f8f8f8" stroke="black" points="1227.5,-533 1145.5,-533 1145.5,-497 1227.5,-497 1227.5,-533"/>
<text text-anchor="middle" x="1186.5" y="-517.6" font-family="Times,serif" font-size="8.00">runtime.systemstack</text>
<text text-anchor="middle" x="1186.5" y="-508.6" font-family="Times,serif" font-size="8.00">0 of 0.12s(5.88%)</text>
</a>
</g>
</g>
<!-- N7&#45;&gt;N61 -->
<g id="edge53" class="edge"><title>N7&#45;&gt;N61</title>
<g id="a_edge53"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.systemstack (0.03s)">
<path fill="none" stroke="black" d="M1117.5,-608.725C1123.66,-598.444 1131.15,-586.45 1138.5,-576 1146.79,-564.203 1156.64,-551.67 1165.25,-541.126"/>
<polygon fill="black" stroke="black" points="1168.17,-543.089 1171.84,-533.149 1162.77,-538.631 1168.17,-543.089"/>
</a>
</g>
<g id="a_edge53&#45;label"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.systemstack (0.03s)">
<text text-anchor="middle" x="1155.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N8 -->
<g id="node9" class="node"><title>N8</title>
<g id="a_node9"><a xlink:title="bufio.ScanLines (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="744.5,-861 640.5,-861 640.5,-811 744.5,-811 744.5,-861"/>
<text text-anchor="middle" x="692.5" y="-846.6" font-family="Times,serif" font-size="13.00">bufio.ScanLines</text>
<text text-anchor="middle" x="692.5" y="-832.6" font-family="Times,serif" font-size="13.00">0.05s(2.45%)</text>
<text text-anchor="middle" x="692.5" y="-818.6" font-family="Times,serif" font-size="13.00">of 0.11s(5.39%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N6 -->
<g id="edge41" class="edge"><title>N8&#45;&gt;N6</title>
<g id="a_edge41"><a xlink:title="bufio.ScanLines &#45;&gt; runtime.indexbytebody (0.06s)">
<path fill="none" stroke="black" d="M640.252,-818.206C586.874,-801.049 503.976,-774.403 447.117,-756.127"/>
<polygon fill="black" stroke="black" points="448.112,-752.771 437.521,-753.042 445.97,-759.435 448.112,-752.771"/>
</a>
</g>
<g id="a_edge41&#45;label"><a xlink:title="bufio.ScanLines &#45;&gt; runtime.indexbytebody (0.06s)">
<text text-anchor="middle" x="574.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.06s</text>
</a>
</g>
</g>
<!-- N9 -->
<g id="node10" class="node"><title>N9</title>
<g id="a_node10"><a xlink:title="runtime.mSpan_Sweep.func1 (0.05s)">
<polygon fill="#f8f8f8" stroke="black" points="1273.5,-36 1099.5,-36 1099.5,-0 1273.5,-0 1273.5,-36"/>
<text text-anchor="middle" x="1186.5" y="-21.6" font-family="Times,serif" font-size="13.00">runtime.mSpan_Sweep.func1</text>
<text text-anchor="middle" x="1186.5" y="-7.6" font-family="Times,serif" font-size="13.00">0.05s(2.45%)</text>
</a>
</g>
</g>
<!-- N10 -->
<g id="node11" class="node"><title>N10</title>
<g id="a_node11"><a xlink:title="runtime.memmove (0.05s)">
<polygon fill="#f8f8f8" stroke="black" points="1042.5,-854 926.5,-854 926.5,-818 1042.5,-818 1042.5,-854"/>
<text text-anchor="middle" x="984.5" y="-839.6" font-family="Times,serif" font-size="13.00">runtime.memmove</text>
<text text-anchor="middle" x="984.5" y="-825.6" font-family="Times,serif" font-size="13.00">0.05s(2.45%)</text>
</a>
</g>
</g>
<!-- N11 -->
<g id="node12" class="node"><title>N11</title>
<g id="a_node12"><a xlink:title="regexp.(*Regexp).get (0.13s)">
<polygon fill="#f8f8f8" stroke="black" points="745,-758.5 626,-758.5 626,-711.5 745,-711.5 745,-758.5"/>
<text text-anchor="middle" x="685.5" y="-744.9" font-family="Times,serif" font-size="12.00">regexp.(*Regexp).get</text>
<text text-anchor="middle" x="685.5" y="-731.9" font-family="Times,serif" font-size="12.00">0.04s(1.96%)</text>
<text text-anchor="middle" x="685.5" y="-718.9" font-family="Times,serif" font-size="12.00">of 0.13s(6.37%)</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;N26 -->
<g id="edge42" class="edge"><title>N11&#45;&gt;N26</title>
<g id="a_edge42"><a xlink:title="regexp.(*Regexp).get &#45;&gt; sync.(*Mutex).Unlock (0.06s)">
<path fill="none" stroke="black" d="M648.421,-711.381C627.195,-699.405 599.655,-685.465 573.5,-677 524.28,-661.07 508.63,-671.78 458.5,-659 458.283,-658.945 458.066,-658.889 457.848,-658.833"/>
<polygon fill="black" stroke="black" points="458.499,-655.38 447.925,-656.058 456.613,-662.122 458.499,-655.38"/>
</a>
</g>
<g id="a_edge42&#45;label"><a xlink:title="regexp.(*Regexp).get &#45;&gt; sync.(*Mutex).Unlock (0.06s)">
<text text-anchor="middle" x="626.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.06s</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;N34 -->
<g id="edge50" class="edge"><title>N11&#45;&gt;N34</title>
<g id="a_edge50"><a xlink:title="regexp.(*Regexp).get &#45;&gt; sync.(*Mutex).Lock (0.03s)">
<path fill="none" stroke="black" d="M625.796,-712.758C622.663,-711.792 619.55,-710.866 616.5,-710 581.025,-699.925 569.343,-706.651 535.5,-692 524.64,-687.299 524.63,-681.021 513.5,-677 434.14,-648.329 406.449,-679.11 324.5,-659 322.802,-658.583 321.088,-658.126 319.368,-657.636"/>
<polygon fill="black" stroke="black" points="320.087,-654.192 309.497,-654.506 317.971,-660.865 320.087,-654.192"/>
</a>
</g>
<g id="a_edge50&#45;label"><a xlink:title="regexp.(*Regexp).get &#45;&gt; sync.(*Mutex).Lock (0.03s)">
<text text-anchor="middle" x="552.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N13 -->
<g id="node14" class="node"><title>N13</title>
<g id="a_node14"><a xlink:title="regexp.(*machine).backtrack (0.93s)">
<polygon fill="#f8f8f8" stroke="black" points="917.5,-758.5 763.5,-758.5 763.5,-711.5 917.5,-711.5 917.5,-758.5"/>
<text text-anchor="middle" x="840.5" y="-744.9" font-family="Times,serif" font-size="12.00">regexp.(*machine).backtrack</text>
<text text-anchor="middle" x="840.5" y="-731.9" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
<text text-anchor="middle" x="840.5" y="-718.9" font-family="Times,serif" font-size="12.00">of 0.93s(45.59%)</text>
</a>
</g>
</g>
<!-- N22 -->
<g id="node23" class="node"><title>N22</title>
<g id="a_node23"><a xlink:title="regexp.(*bitState).reset (0.04s)">
<polygon fill="#f8f8f8" stroke="black" points="589,-656 468,-656 468,-612 589,-612 589,-656"/>
<text text-anchor="middle" x="528.5" y="-643.2" font-family="Times,serif" font-size="11.00">regexp.(*bitState).reset</text>
<text text-anchor="middle" x="528.5" y="-631.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
<text text-anchor="middle" x="528.5" y="-619.2" font-family="Times,serif" font-size="11.00">of 0.04s(1.96%)</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;N22 -->
<g id="edge48" class="edge"><title>N13&#45;&gt;N22</title>
<g id="a_edge48"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*bitState).reset (0.04s)">
<path fill="none" stroke="black" d="M765.027,-711.457C719.384,-697.648 659.813,-679.316 598.519,-659.296"/>
<polygon fill="black" stroke="black" points="599.261,-655.856 588.668,-656.069 597.082,-662.508 599.261,-655.856"/>
</a>
</g>
<g id="a_edge48&#45;label"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*bitState).reset (0.04s)">
<text text-anchor="middle" x="714.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.04s</text>
</a>
</g>
</g>
<!-- N23 -->
<g id="node24" class="node"><title>N23</title>
<g id="a_node24"><a xlink:title="regexp.(*inputString).index (0.81s)">
<polygon fill="#f8f8f8" stroke="black" points="909,-656 772,-656 772,-612 909,-612 909,-656"/>
<text text-anchor="middle" x="840.5" y="-643.2" font-family="Times,serif" font-size="11.00">regexp.(*inputString).index</text>
<text text-anchor="middle" x="840.5" y="-631.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
<text text-anchor="middle" x="840.5" y="-619.2" font-family="Times,serif" font-size="11.00">of 0.81s(39.71%)</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;N23 -->
<g id="edge6" class="edge"><title>N13&#45;&gt;N23</title>
<g id="a_edge6"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*inputString).index (0.81s)">
<path fill="none" stroke="black" stroke-width="2" d="M840.5,-711.039C840.5,-697.709 840.5,-680.734 840.5,-666.206"/>
<polygon fill="black" stroke="black" stroke-width="2" points="844,-666.147 840.5,-656.147 837,-666.147 844,-666.147"/>
</a>
</g>
<g id="a_edge6&#45;label"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*inputString).index (0.81s)">
<text text-anchor="middle" x="857.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.81s</text>
</a>
</g>
</g>
<!-- N30 -->
<g id="node31" class="node"><title>N30</title>
<g id="a_node31"><a xlink:title="regexp.(*machine).tryBacktrack (0.05s)">
<polygon fill="#f8f8f8" stroke="black" points="754,-654.5 607,-654.5 607,-613.5 754,-613.5 754,-654.5"/>
<text text-anchor="middle" x="680.5" y="-642.5" font-family="Times,serif" font-size="10.00">regexp.(*machine).tryBacktrack</text>
<text text-anchor="middle" x="680.5" y="-631.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="680.5" y="-620.5" font-family="Times,serif" font-size="10.00">of 0.05s(2.45%)</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;N30 -->
<g id="edge45" class="edge"><title>N13&#45;&gt;N30</title>
<g id="a_edge45"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*machine).tryBacktrack (0.05s)">
<path fill="none" stroke="black" d="M803.797,-711.244C786.952,-700.804 766.716,-688.269 748.5,-677 739.557,-671.468 729.951,-665.531 720.856,-659.913"/>
<polygon fill="black" stroke="black" points="722.68,-656.926 712.332,-654.649 719.001,-662.881 722.68,-656.926"/>
</a>
</g>
<g id="a_edge45&#45;label"><a xlink:title="regexp.(*machine).backtrack &#45;&gt; regexp.(*machine).tryBacktrack (0.05s)">
<text text-anchor="middle" x="788.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.05s</text>
</a>
</g>
</g>
<!-- N14 -->
<g id="node15" class="node"><title>N14</title>
<g id="a_node15"><a xlink:title="runtime.findrunnable (0.15s)">
<polygon fill="#f8f8f8" stroke="black" points="1448.5,-859.5 1332.5,-859.5 1332.5,-812.5 1448.5,-812.5 1448.5,-859.5"/>
<text text-anchor="middle" x="1390.5" y="-845.9" font-family="Times,serif" font-size="12.00">runtime.findrunnable</text>
<text text-anchor="middle" x="1390.5" y="-832.9" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
<text text-anchor="middle" x="1390.5" y="-819.9" font-family="Times,serif" font-size="12.00">of 0.15s(7.35%)</text>
</a>
</g>
</g>
<!-- N40 -->
<g id="node41" class="node"><title>N40</title>
<g id="a_node41"><a xlink:title="runtime.gcstopm (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1288.5,-753 1214.5,-753 1214.5,-717 1288.5,-717 1288.5,-753"/>
<text text-anchor="middle" x="1251.5" y="-737.6" font-family="Times,serif" font-size="8.00">runtime.gcstopm</text>
<text text-anchor="middle" x="1251.5" y="-728.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N40 -->
<g id="edge60" class="edge"><title>N14&#45;&gt;N40</title>
<g id="a_edge60"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.gcstopm (0.02s)">
<path fill="none" stroke="black" d="M1332.5,-823.42C1312.82,-817.125 1291.93,-807.53 1276.5,-793 1267.91,-784.917 1262.11,-773.368 1258.27,-762.777"/>
<polygon fill="black" stroke="black" points="1261.54,-761.52 1255.16,-753.06 1254.87,-763.65 1261.54,-761.52"/>
</a>
</g>
<g id="a_edge60&#45;label"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.gcstopm (0.02s)">
<text text-anchor="middle" x="1293.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N45 -->
<g id="node46" class="node"><title>N45</title>
<g id="a_node46"><a xlink:title="runtime.lock (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1450.5,-753 1376.5,-753 1376.5,-717 1450.5,-717 1450.5,-753"/>
<text text-anchor="middle" x="1413.5" y="-737.6" font-family="Times,serif" font-size="8.00">runtime.lock</text>
<text text-anchor="middle" x="1413.5" y="-728.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N45 -->
<g id="edge67" class="edge"><title>N14&#45;&gt;N45</title>
<g id="a_edge67"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.lock (0.01s)">
<path fill="none" stroke="black" d="M1395.83,-812.039C1399.22,-797.466 1403.62,-778.536 1407.18,-763.21"/>
<polygon fill="black" stroke="black" points="1410.63,-763.805 1409.49,-753.273 1403.81,-762.221 1410.63,-763.805"/>
</a>
</g>
<g id="a_edge67&#45;label"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.lock (0.01s)">
<text text-anchor="middle" x="1420.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.01s</text>
</a>
</g>
</g>
<!-- N59 -->
<g id="node60" class="node"><title>N59</title>
<g id="a_node60"><a xlink:title="runtime.stopm (0.08s)">
<polygon fill="#f8f8f8" stroke="black" points="1351.5,-652 1277.5,-652 1277.5,-616 1351.5,-616 1351.5,-652"/>
<text text-anchor="middle" x="1314.5" y="-636.6" font-family="Times,serif" font-size="8.00">runtime.stopm</text>
<text text-anchor="middle" x="1314.5" y="-627.6" font-family="Times,serif" font-size="8.00">0 of 0.08s(3.92%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N59 -->
<g id="edge43" class="edge"><title>N14&#45;&gt;N59</title>
<g id="a_edge43"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.stopm (0.06s)">
<path fill="none" stroke="black" d="M1368.4,-812.284C1356.13,-798.321 1341.72,-779.429 1333.5,-760 1320.1,-728.339 1315.98,-688.629 1314.81,-662.571"/>
<polygon fill="black" stroke="black" points="1318.3,-662.18 1314.47,-652.302 1311.3,-662.414 1318.3,-662.18"/>
</a>
</g>
<g id="a_edge43&#45;label"><a xlink:title="runtime.findrunnable &#45;&gt; runtime.stopm (0.06s)">
<text text-anchor="middle" x="1350.5" y="-731.3" font-family="Times,serif" font-size="14.00"> 0.06s</text>
</a>
</g>
</g>
<!-- N15 -->
<g id="node16" class="node"><title>N15</title>
<g id="a_node16"><a xlink:title="runtime.memclr (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="588,-533 497,-533 497,-497 588,-497 588,-533"/>
<text text-anchor="middle" x="542.5" y="-518.4" font-family="Times,serif" font-size="12.00">runtime.memclr</text>
<text text-anchor="middle" x="542.5" y="-505.4" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
</a>
</g>
</g>
<!-- N17 -->
<g id="node18" class="node"><title>N17</title>
<g id="a_node18"><a xlink:title="runtime.rawstring (0.15s)">
<polygon fill="#f8f8f8" stroke="black" points="1153.5,-758.5 1053.5,-758.5 1053.5,-711.5 1153.5,-711.5 1153.5,-758.5"/>
<text text-anchor="middle" x="1103.5" y="-744.9" font-family="Times,serif" font-size="12.00">runtime.rawstring</text>
<text text-anchor="middle" x="1103.5" y="-731.9" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
<text text-anchor="middle" x="1103.5" y="-718.9" font-family="Times,serif" font-size="12.00">of 0.15s(7.35%)</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N7 -->
<g id="edge22" class="edge"><title>N17&#45;&gt;N7</title>
<g id="a_edge22"><a xlink:title="runtime.rawstring &#45;&gt; runtime.mallocgc (0.12s)">
<path fill="none" stroke="black" d="M1103.5,-711.039C1103.5,-698.658 1103.5,-683.132 1103.5,-669.343"/>
<polygon fill="black" stroke="black" points="1107,-669.218 1103.5,-659.218 1100,-669.218 1107,-669.218"/>
</a>
</g>
<g id="a_edge22&#45;label"><a xlink:title="runtime.rawstring &#45;&gt; runtime.mallocgc (0.12s)">
<text text-anchor="middle" x="1120.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.12s</text>
</a>
</g>
</g>
<!-- N18 -->
<g id="node19" class="node"><title>N18</title>
<g id="a_node19"><a xlink:title="runtime.xchg (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="1451.5,-408 1371.5,-408 1371.5,-372 1451.5,-372 1451.5,-408"/>
<text text-anchor="middle" x="1411.5" y="-393.4" font-family="Times,serif" font-size="12.00">runtime.xchg</text>
<text text-anchor="middle" x="1411.5" y="-380.4" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
</a>
</g>
</g>
<!-- N19 -->
<g id="node20" class="node"><title>N19</title>
<g id="a_node20"><a xlink:title="sync/atomic.CompareAndSwapUint32 (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="315.5,-533 115.5,-533 115.5,-497 315.5,-497 315.5,-533"/>
<text text-anchor="middle" x="215.5" y="-518.4" font-family="Times,serif" font-size="12.00">sync/atomic.CompareAndSwapUint32</text>
<text text-anchor="middle" x="215.5" y="-505.4" font-family="Times,serif" font-size="12.00">0.03s(1.47%)</text>
</a>
</g>
</g>
<!-- N20 -->
<g id="node21" class="node"><title>N20</title>
<g id="a_node21"><a xlink:title="bufio.(*Scanner).Scan (0.30s)">
<polygon fill="#f8f8f8" stroke="black" points="750.5,-956 634.5,-956 634.5,-912 750.5,-912 750.5,-956"/>
<text text-anchor="middle" x="692.5" y="-943.2" font-family="Times,serif" font-size="11.00">bufio.(*Scanner).Scan</text>
<text text-anchor="middle" x="692.5" y="-931.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
<text text-anchor="middle" x="692.5" y="-919.2" font-family="Times,serif" font-size="11.00">of 0.30s(14.71%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N8 -->
<g id="edge23" class="edge"><title>N20&#45;&gt;N8</title>
<g id="a_edge23"><a xlink:title="bufio.(*Scanner).Scan &#45;&gt; bufio.ScanLines (0.11s)">
<path fill="none" stroke="black" d="M692.5,-911.694C692.5,-899.926 692.5,-885.018 692.5,-871.622"/>
<polygon fill="black" stroke="black" points="696,-871.291 692.5,-861.291 689,-871.291 696,-871.291"/>
</a>
</g>
<g id="a_edge23&#45;label"><a xlink:title="bufio.(*Scanner).Scan &#45;&gt; bufio.ScanLines (0.11s)">
<text text-anchor="middle" x="709.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N35 -->
<g id="node36" class="node"><title>N35</title>
<g id="a_node36"><a xlink:title="os.(*File).Read (0.17s)">
<polygon fill="#f8f8f8" stroke="black" points="405.5,-854 331.5,-854 331.5,-818 405.5,-818 405.5,-854"/>
<text text-anchor="middle" x="368.5" y="-838.6" font-family="Times,serif" font-size="8.00">os.(*File).Read</text>
<text text-anchor="middle" x="368.5" y="-829.6" font-family="Times,serif" font-size="8.00">0 of 0.17s(8.33%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N35 -->
<g id="edge13" class="edge"><title>N20&#45;&gt;N35</title>
<g id="a_edge13"><a xlink:title="bufio.(*Scanner).Scan &#45;&gt; os.(*File).Read (0.17s)">
<path fill="none" stroke="black" d="M634.201,-915.726C571.51,-897.151 473.076,-867.986 415.257,-850.854"/>
<polygon fill="black" stroke="black" points="416.227,-847.491 405.645,-848.006 414.238,-854.203 416.227,-847.491"/>
</a>
</g>
<g id="a_edge13&#45;label"><a xlink:title="bufio.(*Scanner).Scan &#45;&gt; os.(*File).Read (0.17s)">
<text text-anchor="middle" x="577.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.17s</text>
</a>
</g>
</g>
<!-- N21 -->
<g id="node22" class="node"><title>N21</title>
<g id="a_node22"><a xlink:title="main.main (1.70s)">
<polygon fill="#f8f8f8" stroke="black" points="886.5,-1051 794.5,-1051 794.5,-1007 886.5,-1007 886.5,-1051"/>
<text text-anchor="middle" x="840.5" y="-1038.2" font-family="Times,serif" font-size="11.00">main.main</text>
<text text-anchor="middle" x="840.5" y="-1026.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
<text text-anchor="middle" x="840.5" y="-1014.2" font-family="Times,serif" font-size="11.00">of 1.70s(83.33%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N20 -->
<g id="edge8" class="edge"><title>N21&#45;&gt;N20</title>
<g id="a_edge8"><a xlink:title="main.main &#45;&gt; bufio.(*Scanner).Scan (0.30s)">
<path fill="none" stroke="black" d="M806.917,-1006.9C785.439,-993.401 757.41,-975.788 734.469,-961.373"/>
<polygon fill="black" stroke="black" points="736.28,-958.377 725.951,-956.02 732.555,-964.304 736.28,-958.377"/>
</a>
</g>
<g id="a_edge8&#45;label"><a xlink:title="main.main &#45;&gt; bufio.(*Scanner).Scan (0.30s)">
<text text-anchor="middle" x="792.5" y="-977.8" font-family="Times,serif" font-size="14.00"> 0.30s</text>
</a>
</g>
</g>
<!-- N28 -->
<g id="node29" class="node"><title>N28</title>
<g id="a_node29"><a xlink:title="regexp.(*Regexp).MatchString (1.18s)">
<polygon fill="#f8f8f8" stroke="black" points="912,-954.5 769,-954.5 769,-913.5 912,-913.5 912,-954.5"/>
<text text-anchor="middle" x="840.5" y="-942.5" font-family="Times,serif" font-size="10.00">regexp.(*Regexp).MatchString</text>
<text text-anchor="middle" x="840.5" y="-931.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="840.5" y="-920.5" font-family="Times,serif" font-size="10.00">of 1.18s(57.84%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N28 -->
<g id="edge3" class="edge"><title>N21&#45;&gt;N28</title>
<g id="a_edge3"><a xlink:title="main.main &#45;&gt; regexp.(*Regexp).MatchString (1.18s)">
<path fill="none" stroke="black" stroke-width="3" d="M840.5,-1006.9C840.5,-994.549 840.5,-978.755 840.5,-965.116"/>
<polygon fill="black" stroke="black" stroke-width="3" points="844,-964.748 840.5,-954.748 837,-964.748 844,-964.748"/>
</a>
</g>
<g id="a_edge3&#45;label"><a xlink:title="main.main &#45;&gt; regexp.(*Regexp).MatchString (1.18s)">
<text text-anchor="middle" x="857.5" y="-977.8" font-family="Times,serif" font-size="14.00"> 1.18s</text>
</a>
</g>
</g>
<!-- N57 -->
<g id="node58" class="node"><title>N57</title>
<g id="a_node58"><a xlink:title="runtime.slicebytetostring (0.20s)">
<polygon fill="#f8f8f8" stroke="black" points="1032.5,-952 936.5,-952 936.5,-916 1032.5,-916 1032.5,-952"/>
<text text-anchor="middle" x="984.5" y="-936.6" font-family="Times,serif" font-size="8.00">runtime.slicebytetostring</text>
<text text-anchor="middle" x="984.5" y="-927.6" font-family="Times,serif" font-size="8.00">0 of 0.20s(9.80%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N57 -->
<g id="edge9" class="edge"><title>N21&#45;&gt;N57</title>
<g id="a_edge9"><a xlink:title="main.main &#45;&gt; runtime.slicebytetostring (0.20s)">
<path fill="none" stroke="black" d="M873.176,-1006.9C895.839,-992.26 925.999,-972.782 949.211,-957.791"/>
<polygon fill="black" stroke="black" points="951.235,-960.65 957.736,-952.285 947.437,-954.77 951.235,-960.65"/>
</a>
</g>
<g id="a_edge9&#45;label"><a xlink:title="main.main &#45;&gt; runtime.slicebytetostring (0.20s)">
<text text-anchor="middle" x="938.5" y="-977.8" font-family="Times,serif" font-size="14.00"> 0.20s</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N15 -->
<g id="edge57" class="edge"><title>N22&#45;&gt;N15</title>
<g id="a_edge57"><a xlink:title="regexp.(*bitState).reset &#45;&gt; runtime.memclr (0.02s)">
<path fill="none" stroke="black" d="M531.035,-611.812C533.33,-592.634 536.724,-564.273 539.224,-543.381"/>
<polygon fill="black" stroke="black" points="542.726,-543.57 540.439,-533.225 535.775,-542.739 542.726,-543.57"/>
</a>
</g>
<g id="a_edge57&#45;label"><a xlink:title="regexp.(*bitState).reset &#45;&gt; runtime.memclr (0.02s)">
<text text-anchor="middle" x="552.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N23&#45;&gt;N1 -->
<g id="edge7" class="edge"><title>N23&#45;&gt;N1</title>
<g id="a_edge7"><a xlink:title="regexp.(*inputString).index &#45;&gt; strings.Index (0.79s)">
<path fill="none" stroke="black" stroke-width="2" d="M840.5,-611.812C840.5,-599.72 840.5,-583.978 840.5,-568.759"/>
<polygon fill="black" stroke="black" stroke-width="2" points="844,-568.357 840.5,-558.357 837,-568.357 844,-568.357"/>
</a>
</g>
<g id="a_edge7&#45;label"><a xlink:title="regexp.(*inputString).index &#45;&gt; strings.Index (0.79s)">
<text text-anchor="middle" x="857.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.79s</text>
</a>
</g>
</g>
<!-- N24 -->
<g id="node25" class="node"><title>N24</title>
<g id="a_node25"><a xlink:title="regexp/syntax.(*Inst).MatchRunePos (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="759,-408 578,-408 578,-372 759,-372 759,-408"/>
<text text-anchor="middle" x="668.5" y="-393.2" font-family="Times,serif" font-size="11.00">regexp/syntax.(*Inst).MatchRunePos</text>
<text text-anchor="middle" x="668.5" y="-381.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N25 -->
<g id="node26" class="node"><title>N25</title>
<g id="a_node26"><a xlink:title="runtime.scanblock (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1638.5,-1138 1540.5,-1138 1540.5,-1102 1638.5,-1102 1638.5,-1138"/>
<text text-anchor="middle" x="1589.5" y="-1123.2" font-family="Times,serif" font-size="11.00">runtime.scanblock</text>
<text text-anchor="middle" x="1589.5" y="-1111.2" font-family="Times,serif" font-size="11.00">0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N26&#45;&gt;N4 -->
<g id="edge40" class="edge"><title>N26&#45;&gt;N4</title>
<g id="a_edge40"><a xlink:title="sync.(*Mutex).Unlock &#45;&gt; sync/atomic.AddUint32 (0.07s)">
<path fill="none" stroke="black" d="M394.216,-611.812C396.675,-592.634 400.311,-564.273 402.99,-543.381"/>
<polygon fill="black" stroke="black" points="406.491,-543.589 404.292,-533.225 399.548,-542.699 406.491,-543.589"/>
</a>
</g>
<g id="a_edge40&#45;label"><a xlink:title="sync.(*Mutex).Unlock &#45;&gt; sync/atomic.AddUint32 (0.07s)">
<text text-anchor="middle" x="416.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N27 -->
<g id="node28" class="node"><title>N27</title>
<g id="a_node28"><a xlink:title="os.(*File).read (0.17s)">
<polygon fill="#f8f8f8" stroke="black" points="296,-755.5 215,-755.5 215,-714.5 296,-714.5 296,-755.5"/>
<text text-anchor="middle" x="255.5" y="-743.5" font-family="Times,serif" font-size="10.00">os.(*File).read</text>
<text text-anchor="middle" x="255.5" y="-732.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="255.5" y="-721.5" font-family="Times,serif" font-size="10.00">of 0.17s(8.33%)</text>
</a>
</g>
</g>
<!-- N63 -->
<g id="node64" class="node"><title>N63</title>
<g id="a_node64"><a xlink:title="syscall.Read (0.16s)">
<polygon fill="#f8f8f8" stroke="black" points="147.5,-652 73.5,-652 73.5,-616 147.5,-616 147.5,-652"/>
<text text-anchor="middle" x="110.5" y="-636.6" font-family="Times,serif" font-size="8.00">syscall.Read</text>
<text text-anchor="middle" x="110.5" y="-627.6" font-family="Times,serif" font-size="8.00">0 of 0.16s(7.84%)</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N63 -->
<g id="edge15" class="edge"><title>N27&#45;&gt;N63</title>
<g id="a_edge15"><a xlink:title="os.(*File).read &#45;&gt; syscall.Read (0.16s)">
<path fill="none" stroke="black" d="M226.853,-714.441C203.08,-698.21 169.23,-675.099 144.166,-657.986"/>
<polygon fill="black" stroke="black" points="145.93,-654.952 135.698,-652.204 141.983,-660.733 145.93,-654.952"/>
</a>
</g>
<g id="a_edge15&#45;label"><a xlink:title="os.(*File).read &#45;&gt; syscall.Read (0.16s)">
<text text-anchor="middle" x="209.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.16s</text>
</a>
</g>
</g>
<!-- N29 -->
<g id="node30" class="node"><title>N29</title>
<g id="a_node30"><a xlink:title="regexp.(*Regexp).doExecute (1.17s)">
<polygon fill="#f8f8f8" stroke="black" points="908,-856.5 773,-856.5 773,-815.5 908,-815.5 908,-856.5"/>
<text text-anchor="middle" x="840.5" y="-844.5" font-family="Times,serif" font-size="10.00">regexp.(*Regexp).doExecute</text>
<text text-anchor="middle" x="840.5" y="-833.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="840.5" y="-822.5" font-family="Times,serif" font-size="10.00">of 1.17s(57.35%)</text>
</a>
</g>
</g>
<!-- N28&#45;&gt;N29 -->
<g id="edge4" class="edge"><title>N28&#45;&gt;N29</title>
<g id="a_edge4"><a xlink:title="regexp.(*Regexp).MatchString &#45;&gt; regexp.(*Regexp).doExecute (1.17s)">
<path fill="none" stroke="black" stroke-width="3" d="M840.5,-913.109C840.5,-899.762 840.5,-881.939 840.5,-866.896"/>
<polygon fill="black" stroke="black" stroke-width="3" points="844,-866.537 840.5,-856.537 837,-866.537 844,-866.537"/>
</a>
</g>
<g id="a_edge4&#45;label"><a xlink:title="regexp.(*Regexp).MatchString &#45;&gt; regexp.(*Regexp).doExecute (1.17s)">
<text text-anchor="middle" x="857.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 1.17s</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N5 -->
<g id="edge24" class="edge"><title>N29&#45;&gt;N5</title>
<g id="a_edge24"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*Regexp).put (0.10s)">
<path fill="none" stroke="black" d="M781.23,-815.441C734.306,-799.956 668.409,-778.21 617.421,-761.384"/>
<polygon fill="black" stroke="black" points="618.35,-758.005 607.757,-758.195 616.157,-764.652 618.35,-758.005"/>
</a>
</g>
<g id="a_edge24&#45;label"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*Regexp).put (0.10s)">
<text text-anchor="middle" x="725.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.10s</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N11 -->
<g id="edge21" class="edge"><title>N29&#45;&gt;N11</title>
<g id="a_edge21"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*Regexp).get (0.13s)">
<path fill="none" stroke="black" d="M809.877,-815.441C786.89,-800.759 755.09,-780.448 729.399,-764.038"/>
<polygon fill="black" stroke="black" points="731.253,-761.07 720.942,-758.637 727.485,-766.97 731.253,-761.07"/>
</a>
</g>
<g id="a_edge21&#45;label"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*Regexp).get (0.13s)">
<text text-anchor="middle" x="789.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.13s</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N13 -->
<g id="edge5" class="edge"><title>N29&#45;&gt;N13</title>
<g id="a_edge5"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*machine).backtrack (0.93s)">
<path fill="none" stroke="black" stroke-width="3" d="M840.5,-815.441C840.5,-802.163 840.5,-784.282 840.5,-768.846"/>
<polygon fill="black" stroke="black" stroke-width="3" points="844,-768.637 840.5,-758.637 837,-768.637 844,-768.637"/>
</a>
</g>
<g id="a_edge5&#45;label"><a xlink:title="regexp.(*Regexp).doExecute &#45;&gt; regexp.(*machine).backtrack (0.93s)">
<text text-anchor="middle" x="857.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.93s</text>
</a>
</g>
</g>
<!-- N36 -->
<g id="node37" class="node"><title>N36</title>
<g id="a_node37"><a xlink:title="regexp/syntax.(*Inst).MatchRune (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="730.5,-533 606.5,-533 606.5,-497 730.5,-497 730.5,-533"/>
<text text-anchor="middle" x="668.5" y="-517.6" font-family="Times,serif" font-size="8.00">regexp/syntax.(*Inst).MatchRune</text>
<text text-anchor="middle" x="668.5" y="-508.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N36 -->
<g id="edge58" class="edge"><title>N30&#45;&gt;N36</title>
<g id="a_edge58"><a xlink:title="regexp.(*machine).tryBacktrack &#45;&gt; regexp/syntax.(*Inst).MatchRune (0.02s)">
<path fill="none" stroke="black" d="M678.491,-613.417C676.528,-594.273 673.521,-564.953 671.318,-543.479"/>
<polygon fill="black" stroke="black" points="674.782,-542.945 670.28,-533.354 667.819,-543.659 674.782,-542.945"/>
</a>
</g>
<g id="a_edge58&#45;label"><a xlink:title="regexp.(*machine).tryBacktrack &#45;&gt; regexp/syntax.(*Inst).MatchRune (0.02s)">
<text text-anchor="middle" x="693.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N31 -->
<g id="node32" class="node"><title>N31</title>
<g id="a_node32"><a xlink:title="runtime.gosweepone (0.09s)">
<polygon fill="#f8f8f8" stroke="black" points="1006,-1049.5 905,-1049.5 905,-1008.5 1006,-1008.5 1006,-1049.5"/>
<text text-anchor="middle" x="955.5" y="-1037.5" font-family="Times,serif" font-size="10.00">runtime.gosweepone</text>
<text text-anchor="middle" x="955.5" y="-1026.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="955.5" y="-1015.5" font-family="Times,serif" font-size="10.00">of 0.09s(4.41%)</text>
</a>
</g>
</g>
<!-- N31&#45;&gt;N61 -->
<g id="edge27" class="edge"><title>N31&#45;&gt;N61</title>
<g id="a_edge27"><a xlink:title="runtime.gosweepone &#45;&gt; runtime.systemstack (0.08s)">
<path fill="none" stroke="black" d="M1006.19,-1018.2C1074.19,-1003.58 1186.5,-973.585 1186.5,-935 1186.5,-935 1186.5,-935 1186.5,-633 1186.5,-602.174 1186.5,-566.78 1186.5,-543.066"/>
<polygon fill="black" stroke="black" points="1190,-543.051 1186.5,-533.051 1183,-543.051 1190,-543.051"/>
</a>
</g>
<g id="a_edge27&#45;label"><a xlink:title="runtime.gosweepone &#45;&gt; runtime.systemstack (0.08s)">
<text text-anchor="middle" x="1203.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.08s</text>
</a>
</g>
</g>
<!-- N32 -->
<g id="node33" class="node"><title>N32</title>
<g id="a_node33"><a xlink:title="runtime.heapBitsSweepSpan (0.06s)">
<polygon fill="#f8f8f8" stroke="black" points="1253.5,-128 1119.5,-128 1119.5,-87 1253.5,-87 1253.5,-128"/>
<text text-anchor="middle" x="1186.5" y="-116" font-family="Times,serif" font-size="10.00">runtime.heapBitsSweepSpan</text>
<text text-anchor="middle" x="1186.5" y="-105" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="1186.5" y="-94" font-family="Times,serif" font-size="10.00">of 0.06s(2.94%)</text>
</a>
</g>
</g>
<!-- N32&#45;&gt;N9 -->
<g id="edge46" class="edge"><title>N32&#45;&gt;N9</title>
<g id="a_edge46"><a xlink:title="runtime.heapBitsSweepSpan &#45;&gt; runtime.mSpan_Sweep.func1 (0.05s)">
<path fill="none" stroke="black" d="M1186.5,-86.6449C1186.5,-74.7484 1186.5,-59.4516 1186.5,-46.4146"/>
<polygon fill="black" stroke="black" points="1190,-46.1192 1186.5,-36.1193 1183,-46.1193 1190,-46.1192"/>
</a>
</g>
<g id="a_edge46&#45;label"><a xlink:title="runtime.heapBitsSweepSpan &#45;&gt; runtime.mSpan_Sweep.func1 (0.05s)">
<text text-anchor="middle" x="1203.5" y="-57.8" font-family="Times,serif" font-size="14.00"> 0.05s</text>
</a>
</g>
</g>
<!-- N33 -->
<g id="node34" class="node"><title>N33</title>
<g id="a_node34"><a xlink:title="runtime.mHeap_Alloc_m (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1123,-307.5 1002,-307.5 1002,-266.5 1123,-266.5 1123,-307.5"/>
<text text-anchor="middle" x="1062.5" y="-295.5" font-family="Times,serif" font-size="10.00">runtime.mHeap_Alloc_m</text>
<text text-anchor="middle" x="1062.5" y="-284.5" font-family="Times,serif" font-size="10.00">0.01s(0.49%)</text>
<text text-anchor="middle" x="1062.5" y="-273.5" font-family="Times,serif" font-size="10.00">of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N19 -->
<g id="edge56" class="edge"><title>N34&#45;&gt;N19</title>
<g id="a_edge56"><a xlink:title="sync.(*Mutex).Lock &#45;&gt; sync/atomic.CompareAndSwapUint32 (0.03s)">
<path fill="none" stroke="black" d="M257.131,-613.417C248.838,-594.011 236.076,-564.148 226.868,-542.601"/>
<polygon fill="black" stroke="black" points="230.065,-541.174 222.916,-533.354 223.628,-543.925 230.065,-541.174"/>
</a>
</g>
<g id="a_edge56&#45;label"><a xlink:title="sync.(*Mutex).Lock &#45;&gt; sync/atomic.CompareAndSwapUint32 (0.03s)">
<text text-anchor="middle" x="263.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N35&#45;&gt;N27 -->
<g id="edge14" class="edge"><title>N35&#45;&gt;N27</title>
<g id="a_edge14"><a xlink:title="os.(*File).Read &#45;&gt; os.(*File).read (0.17s)">
<path fill="none" stroke="black" d="M349.075,-817.981C331.582,-802.656 305.602,-779.895 285.452,-762.241"/>
<polygon fill="black" stroke="black" points="287.597,-759.467 277.769,-755.51 282.985,-764.733 287.597,-759.467"/>
</a>
</g>
<g id="a_edge14&#45;label"><a xlink:title="os.(*File).Read &#45;&gt; os.(*File).read (0.17s)">
<text text-anchor="middle" x="336.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.17s</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N24 -->
<g id="edge59" class="edge"><title>N36&#45;&gt;N24</title>
<g id="a_edge59"><a xlink:title="regexp/syntax.(*Inst).MatchRune &#45;&gt; regexp/syntax.(*Inst).MatchRunePos (0.02s)">
<path fill="none" stroke="black" d="M668.5,-496.897C668.5,-476.633 668.5,-442.6 668.5,-418.593"/>
<polygon fill="black" stroke="black" points="672,-418.354 668.5,-408.354 665,-418.354 672,-418.354"/>
</a>
</g>
<g id="a_edge59&#45;label"><a xlink:title="regexp/syntax.(*Inst).MatchRune &#45;&gt; regexp/syntax.(*Inst).MatchRunePos (0.02s)">
<text text-anchor="middle" x="685.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N37 -->
<g id="node38" class="node"><title>N37</title>
<g id="a_node38"><a xlink:title="runtime.bgsweep (0.09s)">
<polygon fill="#f8f8f8" stroke="black" points="977.5,-1138 903.5,-1138 903.5,-1102 977.5,-1102 977.5,-1138"/>
<text text-anchor="middle" x="940.5" y="-1122.6" font-family="Times,serif" font-size="8.00">runtime.bgsweep</text>
<text text-anchor="middle" x="940.5" y="-1113.6" font-family="Times,serif" font-size="8.00">0 of 0.09s(4.41%)</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N31 -->
<g id="edge25" class="edge"><title>N37&#45;&gt;N31</title>
<g id="a_edge25"><a xlink:title="runtime.bgsweep &#45;&gt; runtime.gosweepone (0.09s)">
<path fill="none" stroke="black" d="M943.392,-1101.84C945.4,-1089.93 948.128,-1073.74 950.486,-1059.75"/>
<polygon fill="black" stroke="black" points="953.988,-1060.03 952.199,-1049.59 947.086,-1058.87 953.988,-1060.03"/>
</a>
</g>
<g id="a_edge25&#45;label"><a xlink:title="runtime.bgsweep &#45;&gt; runtime.gosweepone (0.09s)">
<text text-anchor="middle" x="966.5" y="-1072.8" font-family="Times,serif" font-size="14.00"> 0.09s</text>
</a>
</g>
</g>
<!-- N38 -->
<g id="node39" class="node"><title>N38</title>
<g id="a_node39"><a xlink:title="runtime.futexsleep (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1353,-408 1276,-408 1276,-372 1353,-372 1353,-408"/>
<text text-anchor="middle" x="1314.5" y="-392.6" font-family="Times,serif" font-size="8.00">runtime.futexsleep</text>
<text text-anchor="middle" x="1314.5" y="-383.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N38&#45;&gt;N3 -->
<g id="edge32" class="edge"><title>N38&#45;&gt;N3</title>
<g id="a_edge32"><a xlink:title="runtime.futexsleep &#45;&gt; runtime.futex (0.07s)">
<path fill="none" stroke="black" d="M1331.29,-371.867C1346.35,-356.502 1368.73,-333.679 1386.33,-315.719"/>
<polygon fill="black" stroke="black" points="1389.05,-317.947 1393.55,-308.355 1384.05,-313.047 1389.05,-317.947"/>
</a>
</g>
<g id="a_edge32&#45;label"><a xlink:title="runtime.futexsleep &#45;&gt; runtime.futex (0.07s)">
<text text-anchor="middle" x="1393.5" y="-329.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N39 -->
<g id="node40" class="node"><title>N39</title>
<g id="a_node40"><a xlink:title="runtime.futexwakeup (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1555,-408 1470,-408 1470,-372 1555,-372 1555,-408"/>
<text text-anchor="middle" x="1512.5" y="-392.6" font-family="Times,serif" font-size="8.00">runtime.futexwakeup</text>
<text text-anchor="middle" x="1512.5" y="-383.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N3 -->
<g id="edge33" class="edge"><title>N39&#45;&gt;N3</title>
<g id="a_edge33"><a xlink:title="runtime.futexwakeup &#45;&gt; runtime.futex (0.07s)">
<path fill="none" stroke="black" d="M1495.71,-371.867C1480.65,-356.502 1458.27,-333.679 1440.67,-315.719"/>
<polygon fill="black" stroke="black" points="1442.95,-313.047 1433.45,-308.355 1437.95,-317.947 1442.95,-313.047"/>
</a>
</g>
<g id="a_edge33&#45;label"><a xlink:title="runtime.futexwakeup &#45;&gt; runtime.futex (0.07s)">
<text text-anchor="middle" x="1480.5" y="-329.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N59 -->
<g id="edge61" class="edge"><title>N40&#45;&gt;N59</title>
<g id="a_edge61"><a xlink:title="runtime.gcstopm &#45;&gt; runtime.stopm (0.02s)">
<path fill="none" stroke="black" d="M1257.37,-716.813C1261.77,-705.105 1268.4,-689.519 1276.5,-677 1280.3,-671.121 1284.93,-665.262 1289.63,-659.868"/>
<polygon fill="black" stroke="black" points="1292.34,-662.098 1296.48,-652.348 1287.16,-657.384 1292.34,-662.098"/>
</a>
</g>
<g id="a_edge61&#45;label"><a xlink:title="runtime.gcstopm &#45;&gt; runtime.stopm (0.02s)">
<text text-anchor="middle" x="1293.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N41 -->
<g id="node42" class="node"><title>N41</title>
<g id="a_node42"><a xlink:title="runtime.goexit (1.80s)">
<polygon fill="#f8f8f8" stroke="black" points="879.5,-1281 801.5,-1281 801.5,-1245 879.5,-1245 879.5,-1281"/>
<text text-anchor="middle" x="840.5" y="-1265.6" font-family="Times,serif" font-size="8.00">runtime.goexit</text>
<text text-anchor="middle" x="840.5" y="-1256.6" font-family="Times,serif" font-size="8.00">0 of 1.80s(88.24%)</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N37 -->
<g id="edge26" class="edge"><title>N41&#45;&gt;N37</title>
<g id="a_edge26"><a xlink:title="runtime.goexit &#45;&gt; runtime.bgsweep (0.09s)">
<path fill="none" stroke="black" d="M852.562,-1244.99C869.981,-1220.43 902.301,-1174.86 922.534,-1146.33"/>
<polygon fill="black" stroke="black" points="925.465,-1148.25 928.395,-1138.07 919.755,-1144.2 925.465,-1148.25"/>
</a>
</g>
<g id="a_edge26&#45;label"><a xlink:title="runtime.goexit &#45;&gt; runtime.bgsweep (0.09s)">
<text text-anchor="middle" x="931.5" y="-1159.8" font-family="Times,serif" font-size="14.00"> 0.09s</text>
</a>
</g>
</g>
<!-- N48 -->
<g id="node49" class="node"><title>N48</title>
<g id="a_node49"><a xlink:title="runtime.main (1.70s)">
<polygon fill="#f8f8f8" stroke="black" points="879.5,-1138 801.5,-1138 801.5,-1102 879.5,-1102 879.5,-1138"/>
<text text-anchor="middle" x="840.5" y="-1122.6" font-family="Times,serif" font-size="8.00">runtime.main</text>
<text text-anchor="middle" x="840.5" y="-1113.6" font-family="Times,serif" font-size="8.00">0 of 1.70s(83.33%)</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N48 -->
<g id="edge1" class="edge"><title>N41&#45;&gt;N48</title>
<g id="a_edge1"><a xlink:title="runtime.goexit &#45;&gt; runtime.main (1.70s)">
<path fill="none" stroke="black" stroke-width="5" d="M840.5,-1244.99C840.5,-1220.96 840.5,-1176.81 840.5,-1148.2"/>
<polygon fill="black" stroke="black" stroke-width="5" points="844.875,-1148.07 840.5,-1138.07 836.125,-1148.07 844.875,-1148.07"/>
</a>
</g>
<g id="a_edge1&#45;label"><a xlink:title="runtime.goexit &#45;&gt; runtime.main (1.70s)">
<text text-anchor="middle" x="857.5" y="-1159.8" font-family="Times,serif" font-size="14.00"> 1.70s</text>
</a>
</g>
</g>
<!-- N42 -->
<g id="node43" class="node"><title>N42</title>
<g id="a_node43"><a xlink:title="runtime.goschedImpl (0.20s)">
<polygon fill="#f8f8f8" stroke="black" points="1432.5,-1047 1348.5,-1047 1348.5,-1011 1432.5,-1011 1432.5,-1047"/>
<text text-anchor="middle" x="1390.5" y="-1031.6" font-family="Times,serif" font-size="8.00">runtime.goschedImpl</text>
<text text-anchor="middle" x="1390.5" y="-1022.6" font-family="Times,serif" font-size="8.00">0 of 0.20s(9.80%)</text>
</a>
</g>
</g>
<!-- N56 -->
<g id="node57" class="node"><title>N56</title>
<g id="a_node57"><a xlink:title="runtime.schedule (0.23s)">
<polygon fill="#f8f8f8" stroke="black" points="1429.5,-952 1351.5,-952 1351.5,-916 1429.5,-916 1429.5,-952"/>
<text text-anchor="middle" x="1390.5" y="-936.6" font-family="Times,serif" font-size="8.00">runtime.schedule</text>
<text text-anchor="middle" x="1390.5" y="-927.6" font-family="Times,serif" font-size="8.00">0 of 0.23s(11.27%)</text>
</a>
</g>
</g>
<!-- N42&#45;&gt;N56 -->
<g id="edge10" class="edge"><title>N42&#45;&gt;N56</title>
<g id="a_edge10"><a xlink:title="runtime.goschedImpl &#45;&gt; runtime.schedule (0.20s)">
<path fill="none" stroke="black" d="M1390.5,-1010.94C1390.5,-997.394 1390.5,-978.18 1390.5,-962.469"/>
<polygon fill="black" stroke="black" points="1394,-962.264 1390.5,-952.264 1387,-962.264 1394,-962.264"/>
</a>
</g>
<g id="a_edge10&#45;label"><a xlink:title="runtime.goschedImpl &#45;&gt; runtime.schedule (0.20s)">
<text text-anchor="middle" x="1407.5" y="-977.8" font-family="Times,serif" font-size="14.00"> 0.20s</text>
</a>
</g>
</g>
<!-- N43 -->
<g id="node44" class="node"><title>N43</title>
<g id="a_node44"><a xlink:title="runtime.gosched_m (0.20s)">
<polygon fill="#f8f8f8" stroke="black" points="1430,-1138 1351,-1138 1351,-1102 1430,-1102 1430,-1138"/>
<text text-anchor="middle" x="1390.5" y="-1122.6" font-family="Times,serif" font-size="8.00">runtime.gosched_m</text>
<text text-anchor="middle" x="1390.5" y="-1113.6" font-family="Times,serif" font-size="8.00">0 of 0.20s(9.80%)</text>
</a>
</g>
</g>
<!-- N43&#45;&gt;N42 -->
<g id="edge11" class="edge"><title>N43&#45;&gt;N42</title>
<g id="a_edge11"><a xlink:title="runtime.gosched_m &#45;&gt; runtime.goschedImpl (0.20s)">
<path fill="none" stroke="black" d="M1390.5,-1101.84C1390.5,-1089.28 1390.5,-1071.98 1390.5,-1057.5"/>
<polygon fill="black" stroke="black" points="1394,-1057.11 1390.5,-1047.11 1387,-1057.11 1394,-1057.11"/>
</a>
</g>
<g id="a_edge11&#45;label"><a xlink:title="runtime.gosched_m &#45;&gt; runtime.goschedImpl (0.20s)">
<text text-anchor="middle" x="1407.5" y="-1072.8" font-family="Times,serif" font-size="14.00"> 0.20s</text>
</a>
</g>
</g>
<!-- N44 -->
<g id="node45" class="node"><title>N44</title>
<g id="a_node45"><a xlink:title="runtime.gosweepone.func1 (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1238,-408 1135,-408 1135,-372 1238,-372 1238,-408"/>
<text text-anchor="middle" x="1186.5" y="-392.6" font-family="Times,serif" font-size="8.00">runtime.gosweepone.func1</text>
<text text-anchor="middle" x="1186.5" y="-383.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N60 -->
<g id="node61" class="node"><title>N60</title>
<g id="a_node61"><a xlink:title="runtime.sweepone (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1224,-305 1149,-305 1149,-269 1224,-269 1224,-305"/>
<text text-anchor="middle" x="1186.5" y="-289.6" font-family="Times,serif" font-size="8.00">runtime.sweepone</text>
<text text-anchor="middle" x="1186.5" y="-280.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N44&#45;&gt;N60 -->
<g id="edge34" class="edge"><title>N44&#45;&gt;N60</title>
<g id="a_edge34"><a xlink:title="runtime.gosweepone.func1 &#45;&gt; runtime.sweepone (0.07s)">
<path fill="none" stroke="black" d="M1186.5,-371.867C1186.5,-356.414 1186.5,-333.416 1186.5,-315.409"/>
<polygon fill="black" stroke="black" points="1190,-315.217 1186.5,-305.217 1183,-315.217 1190,-315.217"/>
</a>
</g>
<g id="a_edge34&#45;label"><a xlink:title="runtime.gosweepone.func1 &#45;&gt; runtime.sweepone (0.07s)">
<text text-anchor="middle" x="1203.5" y="-329.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N45&#45;&gt;N18 -->
<g id="edge62" class="edge"><title>N45&#45;&gt;N18</title>
<g id="a_edge62"><a xlink:title="runtime.lock &#45;&gt; runtime.xchg (0.02s)">
<path fill="none" stroke="black" d="M1413.4,-716.991C1413.08,-661.674 1412.06,-486.536 1411.66,-418.449"/>
<polygon fill="black" stroke="black" points="1415.16,-418.091 1411.6,-408.112 1408.16,-418.132 1415.16,-418.091"/>
</a>
</g>
<g id="a_edge62&#45;label"><a xlink:title="runtime.lock &#45;&gt; runtime.xchg (0.02s)">
<text text-anchor="middle" x="1430.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N46 -->
<g id="node47" class="node"><title>N46</title>
<g id="a_node47"><a xlink:title="runtime.mHeap_Alloc.func1 (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1117,-408 1008,-408 1008,-372 1117,-372 1117,-408"/>
<text text-anchor="middle" x="1062.5" y="-392.6" font-family="Times,serif" font-size="8.00">runtime.mHeap_Alloc.func1</text>
<text text-anchor="middle" x="1062.5" y="-383.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N33 -->
<g id="edge63" class="edge"><title>N46&#45;&gt;N33</title>
<g id="a_edge63"><a xlink:title="runtime.mHeap_Alloc.func1 &#45;&gt; runtime.mHeap_Alloc_m (0.02s)">
<path fill="none" stroke="black" d="M1062.5,-371.867C1062.5,-357.139 1062.5,-335.557 1062.5,-317.976"/>
<polygon fill="black" stroke="black" points="1066,-317.642 1062.5,-307.642 1059,-317.642 1066,-317.642"/>
</a>
</g>
<g id="a_edge63&#45;label"><a xlink:title="runtime.mHeap_Alloc.func1 &#45;&gt; runtime.mHeap_Alloc_m (0.02s)">
<text text-anchor="middle" x="1079.5" y="-329.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N47 -->
<g id="node48" class="node"><title>N47</title>
<g id="a_node48"><a xlink:title="runtime.mSpan_Sweep (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1232,-215 1141,-215 1141,-179 1232,-179 1232,-215"/>
<text text-anchor="middle" x="1186.5" y="-199.6" font-family="Times,serif" font-size="8.00">runtime.mSpan_Sweep</text>
<text text-anchor="middle" x="1186.5" y="-190.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N47&#45;&gt;N32 -->
<g id="edge44" class="edge"><title>N47&#45;&gt;N32</title>
<g id="a_edge44"><a xlink:title="runtime.mSpan_Sweep &#45;&gt; runtime.heapBitsSweepSpan (0.06s)">
<path fill="none" stroke="black" d="M1186.5,-178.713C1186.5,-167.237 1186.5,-151.871 1186.5,-138.44"/>
<polygon fill="black" stroke="black" points="1190,-138.195 1186.5,-128.195 1183,-138.195 1190,-138.195"/>
</a>
</g>
<g id="a_edge44&#45;label"><a xlink:title="runtime.mSpan_Sweep &#45;&gt; runtime.heapBitsSweepSpan (0.06s)">
<text text-anchor="middle" x="1203.5" y="-149.8" font-family="Times,serif" font-size="14.00"> 0.06s</text>
</a>
</g>
</g>
<!-- N48&#45;&gt;N21 -->
<g id="edge2" class="edge"><title>N48&#45;&gt;N21</title>
<g id="a_edge2"><a xlink:title="runtime.main &#45;&gt; main.main (1.70s)">
<path fill="none" stroke="black" stroke-width="5" d="M840.5,-1101.84C840.5,-1090.44 840.5,-1075.13 840.5,-1061.58"/>
<polygon fill="black" stroke="black" stroke-width="5" points="844.875,-1061.19 840.5,-1051.19 836.125,-1061.19 844.875,-1061.19"/>
</a>
</g>
<g id="a_edge2&#45;label"><a xlink:title="runtime.main &#45;&gt; main.main (1.70s)">
<text text-anchor="middle" x="857.5" y="-1072.8" font-family="Times,serif" font-size="14.00"> 1.70s</text>
</a>
</g>
</g>
<!-- N49 -->
<g id="node50" class="node"><title>N49</title>
<g id="a_node50"><a xlink:title="runtime.markroot (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="1626.5,-1281 1552.5,-1281 1552.5,-1245 1626.5,-1245 1626.5,-1281"/>
<text text-anchor="middle" x="1589.5" y="-1265.6" font-family="Times,serif" font-size="8.00">runtime.markroot</text>
<text text-anchor="middle" x="1589.5" y="-1256.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(0.98%)</text>
</a>
</g>
</g>
<!-- N49&#45;&gt;N25 -->
<g id="edge64" class="edge"><title>N49&#45;&gt;N25</title>
<g id="a_edge64"><a xlink:title="runtime.markroot &#45;&gt; runtime.scanblock (0.02s)">
<path fill="none" stroke="black" d="M1589.5,-1244.99C1589.5,-1220.96 1589.5,-1176.81 1589.5,-1148.2"/>
<polygon fill="black" stroke="black" points="1593,-1148.07 1589.5,-1138.07 1586,-1148.07 1593,-1148.07"/>
</a>
</g>
<g id="a_edge64&#45;label"><a xlink:title="runtime.markroot &#45;&gt; runtime.scanblock (0.02s)">
<text text-anchor="middle" x="1606.5" y="-1159.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N50 -->
<g id="node51" class="node"><title>N50</title>
<g id="a_node51"><a xlink:title="runtime.mcall (0.23s)">
<polygon fill="#f8f8f8" stroke="black" points="1429.5,-1281 1351.5,-1281 1351.5,-1245 1429.5,-1245 1429.5,-1281"/>
<text text-anchor="middle" x="1390.5" y="-1265.6" font-family="Times,serif" font-size="8.00">runtime.mcall</text>
<text text-anchor="middle" x="1390.5" y="-1256.6" font-family="Times,serif" font-size="8.00">0 of 0.23s(11.27%)</text>
</a>
</g>
</g>
<!-- N50&#45;&gt;N43 -->
<g id="edge12" class="edge"><title>N50&#45;&gt;N43</title>
<g id="a_edge12"><a xlink:title="runtime.mcall &#45;&gt; runtime.gosched_m (0.20s)">
<path fill="none" stroke="black" d="M1390.5,-1244.99C1390.5,-1220.96 1390.5,-1176.81 1390.5,-1148.2"/>
<polygon fill="black" stroke="black" points="1394,-1148.07 1390.5,-1138.07 1387,-1148.07 1394,-1148.07"/>
</a>
</g>
<g id="a_edge12&#45;label"><a xlink:title="runtime.mcall &#45;&gt; runtime.gosched_m (0.20s)">
<text text-anchor="middle" x="1407.5" y="-1159.8" font-family="Times,serif" font-size="14.00"> 0.20s</text>
</a>
</g>
</g>
<!-- N53 -->
<g id="node54" class="node"><title>N53</title>
<g id="a_node54"><a xlink:title="runtime.park_m (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="1522.5,-1138 1448.5,-1138 1448.5,-1102 1522.5,-1102 1522.5,-1138"/>
<text text-anchor="middle" x="1485.5" y="-1122.6" font-family="Times,serif" font-size="8.00">runtime.park_m</text>
<text text-anchor="middle" x="1485.5" y="-1113.6" font-family="Times,serif" font-size="8.00">0 of 0.03s(1.47%)</text>
</a>
</g>
</g>
<!-- N50&#45;&gt;N53 -->
<g id="edge54" class="edge"><title>N50&#45;&gt;N53</title>
<g id="a_edge54"><a xlink:title="runtime.mcall &#45;&gt; runtime.park_m (0.03s)">
<path fill="none" stroke="black" d="M1401.96,-1244.99C1418.44,-1220.54 1448.95,-1175.25 1468.18,-1146.7"/>
<polygon fill="black" stroke="black" points="1471.32,-1148.32 1474,-1138.07 1465.51,-1144.41 1471.32,-1148.32"/>
</a>
</g>
<g id="a_edge54&#45;label"><a xlink:title="runtime.mcall &#45;&gt; runtime.park_m (0.03s)">
<text text-anchor="middle" x="1477.5" y="-1159.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N51 -->
<g id="node52" class="node"><title>N51</title>
<g id="a_node52"><a xlink:title="runtime.notesleep (0.07s)">
<polygon fill="#f8f8f8" stroke="black" points="1351.5,-533 1277.5,-533 1277.5,-497 1351.5,-497 1351.5,-533"/>
<text text-anchor="middle" x="1314.5" y="-517.6" font-family="Times,serif" font-size="8.00">runtime.notesleep</text>
<text text-anchor="middle" x="1314.5" y="-508.6" font-family="Times,serif" font-size="8.00">0 of 0.07s(3.43%)</text>
</a>
</g>
</g>
<!-- N51&#45;&gt;N38 -->
<g id="edge35" class="edge"><title>N51&#45;&gt;N38</title>
<g id="a_edge35"><a xlink:title="runtime.notesleep &#45;&gt; runtime.futexsleep (0.07s)">
<path fill="none" stroke="black" d="M1314.5,-496.897C1314.5,-476.633 1314.5,-442.6 1314.5,-418.593"/>
<polygon fill="black" stroke="black" points="1318,-418.354 1314.5,-408.354 1311,-418.354 1318,-418.354"/>
</a>
</g>
<g id="a_edge35&#45;label"><a xlink:title="runtime.notesleep &#45;&gt; runtime.futexsleep (0.07s)">
<text text-anchor="middle" x="1331.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N52 -->
<g id="node53" class="node"><title>N52</title>
<g id="a_node53"><a xlink:title="runtime.notewakeup (0.08s)">
<polygon fill="#f8f8f8" stroke="black" points="1550.5,-533 1468.5,-533 1468.5,-497 1550.5,-497 1550.5,-533"/>
<text text-anchor="middle" x="1509.5" y="-517.6" font-family="Times,serif" font-size="8.00">runtime.notewakeup</text>
<text text-anchor="middle" x="1509.5" y="-508.6" font-family="Times,serif" font-size="8.00">0 of 0.08s(3.92%)</text>
</a>
</g>
</g>
<!-- N52&#45;&gt;N18 -->
<g id="edge68" class="edge"><title>N52&#45;&gt;N18</title>
<g id="a_edge68"><a xlink:title="runtime.notewakeup &#45;&gt; runtime.xchg (0.01s)">
<path fill="none" stroke="black" d="M1495.87,-496.897C1479.22,-475.994 1450.89,-440.44 1431.7,-416.353"/>
<polygon fill="black" stroke="black" points="1434.3,-413.994 1425.33,-408.354 1428.82,-418.356 1434.3,-413.994"/>
</a>
</g>
<g id="a_edge68&#45;label"><a xlink:title="runtime.notewakeup &#45;&gt; runtime.xchg (0.01s)">
<text text-anchor="middle" x="1477.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.01s</text>
</a>
</g>
</g>
<!-- N52&#45;&gt;N39 -->
<g id="edge36" class="edge"><title>N52&#45;&gt;N39</title>
<g id="a_edge36"><a xlink:title="runtime.notewakeup &#45;&gt; runtime.futexwakeup (0.07s)">
<path fill="none" stroke="black" d="M1509.92,-496.897C1510.41,-476.633 1511.24,-442.6 1511.83,-418.593"/>
<polygon fill="black" stroke="black" points="1515.33,-418.436 1512.08,-408.354 1508.33,-418.266 1515.33,-418.436"/>
</a>
</g>
<g id="a_edge36&#45;label"><a xlink:title="runtime.notewakeup &#45;&gt; runtime.futexwakeup (0.07s)">
<text text-anchor="middle" x="1527.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N53&#45;&gt;N56 -->
<g id="edge55" class="edge"><title>N53&#45;&gt;N56</title>
<g id="a_edge55"><a xlink:title="runtime.park_m &#45;&gt; runtime.schedule (0.03s)">
<path fill="none" stroke="black" d="M1481.17,-1101.88C1473.53,-1073.65 1455.81,-1016.25 1428.5,-974 1425.28,-969.016 1421.35,-964.13 1417.26,-959.596"/>
<polygon fill="black" stroke="black" points="1419.75,-957.141 1410.31,-952.339 1414.7,-961.982 1419.75,-957.141"/>
</a>
</g>
<g id="a_edge55&#45;label"><a xlink:title="runtime.park_m &#45;&gt; runtime.schedule (0.03s)">
<text text-anchor="middle" x="1482.5" y="-1025.3" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N54 -->
<g id="node55" class="node"><title>N54</title>
<g id="a_node55"><a xlink:title="runtime.rawstringtmp (0.15s)">
<polygon fill="#f8f8f8" stroke="black" points="1146.5,-854 1060.5,-854 1060.5,-818 1146.5,-818 1146.5,-854"/>
<text text-anchor="middle" x="1103.5" y="-838.6" font-family="Times,serif" font-size="8.00">runtime.rawstringtmp</text>
<text text-anchor="middle" x="1103.5" y="-829.6" font-family="Times,serif" font-size="8.00">0 of 0.15s(7.35%)</text>
</a>
</g>
</g>
<!-- N54&#45;&gt;N17 -->
<g id="edge18" class="edge"><title>N54&#45;&gt;N17</title>
<g id="a_edge18"><a xlink:title="runtime.rawstringtmp &#45;&gt; runtime.rawstring (0.15s)">
<path fill="none" stroke="black" d="M1103.5,-817.756C1103.5,-804.304 1103.5,-785.224 1103.5,-768.879"/>
<polygon fill="black" stroke="black" points="1107,-768.619 1103.5,-758.62 1100,-768.62 1107,-768.619"/>
</a>
</g>
<g id="a_edge18&#45;label"><a xlink:title="runtime.rawstringtmp &#45;&gt; runtime.rawstring (0.15s)">
<text text-anchor="middle" x="1120.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.15s</text>
</a>
</g>
</g>
<!-- N55 -->
<g id="node56" class="node"><title>N55</title>
<g id="a_node56"><a xlink:title="runtime.resetspinning (0.08s)">
<polygon fill="#f8f8f8" stroke="black" points="1552.5,-854 1466.5,-854 1466.5,-818 1552.5,-818 1552.5,-854"/>
<text text-anchor="middle" x="1509.5" y="-838.6" font-family="Times,serif" font-size="8.00">runtime.resetspinning</text>
<text text-anchor="middle" x="1509.5" y="-829.6" font-family="Times,serif" font-size="8.00">0 of 0.08s(3.92%)</text>
</a>
</g>
</g>
<!-- N62 -->
<g id="node63" class="node"><title>N62</title>
<g id="a_node63"><a xlink:title="runtime.wakep (0.08s)">
<polygon fill="#f8f8f8" stroke="black" points="1546.5,-753 1472.5,-753 1472.5,-717 1546.5,-717 1546.5,-753"/>
<text text-anchor="middle" x="1509.5" y="-737.6" font-family="Times,serif" font-size="8.00">runtime.wakep</text>
<text text-anchor="middle" x="1509.5" y="-728.6" font-family="Times,serif" font-size="8.00">0 of 0.08s(3.92%)</text>
</a>
</g>
</g>
<!-- N55&#45;&gt;N62 -->
<g id="edge28" class="edge"><title>N55&#45;&gt;N62</title>
<g id="a_edge28"><a xlink:title="runtime.resetspinning &#45;&gt; runtime.wakep (0.08s)">
<path fill="none" stroke="black" d="M1509.5,-817.756C1509.5,-802.708 1509.5,-780.616 1509.5,-763.19"/>
<polygon fill="black" stroke="black" points="1513,-763.047 1509.5,-753.047 1506,-763.047 1513,-763.047"/>
</a>
</g>
<g id="a_edge28&#45;label"><a xlink:title="runtime.resetspinning &#45;&gt; runtime.wakep (0.08s)">
<text text-anchor="middle" x="1526.5" y="-781.8" font-family="Times,serif" font-size="14.00"> 0.08s</text>
</a>
</g>
</g>
<!-- N56&#45;&gt;N14 -->
<g id="edge19" class="edge"><title>N56&#45;&gt;N14</title>
<g id="a_edge19"><a xlink:title="runtime.schedule &#45;&gt; runtime.findrunnable (0.15s)">
<path fill="none" stroke="black" d="M1390.5,-915.837C1390.5,-903.129 1390.5,-885.421 1390.5,-870.006"/>
<polygon fill="black" stroke="black" points="1394,-869.791 1390.5,-859.791 1387,-869.791 1394,-869.791"/>
</a>
</g>
<g id="a_edge19&#45;label"><a xlink:title="runtime.schedule &#45;&gt; runtime.findrunnable (0.15s)">
<text text-anchor="middle" x="1407.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.15s</text>
</a>
</g>
</g>
<!-- N56&#45;&gt;N55 -->
<g id="edge29" class="edge"><title>N56&#45;&gt;N55</title>
<g id="a_edge29"><a xlink:title="runtime.schedule &#45;&gt; runtime.resetspinning (0.08s)">
<path fill="none" stroke="black" d="M1411.77,-915.837C1430.9,-900.411 1459.15,-877.616 1480.37,-860.5"/>
<polygon fill="black" stroke="black" points="1482.82,-863.017 1488.41,-854.014 1478.43,-857.569 1482.82,-863.017"/>
</a>
</g>
<g id="a_edge29&#45;label"><a xlink:title="runtime.schedule &#45;&gt; runtime.resetspinning (0.08s)">
<text text-anchor="middle" x="1474.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.08s</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N10 -->
<g id="edge47" class="edge"><title>N57&#45;&gt;N10</title>
<g id="a_edge47"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.memmove (0.05s)">
<path fill="none" stroke="black" d="M984.5,-915.837C984.5,-901.503 984.5,-880.807 984.5,-864.216"/>
<polygon fill="black" stroke="black" points="988,-864.014 984.5,-854.014 981,-864.014 988,-864.014"/>
</a>
</g>
<g id="a_edge47&#45;label"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.memmove (0.05s)">
<text text-anchor="middle" x="1001.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.05s</text>
</a>
</g>
</g>
<!-- N57&#45;&gt;N54 -->
<g id="edge20" class="edge"><title>N57&#45;&gt;N54</title>
<g id="a_edge20"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.rawstringtmp (0.15s)">
<path fill="none" stroke="black" d="M1005.77,-915.837C1024.9,-900.411 1053.15,-877.616 1074.37,-860.5"/>
<polygon fill="black" stroke="black" points="1076.82,-863.017 1082.41,-854.014 1072.43,-857.569 1076.82,-863.017"/>
</a>
</g>
<g id="a_edge20&#45;label"><a xlink:title="runtime.slicebytetostring &#45;&gt; runtime.rawstringtmp (0.15s)">
<text text-anchor="middle" x="1068.5" y="-882.8" font-family="Times,serif" font-size="14.00"> 0.15s</text>
</a>
</g>
</g>
<!-- N58 -->
<g id="node59" class="node"><title>N58</title>
<g id="a_node59"><a xlink:title="runtime.startm (0.08s)">
<polygon fill="#f8f8f8" stroke="black" points="1546.5,-652 1472.5,-652 1472.5,-616 1546.5,-616 1546.5,-652"/>
<text text-anchor="middle" x="1509.5" y="-636.6" font-family="Times,serif" font-size="8.00">runtime.startm</text>
<text text-anchor="middle" x="1509.5" y="-627.6" font-family="Times,serif" font-size="8.00">0 of 0.08s(3.92%)</text>
</a>
</g>
</g>
<!-- N58&#45;&gt;N52 -->
<g id="edge30" class="edge"><title>N58&#45;&gt;N52</title>
<g id="a_edge30"><a xlink:title="runtime.startm &#45;&gt; runtime.notewakeup (0.08s)">
<path fill="none" stroke="black" d="M1509.5,-615.987C1509.5,-596.924 1509.5,-565.752 1509.5,-543.277"/>
<polygon fill="black" stroke="black" points="1513,-543.033 1509.5,-533.033 1506,-543.033 1513,-543.033"/>
</a>
</g>
<g id="a_edge30&#45;label"><a xlink:title="runtime.startm &#45;&gt; runtime.notewakeup (0.08s)">
<text text-anchor="middle" x="1526.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.08s</text>
</a>
</g>
</g>
<!-- N59&#45;&gt;N51 -->
<g id="edge37" class="edge"><title>N59&#45;&gt;N51</title>
<g id="a_edge37"><a xlink:title="runtime.stopm &#45;&gt; runtime.notesleep (0.07s)">
<path fill="none" stroke="black" d="M1314.5,-615.987C1314.5,-596.924 1314.5,-565.752 1314.5,-543.277"/>
<polygon fill="black" stroke="black" points="1318,-543.033 1314.5,-533.033 1311,-543.033 1318,-543.033"/>
</a>
</g>
<g id="a_edge37&#45;label"><a xlink:title="runtime.stopm &#45;&gt; runtime.notesleep (0.07s)">
<text text-anchor="middle" x="1331.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N60&#45;&gt;N47 -->
<g id="edge38" class="edge"><title>N60&#45;&gt;N47</title>
<g id="a_edge38"><a xlink:title="runtime.sweepone &#45;&gt; runtime.mSpan_Sweep (0.07s)">
<path fill="none" stroke="black" d="M1186.5,-268.614C1186.5,-256.24 1186.5,-239.369 1186.5,-225.22"/>
<polygon fill="black" stroke="black" points="1190,-225.05 1186.5,-215.05 1183,-225.05 1190,-225.05"/>
</a>
</g>
<g id="a_edge38&#45;label"><a xlink:title="runtime.sweepone &#45;&gt; runtime.mSpan_Sweep (0.07s)">
<text text-anchor="middle" x="1203.5" y="-236.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N61&#45;&gt;N44 -->
<g id="edge39" class="edge"><title>N61&#45;&gt;N44</title>
<g id="a_edge39"><a xlink:title="runtime.systemstack &#45;&gt; runtime.gosweepone.func1 (0.07s)">
<path fill="none" stroke="black" d="M1186.5,-496.897C1186.5,-476.633 1186.5,-442.6 1186.5,-418.593"/>
<polygon fill="black" stroke="black" points="1190,-418.354 1186.5,-408.354 1183,-418.354 1190,-418.354"/>
</a>
</g>
<g id="a_edge39&#45;label"><a xlink:title="runtime.systemstack &#45;&gt; runtime.gosweepone.func1 (0.07s)">
<text text-anchor="middle" x="1203.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.07s</text>
</a>
</g>
</g>
<!-- N61&#45;&gt;N46 -->
<g id="edge65" class="edge"><title>N61&#45;&gt;N46</title>
<g id="a_edge65"><a xlink:title="runtime.systemstack &#45;&gt; runtime.mHeap_Alloc.func1 (0.02s)">
<path fill="none" stroke="black" d="M1169.26,-496.897C1147.91,-475.721 1111.4,-439.506 1087.11,-415.412"/>
<polygon fill="black" stroke="black" points="1089.56,-412.911 1079.99,-408.354 1084.63,-417.881 1089.56,-412.911"/>
</a>
</g>
<g id="a_edge65&#45;label"><a xlink:title="runtime.systemstack &#45;&gt; runtime.mHeap_Alloc.func1 (0.02s)">
<text text-anchor="middle" x="1141.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N62&#45;&gt;N58 -->
<g id="edge31" class="edge"><title>N62&#45;&gt;N58</title>
<g id="a_edge31"><a xlink:title="runtime.wakep &#45;&gt; runtime.startm (0.08s)">
<path fill="none" stroke="black" d="M1509.5,-716.756C1509.5,-701.708 1509.5,-679.616 1509.5,-662.19"/>
<polygon fill="black" stroke="black" points="1513,-662.047 1509.5,-652.047 1506,-662.047 1513,-662.047"/>
</a>
</g>
<g id="a_edge31&#45;label"><a xlink:title="runtime.wakep &#45;&gt; runtime.startm (0.08s)">
<text text-anchor="middle" x="1526.5" y="-680.8" font-family="Times,serif" font-size="14.00"> 0.08s</text>
</a>
</g>
</g>
<!-- N64 -->
<g id="node65" class="node"><title>N64</title>
<g id="a_node65"><a xlink:title="syscall.read (0.16s)">
<polygon fill="#f8f8f8" stroke="black" points="97.5,-533 23.5,-533 23.5,-497 97.5,-497 97.5,-533"/>
<text text-anchor="middle" x="60.5" y="-517.6" font-family="Times,serif" font-size="8.00">syscall.read</text>
<text text-anchor="middle" x="60.5" y="-508.6" font-family="Times,serif" font-size="8.00">0 of 0.16s(7.84%)</text>
</a>
</g>
</g>
<!-- N63&#45;&gt;N64 -->
<g id="edge16" class="edge"><title>N63&#45;&gt;N64</title>
<g id="a_edge16"><a xlink:title="syscall.Read &#45;&gt; syscall.read (0.16s)">
<path fill="none" stroke="black" d="M103.23,-615.987C94.9719,-596.664 81.3972,-564.9 71.7659,-542.362"/>
<polygon fill="black" stroke="black" points="74.9274,-540.853 67.7792,-533.033 68.4905,-543.604 74.9274,-540.853"/>
</a>
</g>
<g id="a_edge16&#45;label"><a xlink:title="syscall.Read &#45;&gt; syscall.read (0.16s)">
<text text-anchor="middle" x="108.5" y="-579.8" font-family="Times,serif" font-size="14.00"> 0.16s</text>
</a>
</g>
</g>
<!-- N64&#45;&gt;N2 -->
<g id="edge17" class="edge"><title>N64&#45;&gt;N2</title>
<g id="a_edge17"><a xlink:title="syscall.read &#45;&gt; syscall.Syscall (0.16s)">
<path fill="none" stroke="black" d="M60.5,-496.897C60.5,-480.03 60.5,-453.621 60.5,-431.397"/>
<polygon fill="black" stroke="black" points="64.0001,-431.207 60.5,-421.207 57.0001,-431.207 64.0001,-431.207"/>
</a>
</g>
<g id="a_edge17&#45;label"><a xlink:title="syscall.read &#45;&gt; syscall.Syscall (0.16s)">
<text text-anchor="middle" x="77.5" y="-442.8" font-family="Times,serif" font-size="14.00"> 0.16s</text>
</a>
</g>
</g>
</g>
</g></svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment