Skip to content

Instantly share code, notes, and snippets.

@benmoss
Created June 1, 2022 18:13
Show Gist options
  • Save benmoss/29951356244b80e2c5a42ffa237934e6 to your computer and use it in GitHub Desktop.
Save benmoss/29951356244b80e2c5a42ffa237934e6 to your computer and use it in GitHub Desktop.
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.43.0 (0)
-->
<!-- Title: imgpkg 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 2074)">
<title>imgpkg</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2074 905.5,-2074 905.5,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_L</title>
<polygon fill="none" stroke="black" points="8,-1911 8,-2062 512,-2062 512,-1911 8,-1911"/>
</g>
<!-- File: imgpkg -->
<g id="node1" class="node">
<title>File: imgpkg</title>
<g id="a_node1"><a xlink:title="imgpkg">
<polygon fill="#f8f8f8" stroke="black" points="504,-2054 16,-2054 16,-1919 504,-1919 504,-2054"/>
<text text-anchor="start" x="24" y="-2037.2" font-family="Times,serif" font-size="16.00">File: imgpkg</text>
<text text-anchor="start" x="24" y="-2019.2" font-family="Times,serif" font-size="16.00">Type: cpu</text>
<text text-anchor="start" x="24" y="-2001.2" font-family="Times,serif" font-size="16.00">Time: Jun 1, 2022 at 2:10pm (EDT)</text>
<text text-anchor="start" x="24" y="-1983.2" font-family="Times,serif" font-size="16.00">Duration: 1.43s, Total samples = 50ms ( 3.50%)</text>
<text text-anchor="start" x="24" y="-1965.2" font-family="Times,serif" font-size="16.00">Showing nodes accounting for 50ms, 100% of 50ms total</text>
<text text-anchor="start" x="24" y="-1928.2" font-family="Times,serif" font-size="16.00">See https://git.io/JfYMW for how to read the graph</text>
</a>
</g>
</g>
<!-- N1 -->
<g id="node1" class="node">
<title>N1</title>
<g id="a_node1"><a xlink:title="compress/flate.(*decompressor).huffSym (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="413,-326 197,-326 197,-214 413,-214 413,-326"/>
<text text-anchor="middle" x="305" y="-302.8" font-family="Times,serif" font-size="24.00">flate</text>
<text text-anchor="middle" x="305" y="-276.8" font-family="Times,serif" font-size="24.00">(*decompressor)</text>
<text text-anchor="middle" x="305" y="-250.8" font-family="Times,serif" font-size="24.00">huffSym</text>
<text text-anchor="middle" x="305" y="-224.8" font-family="Times,serif" font-size="24.00">30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N2 -->
<g id="node2" class="node">
<title>N2</title>
<g id="a_node2"><a xlink:title="runtime.main (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-2004.5 522.5,-2004.5 522.5,-1968.5 617.5,-1968.5 617.5,-2004.5"/>
<text text-anchor="middle" x="570" y="-1993.6" font-family="Times,serif" font-size="8.00">runtime</text>
<text text-anchor="middle" x="570" y="-1984.6" font-family="Times,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="570" y="-1975.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N42 -->
<g id="node42" class="node">
<title>N42</title>
<g id="a_node42"><a xlink:title="main.main (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1849 522.5,-1849 522.5,-1813 617.5,-1813 617.5,-1849"/>
<text text-anchor="middle" x="570" y="-1838.1" font-family="Times,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="570" y="-1829.1" font-family="Times,serif" font-size="8.00">main</text>
<text text-anchor="middle" x="570" y="-1820.1" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N2&#45;&gt;N42 -->
<g id="edge10" class="edge">
<title>N2&#45;&gt;N42</title>
<g id="a_edge10"><a xlink:title="runtime.main &#45;&gt; main.main (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1968.49C570,-1942.09 570,-1891.03 570,-1859.4"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1859.09 570,-1849.09 565.63,-1859.09 574.38,-1859.09"/>
</a>
</g>
<g id="a_edge10&#45;label"><a xlink:title="runtime.main &#45;&gt; main.main (40ms)">
<text text-anchor="middle" x="592" y="-1882.3" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N3 -->
<g id="node3" class="node">
<title>N3</title>
<g id="a_node3"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-965 522.5,-965 522.5,-921 617.5,-921 617.5,-965"/>
<text text-anchor="middle" x="570" y="-954.6" font-family="Times,serif" font-size="8.00">image</text>
<text text-anchor="middle" x="570" y="-945.6" font-family="Times,serif" font-size="8.00">(*DirImage)</text>
<text text-anchor="middle" x="570" y="-936.6" font-family="Times,serif" font-size="8.00">AsDirectory</text>
<text text-anchor="middle" x="570" y="-927.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N40 -->
<g id="node40" class="node">
<title>N40</title>
<g id="a_node40"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).writeLayer (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="617.5,-855 522.5,-855 522.5,-811 617.5,-811 617.5,-855"/>
<text text-anchor="middle" x="570" y="-844.6" font-family="Times,serif" font-size="8.00">image</text>
<text text-anchor="middle" x="570" y="-835.6" font-family="Times,serif" font-size="8.00">(*DirImage)</text>
<text text-anchor="middle" x="570" y="-826.6" font-family="Times,serif" font-size="8.00">writeLayer</text>
<text text-anchor="middle" x="570" y="-817.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N3&#45;&gt;N40 -->
<g id="edge16" class="edge">
<title>N3&#45;&gt;N40</title>
<g id="a_edge16"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).writeLayer (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M570,-920.92C570,-905.09 570,-883.15 570,-865.27"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="573.5,-865.03 570,-855.03 566.5,-865.03 573.5,-865.03"/>
</a>
</g>
<g id="a_edge16&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).writeLayer (30ms)">
<text text-anchor="middle" x="592" y="-884.3" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N44 -->
<g id="node44" class="node">
<title>N44</title>
<g id="a_node44"><a xlink:title="os.RemoveAll (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="730.5,-851 635.5,-851 635.5,-815 730.5,-815 730.5,-851"/>
<text text-anchor="middle" x="683" y="-840.1" font-family="Times,serif" font-size="8.00">os</text>
<text text-anchor="middle" x="683" y="-831.1" font-family="Times,serif" font-size="8.00">RemoveAll</text>
<text text-anchor="middle" x="683" y="-822.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N3&#45;&gt;N44 -->
<g id="edge41" class="edge">
<title>N3&#45;&gt;N44</title>
<g id="a_edge41"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory &#45;&gt; os.RemoveAll (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M597.19,-920.95C604.13,-915.3 611.47,-909.07 618,-903 633.12,-888.95 649.02,-872.11 661.31,-858.58"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="664.01,-860.82 668.1,-851.05 658.8,-856.14 664.01,-860.82"/>
</a>
</g>
<g id="a_edge41&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory &#45;&gt; os.RemoveAll (10ms)">
<text text-anchor="middle" x="674.5" y="-891.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
<text text-anchor="middle" x="674.5" y="-876.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N4 -->
<g id="node4" class="node">
<title>N4</title>
<g id="a_node4"><a xlink:title="io.Copy (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="541.5,-646 446.5,-646 446.5,-610 541.5,-610 541.5,-646"/>
<text text-anchor="middle" x="494" y="-635.1" font-family="Times,serif" font-size="8.00">io</text>
<text text-anchor="middle" x="494" y="-626.1" font-family="Times,serif" font-size="8.00">Copy</text>
<text text-anchor="middle" x="494" y="-617.1" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N5 -->
<g id="node5" class="node">
<title>N5</title>
<g id="a_node5"><a xlink:title="io.copyBuffer (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="465.5,-961 370.5,-961 370.5,-925 465.5,-925 465.5,-961"/>
<text text-anchor="middle" x="418" y="-950.1" font-family="Times,serif" font-size="8.00">io</text>
<text text-anchor="middle" x="418" y="-941.1" font-family="Times,serif" font-size="8.00">copyBuffer</text>
<text text-anchor="middle" x="418" y="-932.1" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N5 -->
<g id="edge19" class="edge">
<title>N4&#45;&gt;N5</title>
<g id="a_edge19"><a xlink:title="io.Copy &#45;&gt; io.copyBuffer (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M496.83,-646.2C503.42,-691.71 515.65,-817.65 466,-903 462.78,-908.54 458.44,-913.62 453.7,-918.15"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="451.27,-915.62 445.99,-924.81 455.85,-920.92 451.27,-915.62"/>
</a>
</g>
<g id="a_edge19&#45;label"><a xlink:title="io.Copy &#45;&gt; io.copyBuffer (30ms)">
<text text-anchor="middle" x="524" y="-781.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N9 -->
<g id="node9" class="node">
<title>N9</title>
<g id="a_node9"><a xlink:title="archive/tar.(*Reader).Read (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="352.5,-855 257.5,-855 257.5,-811 352.5,-811 352.5,-855"/>
<text text-anchor="middle" x="305" y="-844.6" font-family="Times,serif" font-size="8.00">tar</text>
<text text-anchor="middle" x="305" y="-835.6" font-family="Times,serif" font-size="8.00">(*Reader)</text>
<text text-anchor="middle" x="305" y="-826.6" font-family="Times,serif" font-size="8.00">Read</text>
<text text-anchor="middle" x="305" y="-817.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N9 -->
<g id="edge20" class="edge">
<title>N5&#45;&gt;N9</title>
<g id="a_edge20"><a xlink:title="io.copyBuffer &#45;&gt; archive/tar.(*Reader).Read (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M395.5,-924.73C387.27,-918.16 378.02,-910.46 370,-903 356.42,-890.38 342.21,-875.51 330.55,-862.81"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="332.97,-860.27 323.65,-855.23 327.79,-864.98 332.97,-860.27"/>
</a>
</g>
<g id="a_edge20&#45;label"><a xlink:title="io.copyBuffer &#45;&gt; archive/tar.(*Reader).Read (30ms)">
<text text-anchor="middle" x="392" y="-884.3" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N43 -->
<g id="node43" class="node">
<title>N43</title>
<g id="a_node43"><a xlink:title="os.(*File).ReadFrom (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="465.5,-855 370.5,-855 370.5,-811 465.5,-811 465.5,-855"/>
<text text-anchor="middle" x="418" y="-844.6" font-family="Times,serif" font-size="8.00">os</text>
<text text-anchor="middle" x="418" y="-835.6" font-family="Times,serif" font-size="8.00">(*File)</text>
<text text-anchor="middle" x="418" y="-826.6" font-family="Times,serif" font-size="8.00">ReadFrom</text>
<text text-anchor="middle" x="418" y="-817.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N5&#45;&gt;N43 -->
<g id="edge21" class="edge">
<title>N5&#45;&gt;N43</title>
<g id="a_edge21"><a xlink:title="io.copyBuffer &#45;&gt; os.(*File).ReadFrom (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M418,-924.65C418,-908.65 418,-884.52 418,-865.18"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="421.5,-865.01 418,-855.01 414.5,-865.01 421.5,-865.01"/>
</a>
</g>
<g id="a_edge21&#45;label"><a xlink:title="io.copyBuffer &#45;&gt; os.(*File).ReadFrom (30ms)">
<text text-anchor="middle" x="440" y="-884.3" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N6 -->
<g id="node6" class="node">
<title>N6</title>
<g id="a_node6"><a xlink:title="crypto/elliptic.p256Select (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="901.5,-68 748.5,-68 748.5,0 901.5,0 901.5,-68"/>
<text text-anchor="middle" x="825" y="-49.6" font-family="Times,serif" font-size="18.00">elliptic</text>
<text text-anchor="middle" x="825" y="-29.6" font-family="Times,serif" font-size="18.00">p256Select</text>
<text text-anchor="middle" x="825" y="-9.6" font-family="Times,serif" font-size="18.00">10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N7 -->
<g id="node7" class="node">
<title>N7</title>
<g id="a_node7"><a xlink:title="syscall.Syscall (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="759.5,-445 606.5,-445 606.5,-377 759.5,-377 759.5,-445"/>
<text text-anchor="middle" x="683" y="-426.6" font-family="Times,serif" font-size="18.00">syscall</text>
<text text-anchor="middle" x="683" y="-406.6" font-family="Times,serif" font-size="18.00">Syscall</text>
<text text-anchor="middle" x="683" y="-386.6" font-family="Times,serif" font-size="18.00">10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N8 -->
<g id="node8" class="node">
<title>N8</title>
<g id="a_node8"><a xlink:title="net/http.(*persistConn).addTLS.func2 (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-2013 777.5,-2013 777.5,-1960 872.5,-1960 872.5,-2013"/>
<text text-anchor="middle" x="825" y="-2002.6" font-family="Times,serif" font-size="8.00">http</text>
<text text-anchor="middle" x="825" y="-1993.6" font-family="Times,serif" font-size="8.00">(*persistConn)</text>
<text text-anchor="middle" x="825" y="-1984.6" font-family="Times,serif" font-size="8.00">addTLS</text>
<text text-anchor="middle" x="825" y="-1975.6" font-family="Times,serif" font-size="8.00">func2</text>
<text text-anchor="middle" x="825" y="-1966.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N20 -->
<g id="node20" class="node">
<title>N20</title>
<g id="a_node20"><a xlink:title="crypto/tls.(*Conn).HandshakeContext (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1853 777.5,-1853 777.5,-1809 872.5,-1809 872.5,-1853"/>
<text text-anchor="middle" x="825" y="-1842.6" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1833.6" font-family="Times,serif" font-size="8.00">(*Conn)</text>
<text text-anchor="middle" x="825" y="-1824.6" font-family="Times,serif" font-size="8.00">HandshakeContext</text>
<text text-anchor="middle" x="825" y="-1815.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N8&#45;&gt;N20 -->
<g id="edge43" class="edge">
<title>N8&#45;&gt;N20</title>
<g id="a_edge43"><a xlink:title="net/http.(*persistConn).addTLS.func2 &#45;&gt; crypto/tls.(*Conn).HandshakeContext (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1959.81C825,-1933.32 825,-1891.98 825,-1863.53"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1863.32 825,-1853.32 821.5,-1863.32 828.5,-1863.32"/>
</a>
</g>
<g id="a_edge43&#45;label"><a xlink:title="net/http.(*persistConn).addTLS.func2 &#45;&gt; crypto/tls.(*Conn).HandshakeContext (10ms)">
<text text-anchor="middle" x="852.5" y="-1889.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
<text text-anchor="middle" x="852.5" y="-1874.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N10 -->
<g id="node10" class="node">
<title>N10</title>
<g id="a_node10"><a xlink:title="archive/tar.(*regFileReader).Read (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="352.5,-760 257.5,-760 257.5,-716 352.5,-716 352.5,-760"/>
<text text-anchor="middle" x="305" y="-749.6" font-family="Times,serif" font-size="8.00">tar</text>
<text text-anchor="middle" x="305" y="-740.6" font-family="Times,serif" font-size="8.00">(*regFileReader)</text>
<text text-anchor="middle" x="305" y="-731.6" font-family="Times,serif" font-size="8.00">Read</text>
<text text-anchor="middle" x="305" y="-722.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N10 -->
<g id="edge11" class="edge">
<title>N9&#45;&gt;N10</title>
<g id="a_edge11"><a xlink:title="archive/tar.(*Reader).Read &#45;&gt; archive/tar.(*regFileReader).Read (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M305,-810.9C305,-798.89 305,-783.62 305,-770.24"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="308.5,-770.02 305,-760.02 301.5,-770.02 308.5,-770.02"/>
</a>
</g>
<g id="a_edge11&#45;label"><a xlink:title="archive/tar.(*Reader).Read &#45;&gt; archive/tar.(*regFileReader).Read (30ms)">
<text text-anchor="middle" x="327" y="-781.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N13 -->
<g id="node13" class="node">
<title>N13</title>
<g id="a_node13"><a xlink:title="compress/gzip.(*Reader).Read (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="352.5,-650 257.5,-650 257.5,-606 352.5,-606 352.5,-650"/>
<text text-anchor="middle" x="305" y="-639.6" font-family="Times,serif" font-size="8.00">gzip</text>
<text text-anchor="middle" x="305" y="-630.6" font-family="Times,serif" font-size="8.00">(*Reader)</text>
<text text-anchor="middle" x="305" y="-621.6" font-family="Times,serif" font-size="8.00">Read</text>
<text text-anchor="middle" x="305" y="-612.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N13 -->
<g id="edge12" class="edge">
<title>N10&#45;&gt;N13</title>
<g id="a_edge12"><a xlink:title="archive/tar.(*regFileReader).Read &#45;&gt; compress/gzip.(*Reader).Read (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M305,-715.92C305,-700.09 305,-678.15 305,-660.27"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="308.5,-660.03 305,-650.03 301.5,-660.03 308.5,-660.03"/>
</a>
</g>
<g id="a_edge12&#45;label"><a xlink:title="archive/tar.(*regFileReader).Read &#45;&gt; compress/gzip.(*Reader).Read (30ms)">
<text text-anchor="middle" x="327" y="-679.3" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N11 -->
<g id="node11" class="node">
<title>N11</title>
<g id="a_node11"><a xlink:title="compress/flate.(*decompressor).Read (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="352.5,-540 257.5,-540 257.5,-496 352.5,-496 352.5,-540"/>
<text text-anchor="middle" x="305" y="-529.6" font-family="Times,serif" font-size="8.00">flate</text>
<text text-anchor="middle" x="305" y="-520.6" font-family="Times,serif" font-size="8.00">(*decompressor)</text>
<text text-anchor="middle" x="305" y="-511.6" font-family="Times,serif" font-size="8.00">Read</text>
<text text-anchor="middle" x="305" y="-502.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N12 -->
<g id="node12" class="node">
<title>N12</title>
<g id="a_node12"><a xlink:title="compress/flate.(*decompressor).huffmanBlock (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="352.5,-433 257.5,-433 257.5,-389 352.5,-389 352.5,-433"/>
<text text-anchor="middle" x="305" y="-422.6" font-family="Times,serif" font-size="8.00">flate</text>
<text text-anchor="middle" x="305" y="-413.6" font-family="Times,serif" font-size="8.00">(*decompressor)</text>
<text text-anchor="middle" x="305" y="-404.6" font-family="Times,serif" font-size="8.00">huffmanBlock</text>
<text text-anchor="middle" x="305" y="-395.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;N12 -->
<g id="edge13" class="edge">
<title>N11&#45;&gt;N12</title>
<g id="a_edge13"><a xlink:title="compress/flate.(*decompressor).Read &#45;&gt; compress/flate.(*decompressor).huffmanBlock (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M305,-495.75C305,-480.67 305,-460.17 305,-443.23"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="308.5,-443.22 305,-433.22 301.5,-443.22 308.5,-443.22"/>
</a>
</g>
<g id="a_edge13&#45;label"><a xlink:title="compress/flate.(*decompressor).Read &#45;&gt; compress/flate.(*decompressor).huffmanBlock (30ms)">
<text text-anchor="middle" x="327" y="-466.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N12&#45;&gt;N1 -->
<g id="edge14" class="edge">
<title>N12&#45;&gt;N1</title>
<g id="a_edge14"><a xlink:title="compress/flate.(*decompressor).huffmanBlock &#45;&gt; compress/flate.(*decompressor).huffSym (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M305,-388.89C305,-374.79 305,-355.42 305,-336.45"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="308.5,-336.29 305,-326.29 301.5,-336.29 308.5,-336.29"/>
</a>
</g>
<g id="a_edge14&#45;label"><a xlink:title="compress/flate.(*decompressor).huffmanBlock &#45;&gt; compress/flate.(*decompressor).huffSym (30ms)">
<text text-anchor="middle" x="327" y="-347.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;N11 -->
<g id="edge15" class="edge">
<title>N13&#45;&gt;N11</title>
<g id="a_edge15"><a xlink:title="compress/gzip.(*Reader).Read &#45;&gt; compress/flate.(*decompressor).Read (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M305,-605.92C305,-590.09 305,-568.15 305,-550.27"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="308.5,-550.03 305,-540.03 301.5,-550.03 308.5,-550.03"/>
</a>
</g>
<g id="a_edge15&#45;label"><a xlink:title="compress/gzip.(*Reader).Read &#45;&gt; compress/flate.(*decompressor).Read (30ms)">
<text text-anchor="middle" x="327" y="-569.3" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N14 -->
<g id="node14" class="node">
<title>N14</title>
<g id="a_node14"><a xlink:title="crypto/ecdsa.Verify (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-646 777.5,-646 777.5,-610 872.5,-610 872.5,-646"/>
<text text-anchor="middle" x="825" y="-635.1" font-family="Times,serif" font-size="8.00">ecdsa</text>
<text text-anchor="middle" x="825" y="-626.1" font-family="Times,serif" font-size="8.00">Verify</text>
<text text-anchor="middle" x="825" y="-617.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N16 -->
<g id="node16" class="node">
<title>N16</title>
<g id="a_node16"><a xlink:title="crypto/ecdsa.verify (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-536 777.5,-536 777.5,-500 872.5,-500 872.5,-536"/>
<text text-anchor="middle" x="825" y="-525.1" font-family="Times,serif" font-size="8.00">ecdsa</text>
<text text-anchor="middle" x="825" y="-516.1" font-family="Times,serif" font-size="8.00">verify</text>
<text text-anchor="middle" x="825" y="-507.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N16 -->
<g id="edge24" class="edge">
<title>N14&#45;&gt;N16</title>
<g id="a_edge24"><a xlink:title="crypto/ecdsa.Verify &#45;&gt; crypto/ecdsa.verify (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-609.65C825,-592.56 825,-566.22 825,-546.32"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-546.31 825,-536.31 821.5,-546.31 828.5,-546.31"/>
</a>
</g>
<g id="a_edge24&#45;label"><a xlink:title="crypto/ecdsa.Verify &#45;&gt; crypto/ecdsa.verify (10ms)">
<text text-anchor="middle" x="852.5" y="-576.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
<text text-anchor="middle" x="852.5" y="-561.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N15 -->
<g id="node15" class="node">
<title>N15</title>
<g id="a_node15"><a xlink:title="crypto/ecdsa.VerifyASN1 (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-756 777.5,-756 777.5,-720 872.5,-720 872.5,-756"/>
<text text-anchor="middle" x="825" y="-745.1" font-family="Times,serif" font-size="8.00">ecdsa</text>
<text text-anchor="middle" x="825" y="-736.1" font-family="Times,serif" font-size="8.00">VerifyASN1</text>
<text text-anchor="middle" x="825" y="-727.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N15&#45;&gt;N14 -->
<g id="edge25" class="edge">
<title>N15&#45;&gt;N14</title>
<g id="a_edge25"><a xlink:title="crypto/ecdsa.VerifyASN1 &#45;&gt; crypto/ecdsa.Verify (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-719.65C825,-702.56 825,-676.22 825,-656.32"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-656.31 825,-646.31 821.5,-656.31 828.5,-656.31"/>
</a>
</g>
<g id="a_edge25&#45;label"><a xlink:title="crypto/ecdsa.VerifyASN1 &#45;&gt; crypto/ecdsa.Verify (10ms)">
<text text-anchor="middle" x="847" y="-679.3" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N17 -->
<g id="node17" class="node">
<title>N17</title>
<g id="a_node17"><a xlink:title="crypto/ecdsa.verifyGeneric (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-429 777.5,-429 777.5,-393 872.5,-393 872.5,-429"/>
<text text-anchor="middle" x="825" y="-418.1" font-family="Times,serif" font-size="8.00">ecdsa</text>
<text text-anchor="middle" x="825" y="-409.1" font-family="Times,serif" font-size="8.00">verifyGeneric</text>
<text text-anchor="middle" x="825" y="-400.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N16&#45;&gt;N17 -->
<g id="edge26" class="edge">
<title>N16&#45;&gt;N17</title>
<g id="a_edge26"><a xlink:title="crypto/ecdsa.verify &#45;&gt; crypto/ecdsa.verifyGeneric (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-499.66C825,-483.22 825,-458.28 825,-439.19"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-439.02 825,-429.02 821.5,-439.02 828.5,-439.02"/>
</a>
</g>
<g id="a_edge26&#45;label"><a xlink:title="crypto/ecdsa.verify &#45;&gt; crypto/ecdsa.verifyGeneric (10ms)">
<text text-anchor="middle" x="847" y="-466.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N19 -->
<g id="node19" class="node">
<title>N19</title>
<g id="a_node19"><a xlink:title="crypto/elliptic.p256Curve.CombinedMult (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-292 777.5,-292 777.5,-248 872.5,-248 872.5,-292"/>
<text text-anchor="middle" x="825" y="-281.6" font-family="Times,serif" font-size="8.00">elliptic</text>
<text text-anchor="middle" x="825" y="-272.6" font-family="Times,serif" font-size="8.00">p256Curve</text>
<text text-anchor="middle" x="825" y="-263.6" font-family="Times,serif" font-size="8.00">CombinedMult</text>
<text text-anchor="middle" x="825" y="-254.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N19 -->
<g id="edge27" class="edge">
<title>N17&#45;&gt;N19</title>
<g id="a_edge27"><a xlink:title="crypto/ecdsa.verifyGeneric &#45;&gt; crypto/elliptic.p256Curve.CombinedMult (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-392.96C825,-370.46 825,-330.42 825,-302.38"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-302.28 825,-292.28 821.5,-302.28 828.5,-302.28"/>
</a>
</g>
<g id="a_edge27&#45;label"><a xlink:title="crypto/ecdsa.verifyGeneric &#45;&gt; crypto/elliptic.p256Curve.CombinedMult (10ms)">
<text text-anchor="middle" x="847" y="-347.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N18 -->
<g id="node18" class="node">
<title>N18</title>
<g id="a_node18"><a xlink:title="crypto/elliptic.(*p256Point).p256ScalarMult (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-163 777.5,-163 777.5,-119 872.5,-119 872.5,-163"/>
<text text-anchor="middle" x="825" y="-152.6" font-family="Times,serif" font-size="8.00">elliptic</text>
<text text-anchor="middle" x="825" y="-143.6" font-family="Times,serif" font-size="8.00">(*p256Point)</text>
<text text-anchor="middle" x="825" y="-134.6" font-family="Times,serif" font-size="8.00">p256ScalarMult</text>
<text text-anchor="middle" x="825" y="-125.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N6 -->
<g id="edge28" class="edge">
<title>N18&#45;&gt;N6</title>
<g id="a_edge28"><a xlink:title="crypto/elliptic.(*p256Point).p256ScalarMult &#45;&gt; crypto/elliptic.p256Select (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-118.75C825,-107.2 825,-92.46 825,-78.59"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-78.21 825,-68.21 821.5,-78.21 828.5,-78.21"/>
</a>
</g>
<g id="a_edge28&#45;label"><a xlink:title="crypto/elliptic.(*p256Point).p256ScalarMult &#45;&gt; crypto/elliptic.p256Select (10ms)">
<text text-anchor="middle" x="847" y="-89.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N18 -->
<g id="edge29" class="edge">
<title>N19&#45;&gt;N18</title>
<g id="a_edge29"><a xlink:title="crypto/elliptic.p256Curve.CombinedMult &#45;&gt; crypto/elliptic.(*p256Point).p256ScalarMult (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-247.74C825,-227.41 825,-196.51 825,-173.35"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-173.33 825,-163.33 821.5,-173.33 828.5,-173.33"/>
</a>
</g>
<g id="a_edge29&#45;label"><a xlink:title="crypto/elliptic.p256Curve.CombinedMult &#45;&gt; crypto/elliptic.(*p256Point).p256ScalarMult (10ms)">
<text text-anchor="middle" x="847" y="-184.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N22 -->
<g id="node22" class="node">
<title>N22</title>
<g id="a_node22"><a xlink:title="crypto/tls.(*Conn).handshakeContext (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1743 777.5,-1743 777.5,-1699 872.5,-1699 872.5,-1743"/>
<text text-anchor="middle" x="825" y="-1732.6" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1723.6" font-family="Times,serif" font-size="8.00">(*Conn)</text>
<text text-anchor="middle" x="825" y="-1714.6" font-family="Times,serif" font-size="8.00">handshakeContext</text>
<text text-anchor="middle" x="825" y="-1705.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N22 -->
<g id="edge30" class="edge">
<title>N20&#45;&gt;N22</title>
<g id="a_edge30"><a xlink:title="crypto/tls.(*Conn).HandshakeContext &#45;&gt; crypto/tls.(*Conn).handshakeContext (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1808.92C825,-1793.09 825,-1771.15 825,-1753.27"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1753.03 825,-1743.03 821.5,-1753.03 828.5,-1753.03"/>
</a>
</g>
<g id="a_edge30&#45;label"><a xlink:title="crypto/tls.(*Conn).HandshakeContext &#45;&gt; crypto/tls.(*Conn).handshakeContext (10ms)">
<text text-anchor="middle" x="847" y="-1772.3" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N21 -->
<g id="node21" class="node">
<title>N21</title>
<g id="a_node21"><a xlink:title="crypto/tls.(*Conn).clientHandshake (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1648 777.5,-1648 777.5,-1604 872.5,-1604 872.5,-1648"/>
<text text-anchor="middle" x="825" y="-1637.6" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1628.6" font-family="Times,serif" font-size="8.00">(*Conn)</text>
<text text-anchor="middle" x="825" y="-1619.6" font-family="Times,serif" font-size="8.00">clientHandshake</text>
<text text-anchor="middle" x="825" y="-1610.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N25 -->
<g id="node25" class="node">
<title>N25</title>
<g id="a_node25"><a xlink:title="crypto/tls.(*clientHandshakeState).handshake (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="881.5,-1553 768.5,-1553 768.5,-1509 881.5,-1509 881.5,-1553"/>
<text text-anchor="middle" x="825" y="-1542.6" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1533.6" font-family="Times,serif" font-size="8.00">(*clientHandshakeState)</text>
<text text-anchor="middle" x="825" y="-1524.6" font-family="Times,serif" font-size="8.00">handshake</text>
<text text-anchor="middle" x="825" y="-1515.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N25 -->
<g id="edge31" class="edge">
<title>N21&#45;&gt;N25</title>
<g id="a_edge31"><a xlink:title="crypto/tls.(*Conn).clientHandshake &#45;&gt; crypto/tls.(*clientHandshakeState).handshake (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1603.9C825,-1591.89 825,-1576.62 825,-1563.24"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1563.02 825,-1553.02 821.5,-1563.02 828.5,-1563.02"/>
</a>
</g>
<g id="a_edge31&#45;label"><a xlink:title="crypto/tls.(*Conn).clientHandshake &#45;&gt; crypto/tls.(*clientHandshakeState).handshake (10ms)">
<text text-anchor="middle" x="847" y="-1574.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N21 -->
<g id="edge32" class="edge">
<title>N22&#45;&gt;N21</title>
<g id="a_edge32"><a xlink:title="crypto/tls.(*Conn).handshakeContext &#45;&gt; crypto/tls.(*Conn).clientHandshake (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1698.9C825,-1686.89 825,-1671.62 825,-1658.24"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1658.02 825,-1648.02 821.5,-1658.02 828.5,-1658.02"/>
</a>
</g>
<g id="a_edge32&#45;label"><a xlink:title="crypto/tls.(*Conn).handshakeContext &#45;&gt; crypto/tls.(*Conn).clientHandshake (10ms)">
<text text-anchor="middle" x="847" y="-1669.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N23 -->
<g id="node23" class="node">
<title>N23</title>
<g id="a_node23"><a xlink:title="crypto/tls.(*Conn).verifyServerCertificate (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="878.5,-1354 771.5,-1354 771.5,-1310 878.5,-1310 878.5,-1354"/>
<text text-anchor="middle" x="825" y="-1343.6" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1334.6" font-family="Times,serif" font-size="8.00">(*Conn)</text>
<text text-anchor="middle" x="825" y="-1325.6" font-family="Times,serif" font-size="8.00">verifyServerCertificate</text>
<text text-anchor="middle" x="825" y="-1316.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N27 -->
<g id="node27" class="node">
<title>N27</title>
<g id="a_node27"><a xlink:title="crypto/x509.(*Certificate).Verify (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1259 777.5,-1259 777.5,-1215 872.5,-1215 872.5,-1259"/>
<text text-anchor="middle" x="825" y="-1248.6" font-family="Times,serif" font-size="8.00">x509</text>
<text text-anchor="middle" x="825" y="-1239.6" font-family="Times,serif" font-size="8.00">(*Certificate)</text>
<text text-anchor="middle" x="825" y="-1230.6" font-family="Times,serif" font-size="8.00">Verify</text>
<text text-anchor="middle" x="825" y="-1221.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N23&#45;&gt;N27 -->
<g id="edge33" class="edge">
<title>N23&#45;&gt;N27</title>
<g id="a_edge33"><a xlink:title="crypto/tls.(*Conn).verifyServerCertificate &#45;&gt; crypto/x509.(*Certificate).Verify (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1309.9C825,-1297.89 825,-1282.62 825,-1269.24"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1269.02 825,-1259.02 821.5,-1269.02 828.5,-1269.02"/>
</a>
</g>
<g id="a_edge33&#45;label"><a xlink:title="crypto/tls.(*Conn).verifyServerCertificate &#45;&gt; crypto/x509.(*Certificate).Verify (10ms)">
<text text-anchor="middle" x="847" y="-1280.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N24 -->
<g id="node24" class="node">
<title>N24</title>
<g id="a_node24"><a xlink:title="crypto/tls.(*clientHandshakeState).doFullHandshake (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="881.5,-1453.5 768.5,-1453.5 768.5,-1409.5 881.5,-1409.5 881.5,-1453.5"/>
<text text-anchor="middle" x="825" y="-1443.1" font-family="Times,serif" font-size="8.00">tls</text>
<text text-anchor="middle" x="825" y="-1434.1" font-family="Times,serif" font-size="8.00">(*clientHandshakeState)</text>
<text text-anchor="middle" x="825" y="-1425.1" font-family="Times,serif" font-size="8.00">doFullHandshake</text>
<text text-anchor="middle" x="825" y="-1416.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N24&#45;&gt;N23 -->
<g id="edge34" class="edge">
<title>N24&#45;&gt;N23</title>
<g id="a_edge34"><a xlink:title="crypto/tls.(*clientHandshakeState).doFullHandshake &#45;&gt; crypto/tls.(*Conn).verifyServerCertificate (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1409.34C825,-1396.18 825,-1379.02 825,-1364.31"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1364.11 825,-1354.11 821.5,-1364.11 828.5,-1364.11"/>
</a>
</g>
<g id="a_edge34&#45;label"><a xlink:title="crypto/tls.(*clientHandshakeState).doFullHandshake &#45;&gt; crypto/tls.(*Conn).verifyServerCertificate (10ms)">
<text text-anchor="middle" x="847" y="-1375.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N25&#45;&gt;N24 -->
<g id="edge35" class="edge">
<title>N25&#45;&gt;N24</title>
<g id="a_edge35"><a xlink:title="crypto/tls.(*clientHandshakeState).handshake &#45;&gt; crypto/tls.(*clientHandshakeState).doFullHandshake (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1508.84C825,-1495.68 825,-1478.52 825,-1463.81"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1463.61 825,-1453.61 821.5,-1463.61 828.5,-1463.61"/>
</a>
</g>
<g id="a_edge35&#45;label"><a xlink:title="crypto/tls.(*clientHandshakeState).handshake &#45;&gt; crypto/tls.(*clientHandshakeState).doFullHandshake (10ms)">
<text text-anchor="middle" x="847" y="-1479.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N26 -->
<g id="node26" class="node">
<title>N26</title>
<g id="a_node26"><a xlink:title="crypto/x509.(*Certificate).CheckSignatureFrom (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="875.5,-965 774.5,-965 774.5,-921 875.5,-921 875.5,-965"/>
<text text-anchor="middle" x="825" y="-954.6" font-family="Times,serif" font-size="8.00">x509</text>
<text text-anchor="middle" x="825" y="-945.6" font-family="Times,serif" font-size="8.00">(*Certificate)</text>
<text text-anchor="middle" x="825" y="-936.6" font-family="Times,serif" font-size="8.00">CheckSignatureFrom</text>
<text text-anchor="middle" x="825" y="-927.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N30 -->
<g id="node30" class="node">
<title>N30</title>
<g id="a_node30"><a xlink:title="crypto/x509.checkSignature (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-851 777.5,-851 777.5,-815 872.5,-815 872.5,-851"/>
<text text-anchor="middle" x="825" y="-840.1" font-family="Times,serif" font-size="8.00">x509</text>
<text text-anchor="middle" x="825" y="-831.1" font-family="Times,serif" font-size="8.00">checkSignature</text>
<text text-anchor="middle" x="825" y="-822.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N26&#45;&gt;N30 -->
<g id="edge36" class="edge">
<title>N26&#45;&gt;N30</title>
<g id="a_edge36"><a xlink:title="crypto/x509.(*Certificate).CheckSignatureFrom &#45;&gt; crypto/x509.checkSignature (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-920.92C825,-903.88 825,-879.78 825,-861.27"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-861.12 825,-851.12 821.5,-861.12 828.5,-861.12"/>
</a>
</g>
<g id="a_edge36&#45;label"><a xlink:title="crypto/x509.(*Certificate).CheckSignatureFrom &#45;&gt; crypto/x509.checkSignature (10ms)">
<text text-anchor="middle" x="847" y="-884.3" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N28 -->
<g id="node28" class="node">
<title>N28</title>
<g id="a_node28"><a xlink:title="crypto/x509.(*Certificate).buildChains (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1164 777.5,-1164 777.5,-1120 872.5,-1120 872.5,-1164"/>
<text text-anchor="middle" x="825" y="-1153.6" font-family="Times,serif" font-size="8.00">x509</text>
<text text-anchor="middle" x="825" y="-1144.6" font-family="Times,serif" font-size="8.00">(*Certificate)</text>
<text text-anchor="middle" x="825" y="-1135.6" font-family="Times,serif" font-size="8.00">buildChains</text>
<text text-anchor="middle" x="825" y="-1126.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N27&#45;&gt;N28 -->
<g id="edge37" class="edge">
<title>N27&#45;&gt;N28</title>
<g id="a_edge37"><a xlink:title="crypto/x509.(*Certificate).Verify &#45;&gt; crypto/x509.(*Certificate).buildChains (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1214.9C825,-1202.89 825,-1187.62 825,-1174.24"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1174.02 825,-1164.02 821.5,-1174.02 828.5,-1174.02"/>
</a>
</g>
<g id="a_edge37&#45;label"><a xlink:title="crypto/x509.(*Certificate).Verify &#45;&gt; crypto/x509.(*Certificate).buildChains (10ms)">
<text text-anchor="middle" x="847" y="-1185.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N29 -->
<g id="node29" class="node">
<title>N29</title>
<g id="a_node29"><a xlink:title="crypto/x509.(*Certificate).buildChains.func1 (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="872.5,-1069 777.5,-1069 777.5,-1016 872.5,-1016 872.5,-1069"/>
<text text-anchor="middle" x="825" y="-1058.6" font-family="Times,serif" font-size="8.00">x509</text>
<text text-anchor="middle" x="825" y="-1049.6" font-family="Times,serif" font-size="8.00">(*Certificate)</text>
<text text-anchor="middle" x="825" y="-1040.6" font-family="Times,serif" font-size="8.00">buildChains</text>
<text text-anchor="middle" x="825" y="-1031.6" font-family="Times,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="825" y="-1022.6" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N28&#45;&gt;N29 -->
<g id="edge38" class="edge">
<title>N28&#45;&gt;N29</title>
<g id="a_edge38"><a xlink:title="crypto/x509.(*Certificate).buildChains &#45;&gt; crypto/x509.(*Certificate).buildChains.func1 (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1119.84C825,-1107.97 825,-1092.85 825,-1079.19"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-1079.12 825,-1069.12 821.5,-1079.12 828.5,-1079.12"/>
</a>
</g>
<g id="a_edge38&#45;label"><a xlink:title="crypto/x509.(*Certificate).buildChains &#45;&gt; crypto/x509.(*Certificate).buildChains.func1 (10ms)">
<text text-anchor="middle" x="847" y="-1090.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N29&#45;&gt;N26 -->
<g id="edge39" class="edge">
<title>N29&#45;&gt;N26</title>
<g id="a_edge39"><a xlink:title="crypto/x509.(*Certificate).buildChains.func1 &#45;&gt; crypto/x509.(*Certificate).CheckSignatureFrom (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-1015.88C825,-1003.42 825,-988.32 825,-975.19"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-975.17 825,-965.17 821.5,-975.17 828.5,-975.17"/>
</a>
</g>
<g id="a_edge39&#45;label"><a xlink:title="crypto/x509.(*Certificate).buildChains.func1 &#45;&gt; crypto/x509.(*Certificate).CheckSignatureFrom (10ms)">
<text text-anchor="middle" x="847" y="-986.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N30&#45;&gt;N15 -->
<g id="edge40" class="edge">
<title>N30&#45;&gt;N15</title>
<g id="a_edge40"><a xlink:title="crypto/x509.checkSignature &#45;&gt; crypto/ecdsa.VerifyASN1 (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M825,-814.94C825,-801.39 825,-782.18 825,-766.47"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="828.5,-766.26 825,-756.26 821.5,-766.26 828.5,-766.26"/>
</a>
</g>
<g id="a_edge40&#45;label"><a xlink:title="crypto/x509.checkSignature &#45;&gt; crypto/ecdsa.VerifyASN1 (10ms)">
<text text-anchor="middle" x="847" y="-781.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N31 -->
<g id="node31" class="node">
<title>N31</title>
<g id="a_node31"><a xlink:title="github.com/cppforlife/cobrautil.WrapRunEForCmd.func1.1 (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1458 522.5,-1458 522.5,-1405 617.5,-1405 617.5,-1458"/>
<text text-anchor="middle" x="570" y="-1447.6" font-family="Times,serif" font-size="8.00">cobrautil</text>
<text text-anchor="middle" x="570" y="-1438.6" font-family="Times,serif" font-size="8.00">WrapRunEForCmd</text>
<text text-anchor="middle" x="570" y="-1429.6" font-family="Times,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="570" y="-1420.6" font-family="Times,serif" font-size="8.00">1</text>
<text text-anchor="middle" x="570" y="-1411.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N38 -->
<g id="node38" class="node">
<title>N38</title>
<g id="a_node38"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.NewPullCmd.func1 (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1354 522.5,-1354 522.5,-1310 617.5,-1310 617.5,-1354"/>
<text text-anchor="middle" x="570" y="-1343.6" font-family="Times,serif" font-size="8.00">cmd</text>
<text text-anchor="middle" x="570" y="-1334.6" font-family="Times,serif" font-size="8.00">NewPullCmd</text>
<text text-anchor="middle" x="570" y="-1325.6" font-family="Times,serif" font-size="8.00">func1</text>
<text text-anchor="middle" x="570" y="-1316.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N31&#45;&gt;N38 -->
<g id="edge1" class="edge">
<title>N31&#45;&gt;N38</title>
<g id="a_edge1"><a xlink:title="github.com/cppforlife/cobrautil.WrapRunEForCmd.func1.1 &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.NewPullCmd.func1 (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1404.88C570,-1392.42 570,-1377.32 570,-1364.19"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1364.17 570,-1354.17 565.63,-1364.17 574.38,-1364.17"/>
</a>
</g>
<g id="a_edge1&#45;label"><a xlink:title="github.com/cppforlife/cobrautil.WrapRunEForCmd.func1.1 &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.NewPullCmd.func1 (40ms)">
<text text-anchor="middle" x="592" y="-1375.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N32 -->
<g id="node32" class="node">
<title>N32</title>
<g id="a_node32"><a xlink:title="github.com/spf13/cobra.(*Command).Execute (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1743 522.5,-1743 522.5,-1699 617.5,-1699 617.5,-1743"/>
<text text-anchor="middle" x="570" y="-1732.6" font-family="Times,serif" font-size="8.00">cobra</text>
<text text-anchor="middle" x="570" y="-1723.6" font-family="Times,serif" font-size="8.00">(*Command)</text>
<text text-anchor="middle" x="570" y="-1714.6" font-family="Times,serif" font-size="8.00">Execute</text>
<text text-anchor="middle" x="570" y="-1705.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N33 -->
<g id="node33" class="node">
<title>N33</title>
<g id="a_node33"><a xlink:title="github.com/spf13/cobra.(*Command).ExecuteC (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1648 522.5,-1648 522.5,-1604 617.5,-1604 617.5,-1648"/>
<text text-anchor="middle" x="570" y="-1637.6" font-family="Times,serif" font-size="8.00">cobra</text>
<text text-anchor="middle" x="570" y="-1628.6" font-family="Times,serif" font-size="8.00">(*Command)</text>
<text text-anchor="middle" x="570" y="-1619.6" font-family="Times,serif" font-size="8.00">ExecuteC</text>
<text text-anchor="middle" x="570" y="-1610.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N32&#45;&gt;N33 -->
<g id="edge2" class="edge">
<title>N32&#45;&gt;N33</title>
<g id="a_edge2"><a xlink:title="github.com/spf13/cobra.(*Command).Execute &#45;&gt; github.com/spf13/cobra.(*Command).ExecuteC (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1698.9C570,-1686.89 570,-1671.62 570,-1658.24"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1658.02 570,-1648.02 565.63,-1658.02 574.38,-1658.02"/>
</a>
</g>
<g id="a_edge2&#45;label"><a xlink:title="github.com/spf13/cobra.(*Command).Execute &#45;&gt; github.com/spf13/cobra.(*Command).ExecuteC (40ms)">
<text text-anchor="middle" x="592" y="-1669.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N34 -->
<g id="node34" class="node">
<title>N34</title>
<g id="a_node34"><a xlink:title="github.com/spf13/cobra.(*Command).execute (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1553 522.5,-1553 522.5,-1509 617.5,-1509 617.5,-1553"/>
<text text-anchor="middle" x="570" y="-1542.6" font-family="Times,serif" font-size="8.00">cobra</text>
<text text-anchor="middle" x="570" y="-1533.6" font-family="Times,serif" font-size="8.00">(*Command)</text>
<text text-anchor="middle" x="570" y="-1524.6" font-family="Times,serif" font-size="8.00">execute</text>
<text text-anchor="middle" x="570" y="-1515.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N33&#45;&gt;N34 -->
<g id="edge3" class="edge">
<title>N33&#45;&gt;N34</title>
<g id="a_edge3"><a xlink:title="github.com/spf13/cobra.(*Command).ExecuteC &#45;&gt; github.com/spf13/cobra.(*Command).execute (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1603.9C570,-1591.89 570,-1576.62 570,-1563.24"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1563.02 570,-1553.02 565.63,-1563.02 574.38,-1563.02"/>
</a>
</g>
<g id="a_edge3&#45;label"><a xlink:title="github.com/spf13/cobra.(*Command).ExecuteC &#45;&gt; github.com/spf13/cobra.(*Command).execute (40ms)">
<text text-anchor="middle" x="592" y="-1574.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N34&#45;&gt;N31 -->
<g id="edge4" class="edge">
<title>N34&#45;&gt;N31</title>
<g id="a_edge4"><a xlink:title="github.com/spf13/cobra.(*Command).execute &#45;&gt; github.com/cppforlife/cobrautil.WrapRunEForCmd.func1.1 (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1508.84C570,-1496.97 570,-1481.85 570,-1468.19"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1468.12 570,-1458.12 565.63,-1468.12 574.38,-1468.12"/>
</a>
</g>
<g id="a_edge4&#45;label"><a xlink:title="github.com/spf13/cobra.(*Command).execute &#45;&gt; github.com/cppforlife/cobrautil.WrapRunEForCmd.func1.1 (40ms)">
<text text-anchor="middle" x="592" y="-1479.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N35 -->
<g id="node35" class="node">
<title>N35</title>
<g id="a_node35"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).Pull (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1164 522.5,-1164 522.5,-1120 617.5,-1120 617.5,-1164"/>
<text text-anchor="middle" x="570" y="-1153.6" font-family="Times,serif" font-size="8.00">bundle</text>
<text text-anchor="middle" x="570" y="-1144.6" font-family="Times,serif" font-size="8.00">(*Bundle)</text>
<text text-anchor="middle" x="570" y="-1135.6" font-family="Times,serif" font-size="8.00">Pull</text>
<text text-anchor="middle" x="570" y="-1126.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N36 -->
<g id="node36" class="node">
<title>N36</title>
<g id="a_node36"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).pull (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1064.5 522.5,-1064.5 522.5,-1020.5 617.5,-1020.5 617.5,-1064.5"/>
<text text-anchor="middle" x="570" y="-1054.1" font-family="Times,serif" font-size="8.00">bundle</text>
<text text-anchor="middle" x="570" y="-1045.1" font-family="Times,serif" font-size="8.00">(*Bundle)</text>
<text text-anchor="middle" x="570" y="-1036.1" font-family="Times,serif" font-size="8.00">pull</text>
<text text-anchor="middle" x="570" y="-1027.1" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N35&#45;&gt;N36 -->
<g id="edge5" class="edge">
<title>N35&#45;&gt;N36</title>
<g id="a_edge5"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).Pull &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).pull (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1119.84C570,-1106.68 570,-1089.52 570,-1074.81"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1074.61 570,-1064.61 565.63,-1074.61 574.38,-1074.61"/>
</a>
</g>
<g id="a_edge5&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).Pull &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).pull (40ms)">
<text text-anchor="middle" x="592" y="-1090.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N36&#45;&gt;N3 -->
<g id="edge6" class="edge">
<title>N36&#45;&gt;N3</title>
<g id="a_edge6"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).pull &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1020.34C570,-1007.18 570,-990.02 570,-975.31"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-975.11 570,-965.11 565.63,-975.11 574.38,-975.11"/>
</a>
</g>
<g id="a_edge6&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).pull &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).AsDirectory (40ms)">
<text text-anchor="middle" x="592" y="-986.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N37 -->
<g id="node37" class="node">
<title>N37</title>
<g id="a_node37"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.(*PullOptions).Run (40ms)">
<polygon fill="#edd6d5" stroke="#b20b00" points="617.5,-1259 522.5,-1259 522.5,-1215 617.5,-1215 617.5,-1259"/>
<text text-anchor="middle" x="570" y="-1248.6" font-family="Times,serif" font-size="8.00">cmd</text>
<text text-anchor="middle" x="570" y="-1239.6" font-family="Times,serif" font-size="8.00">(*PullOptions)</text>
<text text-anchor="middle" x="570" y="-1230.6" font-family="Times,serif" font-size="8.00">Run</text>
<text text-anchor="middle" x="570" y="-1221.6" font-family="Times,serif" font-size="8.00">0 of 40ms (80.00%)</text>
</a>
</g>
</g>
<!-- N37&#45;&gt;N35 -->
<g id="edge7" class="edge">
<title>N37&#45;&gt;N35</title>
<g id="a_edge7"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.(*PullOptions).Run &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).Pull (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1214.9C570,-1202.89 570,-1187.62 570,-1174.24"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1174.02 570,-1164.02 565.63,-1174.02 574.38,-1174.02"/>
</a>
</g>
<g id="a_edge7&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.(*PullOptions).Run &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/bundle.(*Bundle).Pull (40ms)">
<text text-anchor="middle" x="592" y="-1185.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N38&#45;&gt;N37 -->
<g id="edge8" class="edge">
<title>N38&#45;&gt;N37</title>
<g id="a_edge8"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.NewPullCmd.func1 &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.(*PullOptions).Run (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1309.9C570,-1297.89 570,-1282.62 570,-1269.24"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1269.02 570,-1259.02 565.63,-1269.02 574.38,-1269.02"/>
</a>
</g>
<g id="a_edge8&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.NewPullCmd.func1 &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/cmd.(*PullOptions).Run (40ms)">
<text text-anchor="middle" x="592" y="-1280.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
</a>
</g>
</g>
<!-- N39 -->
<g id="node39" class="node">
<title>N39</title>
<g id="a_node39"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).extractTarEntry (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="617.5,-760 522.5,-760 522.5,-716 617.5,-716 617.5,-760"/>
<text text-anchor="middle" x="570" y="-749.6" font-family="Times,serif" font-size="8.00">image</text>
<text text-anchor="middle" x="570" y="-740.6" font-family="Times,serif" font-size="8.00">(*DirImage)</text>
<text text-anchor="middle" x="570" y="-731.6" font-family="Times,serif" font-size="8.00">extractTarEntry</text>
<text text-anchor="middle" x="570" y="-722.6" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N39&#45;&gt;N4 -->
<g id="edge17" class="edge">
<title>N39&#45;&gt;N4</title>
<g id="a_edge17"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).extractTarEntry &#45;&gt; io.Copy (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M555.17,-715.92C542.79,-698.33 525.1,-673.19 511.93,-654.47"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="514.66,-652.28 506.05,-646.12 508.94,-656.31 514.66,-652.28"/>
</a>
</g>
<g id="a_edge17&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).extractTarEntry &#45;&gt; io.Copy (30ms)">
<text text-anchor="middle" x="569.5" y="-686.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
<text text-anchor="middle" x="569.5" y="-671.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N40&#45;&gt;N39 -->
<g id="edge18" class="edge">
<title>N40&#45;&gt;N39</title>
<g id="a_edge18"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).writeLayer &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).extractTarEntry (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M570,-810.9C570,-798.89 570,-783.62 570,-770.24"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="573.5,-770.02 570,-760.02 566.5,-770.02 573.5,-770.02"/>
</a>
</g>
<g id="a_edge18&#45;label"><a xlink:title="github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).writeLayer &#45;&gt; github.com/vmware&#45;tanzu/carvel&#45;imgpkg/pkg/imgpkg/image.(*DirImage).extractTarEntry (30ms)">
<text text-anchor="middle" x="592" y="-781.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N41 -->
<g id="node41" class="node">
<title>N41</title>
<g id="a_node41"><a xlink:title="internal/syscall/unix.Unlinkat (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="730.5,-536 635.5,-536 635.5,-500 730.5,-500 730.5,-536"/>
<text text-anchor="middle" x="683" y="-525.1" font-family="Times,serif" font-size="8.00">unix</text>
<text text-anchor="middle" x="683" y="-516.1" font-family="Times,serif" font-size="8.00">Unlinkat</text>
<text text-anchor="middle" x="683" y="-507.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N41&#45;&gt;N7 -->
<g id="edge42" class="edge">
<title>N41&#45;&gt;N7</title>
<g id="a_edge42"><a xlink:title="internal/syscall/unix.Unlinkat &#45;&gt; syscall.Syscall (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M683,-499.66C683,-487.52 683,-470.75 683,-455.12"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="686.5,-455.07 683,-445.07 679.5,-455.07 686.5,-455.07"/>
</a>
</g>
<g id="a_edge42&#45;label"><a xlink:title="internal/syscall/unix.Unlinkat &#45;&gt; syscall.Syscall (10ms)">
<text text-anchor="middle" x="705" y="-466.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N42&#45;&gt;N32 -->
<g id="edge9" class="edge">
<title>N42&#45;&gt;N32</title>
<g id="a_edge9"><a xlink:title="main.main &#45;&gt; github.com/spf13/cobra.(*Command).Execute (40ms)">
<path fill="none" stroke="#b20b00" stroke-width="5" d="M570,-1812.65C570,-1796.65 570,-1772.52 570,-1753.18"/>
<polygon fill="#b20b00" stroke="#b20b00" stroke-width="5" points="574.38,-1753.01 570,-1743.01 565.63,-1753.01 574.38,-1753.01"/>
</a>
</g>
<g id="a_edge9&#45;label"><a xlink:title="main.main &#45;&gt; github.com/spf13/cobra.(*Command).Execute (40ms)">
<text text-anchor="middle" x="597.5" y="-1779.8" font-family="Times,serif" font-size="14.00"> 40ms</text>
<text text-anchor="middle" x="597.5" y="-1764.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N45 -->
<g id="node45" class="node">
<title>N45</title>
<g id="a_node45"><a xlink:title="os.genericReadFrom (30ms)">
<polygon fill="#edd8d5" stroke="#b21900" points="465.5,-756 370.5,-756 370.5,-720 465.5,-720 465.5,-756"/>
<text text-anchor="middle" x="418" y="-745.1" font-family="Times,serif" font-size="8.00">os</text>
<text text-anchor="middle" x="418" y="-736.1" font-family="Times,serif" font-size="8.00">genericReadFrom</text>
<text text-anchor="middle" x="418" y="-727.1" font-family="Times,serif" font-size="8.00">0 of 30ms (60.00%)</text>
</a>
</g>
</g>
<!-- N43&#45;&gt;N45 -->
<g id="edge22" class="edge">
<title>N43&#45;&gt;N45</title>
<g id="a_edge22"><a xlink:title="os.(*File).ReadFrom &#45;&gt; os.genericReadFrom (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M418,-810.9C418,-797.74 418,-780.68 418,-766.48"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="421.5,-766.28 418,-756.28 414.5,-766.28 421.5,-766.28"/>
</a>
</g>
<g id="a_edge22&#45;label"><a xlink:title="os.(*File).ReadFrom &#45;&gt; os.genericReadFrom (30ms)">
<text text-anchor="middle" x="440" y="-781.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
</a>
</g>
</g>
<!-- N46 -->
<g id="node46" class="node">
<title>N46</title>
<g id="a_node46"><a xlink:title="os.removeAll (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="730.5,-756 635.5,-756 635.5,-720 730.5,-720 730.5,-756"/>
<text text-anchor="middle" x="683" y="-745.1" font-family="Times,serif" font-size="8.00">os</text>
<text text-anchor="middle" x="683" y="-736.1" font-family="Times,serif" font-size="8.00">removeAll</text>
<text text-anchor="middle" x="683" y="-727.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N44&#45;&gt;N46 -->
<g id="edge44" class="edge">
<title>N44&#45;&gt;N46</title>
<g id="a_edge44"><a xlink:title="os.RemoveAll &#45;&gt; os.removeAll (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M683,-814.94C683,-801.39 683,-782.18 683,-766.47"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="686.5,-766.26 683,-756.26 679.5,-766.26 686.5,-766.26"/>
</a>
</g>
<g id="a_edge44&#45;label"><a xlink:title="os.RemoveAll &#45;&gt; os.removeAll (10ms)">
<text text-anchor="middle" x="705" y="-781.8" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N45&#45;&gt;N4 -->
<g id="edge23" class="edge">
<title>N45&#45;&gt;N4</title>
<g id="a_edge23"><a xlink:title="os.genericReadFrom &#45;&gt; io.Copy (30ms)">
<path fill="none" stroke="#b21900" stroke-width="4" d="M415.59,-719.97C414.39,-705.06 414.92,-683.42 425,-668 429.09,-661.74 434.55,-656.39 440.61,-651.83"/>
<polygon fill="#b21900" stroke="#b21900" stroke-width="4" points="442.81,-654.57 449.18,-646.1 438.93,-648.75 442.81,-654.57"/>
</a>
</g>
<g id="a_edge23&#45;label"><a xlink:title="os.genericReadFrom &#45;&gt; io.Copy (30ms)">
<text text-anchor="middle" x="452.5" y="-686.8" font-family="Times,serif" font-size="14.00"> 30ms</text>
<text text-anchor="middle" x="452.5" y="-671.8" font-family="Times,serif" font-size="14.00"> (inline)</text>
</a>
</g>
</g>
<!-- N47 -->
<g id="node47" class="node">
<title>N47</title>
<g id="a_node47"><a xlink:title="os.removeAllFrom (10ms)">
<polygon fill="#edded5" stroke="#b24400" points="730.5,-646 635.5,-646 635.5,-610 730.5,-610 730.5,-646"/>
<text text-anchor="middle" x="683" y="-635.1" font-family="Times,serif" font-size="8.00">os</text>
<text text-anchor="middle" x="683" y="-626.1" font-family="Times,serif" font-size="8.00">removeAllFrom</text>
<text text-anchor="middle" x="683" y="-617.1" font-family="Times,serif" font-size="8.00">0 of 10ms (20.00%)</text>
</a>
</g>
</g>
<!-- N46&#45;&gt;N47 -->
<g id="edge45" class="edge">
<title>N46&#45;&gt;N47</title>
<g id="a_edge45"><a xlink:title="os.removeAll &#45;&gt; os.removeAllFrom (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M683,-719.65C683,-702.56 683,-676.22 683,-656.32"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="686.5,-656.31 683,-646.31 679.5,-656.31 686.5,-656.31"/>
</a>
</g>
<g id="a_edge45&#45;label"><a xlink:title="os.removeAll &#45;&gt; os.removeAllFrom (10ms)">
<text text-anchor="middle" x="705" y="-679.3" font-family="Times,serif" font-size="14.00"> 10ms</text>
</a>
</g>
</g>
<!-- N47&#45;&gt;N41 -->
<g id="edge46" class="edge">
<title>N47&#45;&gt;N41</title>
<g id="a_edge46"><a xlink:title="os.removeAllFrom &#45;&gt; internal/syscall/unix.Unlinkat (10ms)">
<path fill="none" stroke="#b24400" stroke-width="2" d="M683,-609.65C683,-592.56 683,-566.22 683,-546.32"/>
<polygon fill="#b24400" stroke="#b24400" stroke-width="2" points="686.5,-546.31 683,-536.31 679.5,-546.31 686.5,-546.31"/>
</a>
</g>
<g id="a_edge46&#45;label"><a xlink:title="os.removeAllFrom &#45;&gt; internal/syscall/unix.Unlinkat (10ms)">
<text text-anchor="middle" x="705" y="-569.3" font-family="Times,serif" font-size="14.00"> 10ms</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