Skip to content

Instantly share code, notes, and snippets.

@pzduniak
Created January 17, 2016 22:18
Show Gist options
  • Save pzduniak/ad2075fccc781e4d7d7b to your computer and use it in GitHub Desktop.
Save pzduniak/ad2075fccc781e4d7d7b 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.38.0 (20140413.2041)
-->
<!-- Title: _profile 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 1059)">
<title>_profile</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-1059 1222.49,-1059 1222.49,4 -4,4"/>
<g id="clust1" class="cluster"><title>cluster_L</title>
<polygon fill="none" stroke="black" points="8,-895 8,-1047 480,-1047 480,-895 8,-895"/>
</g>
<!-- L -->
<g id="node1" class="node"><title>L</title>
<polygon fill="#f8f8f8" stroke="black" points="471.578,-1039 16.4217,-1039 16.4217,-903 471.578,-903 471.578,-1039"/>
<text text-anchor="start" x="24.2109" y="-1009.4" font-family="Times,serif" font-size="32.00">File: _profile</text>
<text text-anchor="start" x="24.2109" y="-977.4" font-family="Times,serif" font-size="32.00">Type: cpu</text>
<text text-anchor="start" x="24.2109" y="-945.4" font-family="Times,serif" font-size="32.00">1.99s of 2.01s total (99.00%)</text>
<text text-anchor="start" x="24.2109" y="-913.4" font-family="Times,serif" font-size="32.00">Dropped 10 nodes (cum &lt;= 0.01s)</text>
</g>
<!-- N1 -->
<g id="node2" class="node"><title>N1</title>
<g id="a_node2"><a xlink:title="github.com/pzduniak/argon2.bkG (1.28s)">
<polygon fill="#f8f8f8" stroke="black" points="695.52,-402 356.48,-402 356.48,-346 695.52,-346 695.52,-402"/>
<text text-anchor="middle" x="526" y="-378.8" font-family="Times,serif" font-size="24.00">github.com/pzduniak/argon2.bkG</text>
<text text-anchor="middle" x="526" y="-354.8" font-family="Times,serif" font-size="24.00">1.28s(63.68%)</text>
</a>
</g>
</g>
<!-- N2 -->
<g id="node3" class="node"><title>N2</title>
<g id="a_node3"><a xlink:title="github.com/pzduniak/argon2.xorBlock (0.25s)">
<polygon fill="#f8f8f8" stroke="black" points="1014.67,-492.5 751.328,-492.5 751.328,-452.5 1014.67,-452.5 1014.67,-492.5"/>
<text text-anchor="middle" x="883" y="-475.7" font-family="Times,serif" font-size="16.00">github.com/pzduniak/argon2.xorBlock</text>
<text text-anchor="middle" x="883" y="-459.7" font-family="Times,serif" font-size="16.00">0.25s(12.44%)</text>
</a>
</g>
</g>
<!-- N3 -->
<g id="node4" class="node"><title>N3</title>
<g id="a_node4"><a xlink:title="runtime.memmove (0.19s)">
<polygon fill="#f8f8f8" stroke="black" points="1107.72,-296 978.277,-296 978.277,-258 1107.72,-258 1107.72,-296"/>
<text text-anchor="middle" x="1043" y="-280" font-family="Times,serif" font-size="15.00">runtime.memmove</text>
<text text-anchor="middle" x="1043" y="-265" font-family="Times,serif" font-size="15.00">0.19s(9.45%)</text>
</a>
</g>
</g>
<!-- N4 -->
<g id="node5" class="node"><title>N4</title>
<g id="a_node5"><a xlink:title="github.com/pzduniak/argon2.fillBlock (1.85s)">
<polygon fill="#f8f8f8" stroke="black" points="640.617,-593 411.383,-593 411.383,-543 640.617,-543 640.617,-593"/>
<text text-anchor="middle" x="526" y="-577.8" font-family="Times,serif" font-size="14.00">github.com/pzduniak/argon2.fillBlock</text>
<text text-anchor="middle" x="526" y="-563.8" font-family="Times,serif" font-size="14.00">0.13s(6.47%)</text>
<text text-anchor="middle" x="526" y="-549.8" font-family="Times,serif" font-size="14.00">of 1.85s(92.04%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N2 -->
<g id="edge6" class="edge"><title>N4&#45;&gt;N2</title>
<g id="a_edge6"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; github.com/pzduniak/argon2.xorBlock (0.25s)">
<path fill="none" stroke="black" d="M617.936,-542.921C674.241,-528.175 745.708,-509.458 800.241,-495.175"/>
<polygon fill="black" stroke="black" points="801.432,-498.481 810.219,-492.562 799.659,-491.709 801.432,-498.481"/>
</a>
</g>
<g id="a_edge6&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; github.com/pzduniak/argon2.xorBlock (0.25s)">
<text text-anchor="middle" x="753.724" y="-513.8" font-family="Times,serif" font-size="14.00"> 0.25s</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N3 -->
<g id="edge7" class="edge"><title>N4&#45;&gt;N3</title>
<g id="a_edge7"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; runtime.memmove (0.13s)">
<path fill="none" stroke="black" d="M640.747,-565.829C771.351,-561.874 973.197,-546.913 1024,-493 1071.8,-442.272 1060.17,-351.752 1050.23,-306.049"/>
<polygon fill="black" stroke="black" points="1053.63,-305.184 1047.97,-296.224 1046.81,-306.754 1053.63,-305.184"/>
</a>
</g>
<g id="a_edge7&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; runtime.memmove (0.13s)">
<text text-anchor="middle" x="1072.72" y="-422.8" font-family="Times,serif" font-size="14.00"> 0.13s</text>
</a>
</g>
</g>
<!-- N6 -->
<g id="node7" class="node"><title>N6</title>
<g id="a_node7"><a xlink:title="github.com/pzduniak/argon2.blakeRound (1.31s)">
<polygon fill="#f8f8f8" stroke="black" points="625.494,-493 426.506,-493 426.506,-452 625.494,-452 625.494,-493"/>
<text text-anchor="middle" x="526" y="-480.2" font-family="Times,serif" font-size="11.00">github.com/pzduniak/argon2.blakeRound</text>
<text text-anchor="middle" x="526" y="-469.2" font-family="Times,serif" font-size="11.00">0.03s(1.49%)</text>
<text text-anchor="middle" x="526" y="-458.2" font-family="Times,serif" font-size="11.00">of 1.31s(65.17%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N6 -->
<g id="edge4" class="edge"><title>N4&#45;&gt;N6</title>
<g id="a_edge4"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; github.com/pzduniak/argon2.blakeRound (1.31s)">
<path fill="none" stroke="black" stroke-width="4" d="M526,-542.921C526,-530.832 526,-516.073 526,-503.277"/>
<polygon fill="black" stroke="black" stroke-width="4" points="529.5,-503.092 526,-493.092 522.5,-503.092 529.5,-503.092"/>
</a>
</g>
<g id="a_edge4&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; github.com/pzduniak/argon2.blakeRound (1.31s)">
<text text-anchor="middle" x="542.724" y="-513.8" font-family="Times,serif" font-size="14.00"> 1.31s</text>
</a>
</g>
</g>
<!-- N7 -->
<g id="node8" class="node"><title>N7</title>
<g id="a_node8"><a xlink:title="runtime.duffzero (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="733.024,-490.5 642.976,-490.5 642.976,-454.5 733.024,-454.5 733.024,-490.5"/>
<text text-anchor="middle" x="688" y="-474.7" font-family="Times,serif" font-size="11.00">runtime.duffzero</text>
<text text-anchor="middle" x="688" y="-463.7" font-family="Times,serif" font-size="11.00">0.03s(1.49%)</text>
</a>
</g>
</g>
<!-- N4&#45;&gt;N7 -->
<g id="edge16" class="edge"><title>N4&#45;&gt;N7</title>
<g id="a_edge16"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; runtime.duffzero (0.03s)">
<path fill="none" stroke="black" d="M567.719,-542.921C593.018,-528.32 625.063,-509.825 649.714,-495.597"/>
<polygon fill="black" stroke="black" points="651.524,-498.594 658.435,-490.564 648.025,-492.531 651.524,-498.594"/>
</a>
</g>
<g id="a_edge16&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillBlock &#45;&gt; runtime.duffzero (0.03s)">
<text text-anchor="middle" x="638.724" y="-513.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N5 -->
<g id="node6" class="node"><title>N5</title>
<g id="a_node6"><a xlink:title="runtime.memclr (0.05s)">
<polygon fill="#f8f8f8" stroke="black" points="1218.47,-295 1125.53,-295 1125.53,-259 1218.47,-259 1218.47,-295"/>
<text text-anchor="middle" x="1172" y="-279.4" font-family="Times,serif" font-size="12.00">runtime.memclr</text>
<text text-anchor="middle" x="1172" y="-267.4" font-family="Times,serif" font-size="12.00">0.05s(2.49%)</text>
</a>
</g>
</g>
<!-- N6&#45;&gt;N1 -->
<g id="edge5" class="edge"><title>N6&#45;&gt;N1</title>
<g id="a_edge5"><a xlink:title="github.com/pzduniak/argon2.blakeRound &#45;&gt; github.com/pzduniak/argon2.bkG (1.28s)">
<path fill="none" stroke="black" stroke-width="4" d="M526,-451.972C526,-440.561 526,-425.781 526,-412.227"/>
<polygon fill="black" stroke="black" stroke-width="4" points="529.5,-412.178 526,-402.178 522.5,-412.178 529.5,-412.178"/>
</a>
</g>
<g id="a_edge5&#45;label"><a xlink:title="github.com/pzduniak/argon2.blakeRound &#45;&gt; github.com/pzduniak/argon2.bkG (1.28s)">
<text text-anchor="middle" x="542.724" y="-422.8" font-family="Times,serif" font-size="14.00"> 1.28s</text>
</a>
</g>
</g>
<!-- N8 -->
<g id="node9" class="node"><title>N8</title>
<g id="a_node9"><a xlink:title="runtime.mCentral_Grow (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="322.09,-36 207.91,-36 207.91,-0 322.09,-0 322.09,-36"/>
<text text-anchor="middle" x="265" y="-20" font-family="Times,serif" font-size="10.00">runtime.mCentral_Grow</text>
<text text-anchor="middle" x="265" y="-10" font-family="Times,serif" font-size="10.00">0.02s(1%)</text>
</a>
</g>
</g>
<!-- N9 -->
<g id="node10" class="node"><title>N9</title>
<g id="a_node10"><a xlink:title="github.com/pzduniak/argon2.fillSegment (1.89s)">
<polygon fill="#f8f8f8" stroke="black" points="615.692,-767 436.308,-767 436.308,-729 615.692,-729 615.692,-767"/>
<text text-anchor="middle" x="526" y="-755" font-family="Times,serif" font-size="10.00">github.com/pzduniak/argon2.fillSegment</text>
<text text-anchor="middle" x="526" y="-745" font-family="Times,serif" font-size="10.00">0.01s(0.5%)</text>
<text text-anchor="middle" x="526" y="-735" font-family="Times,serif" font-size="10.00">of 1.89s(94.03%)</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N4 -->
<g id="edge3" class="edge"><title>N9&#45;&gt;N4</title>
<g id="a_edge3"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; github.com/pzduniak/argon2.fillBlock (1.83s)">
<path fill="none" stroke="black" stroke-width="5" d="M526,-728.953C526,-699.591 526,-640.992 526,-603.458"/>
<polygon fill="black" stroke="black" stroke-width="5" points="530.375,-603.007 526,-593.007 521.625,-603.007 530.375,-603.007"/>
</a>
</g>
<g id="a_edge3&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; github.com/pzduniak/argon2.fillBlock (1.83s)">
<text text-anchor="middle" x="542.724" y="-656.8" font-family="Times,serif" font-size="14.00"> 1.83s</text>
</a>
</g>
</g>
<!-- N13 -->
<g id="node14" class="node"><title>N13</title>
<g id="a_node14"><a xlink:title="github.com/pzduniak/argon2.generateAddresses (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="490.035,-679 319.965,-679 319.965,-643 490.035,-643 490.035,-679"/>
<text text-anchor="middle" x="405" y="-662.6" font-family="Times,serif" font-size="8.00">github.com/pzduniak/argon2.generateAddresses</text>
<text text-anchor="middle" x="405" y="-654.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(1%)</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N13 -->
<g id="edge21" class="edge"><title>N9&#45;&gt;N13</title>
<g id="a_edge21"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; github.com/pzduniak/argon2.generateAddresses (0.02s)">
<path fill="none" stroke="black" d="M500.339,-728.974C482.089,-716.154 457.424,-698.827 437.753,-685.009"/>
<polygon fill="black" stroke="black" points="439.581,-682.015 429.386,-679.131 435.557,-687.743 439.581,-682.015"/>
</a>
</g>
<g id="a_edge21&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; github.com/pzduniak/argon2.generateAddresses (0.02s)">
<text text-anchor="middle" x="489.724" y="-699.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N21 -->
<g id="node22" class="node"><title>N21</title>
<g id="a_node22"><a xlink:title="runtime.makeslice (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="302.367,-679 227.633,-679 227.633,-643 302.367,-643 302.367,-679"/>
<text text-anchor="middle" x="265" y="-662.6" font-family="Times,serif" font-size="8.00">runtime.makeslice</text>
<text text-anchor="middle" x="265" y="-654.6" font-family="Times,serif" font-size="8.00">0 of 0.03s(1.49%)</text>
</a>
</g>
</g>
<!-- N9&#45;&gt;N21 -->
<g id="edge17" class="edge"><title>N9&#45;&gt;N21</title>
<g id="a_edge17"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; runtime.makeslice (0.03s)">
<path fill="none" stroke="black" d="M466.433,-728.996C425.421,-716.407 369.492,-698.864 312.185,-679.341"/>
<polygon fill="black" stroke="black" points="313.198,-675.989 302.603,-676.063 310.932,-682.612 313.198,-675.989"/>
</a>
</g>
<g id="a_edge17&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillSegment &#45;&gt; runtime.makeslice (0.03s)">
<text text-anchor="middle" x="422.724" y="-699.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N10 -->
<g id="node11" class="node"><title>N10</title>
<g id="a_node11"><a xlink:title="github.com/pzduniak/argon2.Key (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="1124.89,-679 1001.11,-679 1001.11,-643 1124.89,-643 1124.89,-679"/>
<text text-anchor="middle" x="1063" y="-662.6" font-family="Times,serif" font-size="8.00">github.com/pzduniak/argon2.Key</text>
<text text-anchor="middle" x="1063" y="-654.6" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N11 -->
<g id="node12" class="node"><title>N11</title>
<g id="a_node12"><a xlink:title="github.com/pzduniak/argon2.core (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="1150.83,-586 1027.17,-586 1027.17,-550 1150.83,-550 1150.83,-586"/>
<text text-anchor="middle" x="1089" y="-569.6" font-family="Times,serif" font-size="8.00">github.com/pzduniak/argon2.core</text>
<text text-anchor="middle" x="1089" y="-561.6" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N10&#45;&gt;N11 -->
<g id="edge8" class="edge"><title>N10&#45;&gt;N11</title>
<g id="a_edge8"><a xlink:title="github.com/pzduniak/argon2.Key &#45;&gt; github.com/pzduniak/argon2.core (0.11s)">
<path fill="none" stroke="black" d="M1067.89,-642.884C1071.67,-629.665 1076.96,-611.124 1081.31,-595.923"/>
<polygon fill="black" stroke="black" points="1084.75,-596.616 1084.13,-586.04 1078.02,-594.693 1084.75,-596.616"/>
</a>
</g>
<g id="a_edge8&#45;label"><a xlink:title="github.com/pzduniak/argon2.Key &#45;&gt; github.com/pzduniak/argon2.core (0.11s)">
<text text-anchor="middle" x="1092.47" y="-613.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N14 -->
<g id="node15" class="node"><title>N14</title>
<g id="a_node15"><a xlink:title="github.com/pzduniak/argon2.initialize (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="1209.05,-490.5 1070.95,-490.5 1070.95,-454.5 1209.05,-454.5 1209.05,-490.5"/>
<text text-anchor="middle" x="1140" y="-474.1" font-family="Times,serif" font-size="8.00">github.com/pzduniak/argon2.initialize</text>
<text text-anchor="middle" x="1140" y="-466.1" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N11&#45;&gt;N14 -->
<g id="edge9" class="edge"><title>N11&#45;&gt;N14</title>
<g id="a_edge9"><a xlink:title="github.com/pzduniak/argon2.core &#45;&gt; github.com/pzduniak/argon2.initialize (0.11s)">
<path fill="none" stroke="black" d="M1098.35,-549.851C1106.05,-535.748 1117.07,-515.54 1125.84,-499.457"/>
<polygon fill="black" stroke="black" points="1128.99,-500.996 1130.71,-490.541 1122.84,-497.644 1128.99,-500.996"/>
</a>
</g>
<g id="a_edge9&#45;label"><a xlink:title="github.com/pzduniak/argon2.core &#45;&gt; github.com/pzduniak/argon2.initialize (0.11s)">
<text text-anchor="middle" x="1135.47" y="-513.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N12 -->
<g id="node13" class="node"><title>N12</title>
<g id="a_node13"><a xlink:title="github.com/pzduniak/argon2.fillMemoryBlocks.func1 (1.89s)">
<polygon fill="#f8f8f8" stroke="black" points="620.445,-853 431.555,-853 431.555,-817 620.445,-817 620.445,-853"/>
<text text-anchor="middle" x="526" y="-836.6" font-family="Times,serif" font-size="8.00">github.com/pzduniak/argon2.fillMemoryBlocks.func1</text>
<text text-anchor="middle" x="526" y="-828.6" font-family="Times,serif" font-size="8.00">0 of 1.89s(94.03%)</text>
</a>
</g>
</g>
<!-- N12&#45;&gt;N9 -->
<g id="edge1" class="edge"><title>N12&#45;&gt;N9</title>
<g id="a_edge1"><a xlink:title="github.com/pzduniak/argon2.fillMemoryBlocks.func1 &#45;&gt; github.com/pzduniak/argon2.fillSegment (1.89s)">
<path fill="none" stroke="black" stroke-width="5" d="M526,-816.799C526,-805.505 526,-790.464 526,-777.418"/>
<polygon fill="black" stroke="black" stroke-width="5" points="530.375,-777.056 526,-767.056 521.625,-777.056 530.375,-777.056"/>
</a>
</g>
<g id="a_edge1&#45;label"><a xlink:title="github.com/pzduniak/argon2.fillMemoryBlocks.func1 &#45;&gt; github.com/pzduniak/argon2.fillSegment (1.89s)">
<text text-anchor="middle" x="542.724" y="-787.8" font-family="Times,serif" font-size="14.00"> 1.89s</text>
</a>
</g>
</g>
<!-- N13&#45;&gt;N4 -->
<g id="edge22" class="edge"><title>N13&#45;&gt;N4</title>
<g id="a_edge22"><a xlink:title="github.com/pzduniak/argon2.generateAddresses &#45;&gt; github.com/pzduniak/argon2.fillBlock (0.02s)">
<path fill="none" stroke="black" d="M427.759,-642.884C444.052,-630.63 466.426,-613.804 485.706,-599.304"/>
<polygon fill="black" stroke="black" points="487.865,-602.06 493.753,-593.252 483.657,-596.465 487.865,-602.06"/>
</a>
</g>
<g id="a_edge22&#45;label"><a xlink:title="github.com/pzduniak/argon2.generateAddresses &#45;&gt; github.com/pzduniak/argon2.fillBlock (0.02s)">
<text text-anchor="middle" x="486.724" y="-613.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N17 -->
<g id="node18" class="node"><title>N17</title>
<g id="a_node18"><a xlink:title="runtime.growslice (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="1176.98,-392 1103.02,-392 1103.02,-356 1176.98,-356 1176.98,-392"/>
<text text-anchor="middle" x="1140" y="-375.6" font-family="Times,serif" font-size="8.00">runtime.growslice</text>
<text text-anchor="middle" x="1140" y="-367.6" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N14&#45;&gt;N17 -->
<g id="edge10" class="edge"><title>N14&#45;&gt;N17</title>
<g id="a_edge10"><a xlink:title="github.com/pzduniak/argon2.initialize &#45;&gt; runtime.growslice (0.11s)">
<path fill="none" stroke="black" d="M1140,-454.248C1140,-439.839 1140,-419.035 1140,-402.358"/>
<polygon fill="black" stroke="black" points="1143.5,-402.103 1140,-392.103 1136.5,-402.103 1143.5,-402.103"/>
</a>
</g>
<g id="a_edge10&#45;label"><a xlink:title="github.com/pzduniak/argon2.initialize &#45;&gt; runtime.growslice (0.11s)">
<text text-anchor="middle" x="1156.47" y="-422.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N15 -->
<g id="node16" class="node"><title>N15</title>
<g id="a_node16"><a xlink:title="main.main (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="1061.98,-766 988.022,-766 988.022,-730 1061.98,-730 1061.98,-766"/>
<text text-anchor="middle" x="1025" y="-749.6" font-family="Times,serif" font-size="8.00">main.main</text>
<text text-anchor="middle" x="1025" y="-741.6" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N15&#45;&gt;N10 -->
<g id="edge11" class="edge"><title>N15&#45;&gt;N10</title>
<g id="a_edge11"><a xlink:title="main.main &#45;&gt; github.com/pzduniak/argon2.Key (0.11s)">
<path fill="none" stroke="black" d="M1032.69,-729.799C1038,-717.932 1045.15,-701.928 1051.18,-688.449"/>
<polygon fill="black" stroke="black" points="1054.44,-689.733 1055.32,-679.175 1048.04,-686.876 1054.44,-689.733"/>
</a>
</g>
<g id="a_edge11&#45;label"><a xlink:title="main.main &#45;&gt; github.com/pzduniak/argon2.Key (0.11s)">
<text text-anchor="middle" x="1062.47" y="-699.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N16 -->
<g id="node17" class="node"><title>N16</title>
<g id="a_node17"><a xlink:title="runtime.goexit (2.01s)">
<polygon fill="#f8f8f8" stroke="black" points="561.77,-989 490.23,-989 490.23,-953 561.77,-953 561.77,-989"/>
<text text-anchor="middle" x="526" y="-972.6" font-family="Times,serif" font-size="8.00">runtime.goexit</text>
<text text-anchor="middle" x="526" y="-964.6" font-family="Times,serif" font-size="8.00">0 of 2.01s(100%)</text>
</a>
</g>
</g>
<!-- N16&#45;&gt;N12 -->
<g id="edge2" class="edge"><title>N16&#45;&gt;N12</title>
<g id="a_edge2"><a xlink:title="runtime.goexit &#45;&gt; github.com/pzduniak/argon2.fillMemoryBlocks.func1 (1.89s)">
<path fill="none" stroke="black" stroke-width="5" d="M526,-952.756C526,-930.142 526,-890.203 526,-863.419"/>
<polygon fill="black" stroke="black" stroke-width="5" points="530.375,-863.178 526,-853.178 521.625,-863.178 530.375,-863.178"/>
</a>
</g>
<g id="a_edge2&#45;label"><a xlink:title="runtime.goexit &#45;&gt; github.com/pzduniak/argon2.fillMemoryBlocks.func1 (1.89s)">
<text text-anchor="middle" x="542.724" y="-873.8" font-family="Times,serif" font-size="14.00"> 1.89s</text>
</a>
</g>
</g>
<!-- N20 -->
<g id="node21" class="node"><title>N20</title>
<g id="a_node21"><a xlink:title="runtime.main (0.11s)">
<polygon fill="#f8f8f8" stroke="black" points="911.978,-853 838.022,-853 838.022,-817 911.978,-817 911.978,-853"/>
<text text-anchor="middle" x="875" y="-836.6" font-family="Times,serif" font-size="8.00">runtime.main</text>
<text text-anchor="middle" x="875" y="-828.6" font-family="Times,serif" font-size="8.00">0 of 0.11s(5.47%)</text>
</a>
</g>
</g>
<!-- N16&#45;&gt;N20 -->
<g id="edge12" class="edge"><title>N16&#45;&gt;N20</title>
<g id="a_edge12"><a xlink:title="runtime.goexit &#45;&gt; runtime.main (0.11s)">
<path fill="none" stroke="black" d="M562.035,-956.164C625.741,-931.704 758.165,-880.859 828.599,-853.816"/>
<polygon fill="black" stroke="black" points="830.032,-857.015 838.113,-850.163 827.523,-850.48 830.032,-857.015"/>
</a>
</g>
<g id="a_edge12&#45;label"><a xlink:title="runtime.goexit &#45;&gt; runtime.main (0.11s)">
<text text-anchor="middle" x="797.468" y="-873.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N3 -->
<g id="edge14" class="edge"><title>N17&#45;&gt;N3</title>
<g id="a_edge14"><a xlink:title="runtime.growslice &#45;&gt; runtime.memmove (0.06s)">
<path fill="none" stroke="black" d="M1122.21,-355.576C1107.32,-340.99 1085.86,-319.977 1069.03,-303.498"/>
<polygon fill="black" stroke="black" points="1071.26,-300.782 1061.67,-296.285 1066.37,-305.783 1071.26,-300.782"/>
</a>
</g>
<g id="a_edge14&#45;label"><a xlink:title="runtime.growslice &#45;&gt; runtime.memmove (0.06s)">
<text text-anchor="middle" x="1107.72" y="-316.8" font-family="Times,serif" font-size="14.00"> 0.06s</text>
</a>
</g>
</g>
<!-- N17&#45;&gt;N5 -->
<g id="edge15" class="edge"><title>N17&#45;&gt;N5</title>
<g id="a_edge15"><a xlink:title="runtime.growslice &#45;&gt; runtime.memclr (0.05s)">
<path fill="none" stroke="black" d="M1145.87,-355.576C1150.65,-341.381 1157.48,-321.098 1162.96,-304.832"/>
<polygon fill="black" stroke="black" points="1166.29,-305.908 1166.17,-295.314 1159.66,-303.674 1166.29,-305.908"/>
</a>
</g>
<g id="a_edge15&#45;label"><a xlink:title="runtime.growslice &#45;&gt; runtime.memclr (0.05s)">
<text text-anchor="middle" x="1175.72" y="-316.8" font-family="Times,serif" font-size="14.00"> 0.05s</text>
</a>
</g>
</g>
<!-- N18 -->
<g id="node19" class="node"><title>N18</title>
<g id="a_node19"><a xlink:title="runtime.mCache_Refill (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="310.375,-208 219.625,-208 219.625,-172 310.375,-172 310.375,-208"/>
<text text-anchor="middle" x="265" y="-191.6" font-family="Times,serif" font-size="8.00">runtime.mCache_Refill</text>
<text text-anchor="middle" x="265" y="-183.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(1%)</text>
</a>
</g>
</g>
<!-- N19 -->
<g id="node20" class="node"><title>N19</title>
<g id="a_node20"><a xlink:title="runtime.mCentral_CacheSpan (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="321.141,-122 208.859,-122 208.859,-86 321.141,-86 321.141,-122"/>
<text text-anchor="middle" x="265" y="-105.6" font-family="Times,serif" font-size="8.00">runtime.mCentral_CacheSpan</text>
<text text-anchor="middle" x="265" y="-97.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(1%)</text>
</a>
</g>
</g>
<!-- N18&#45;&gt;N19 -->
<g id="edge23" class="edge"><title>N18&#45;&gt;N19</title>
<g id="a_edge23"><a xlink:title="runtime.mCache_Refill &#45;&gt; runtime.mCentral_CacheSpan (0.02s)">
<path fill="none" stroke="black" d="M265,-171.595C265,-160.257 265,-145.227 265,-132.315"/>
<polygon fill="black" stroke="black" points="268.5,-132.095 265,-122.095 261.5,-132.095 268.5,-132.095"/>
</a>
</g>
<g id="a_edge23&#45;label"><a xlink:title="runtime.mCache_Refill &#45;&gt; runtime.mCentral_CacheSpan (0.02s)">
<text text-anchor="middle" x="281.724" y="-142.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N19&#45;&gt;N8 -->
<g id="edge24" class="edge"><title>N19&#45;&gt;N8</title>
<g id="a_edge24"><a xlink:title="runtime.mCentral_CacheSpan &#45;&gt; runtime.mCentral_Grow (0.02s)">
<path fill="none" stroke="black" d="M265,-85.5951C265,-74.2572 265,-59.2271 265,-46.3153"/>
<polygon fill="black" stroke="black" points="268.5,-46.0951 265,-36.0952 261.5,-46.0952 268.5,-46.0951"/>
</a>
</g>
<g id="a_edge24&#45;label"><a xlink:title="runtime.mCentral_CacheSpan &#45;&gt; runtime.mCentral_Grow (0.02s)">
<text text-anchor="middle" x="281.724" y="-56.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N20&#45;&gt;N15 -->
<g id="edge13" class="edge"><title>N20&#45;&gt;N15</title>
<g id="a_edge13"><a xlink:title="runtime.main &#45;&gt; main.main (0.11s)">
<path fill="none" stroke="black" d="M905.355,-816.799C928.609,-803.622 960.866,-785.343 986.028,-771.084"/>
<polygon fill="black" stroke="black" points="987.972,-774.005 994.947,-766.03 984.521,-767.915 987.972,-774.005"/>
</a>
</g>
<g id="a_edge13&#45;label"><a xlink:title="runtime.main &#45;&gt; main.main (0.11s)">
<text text-anchor="middle" x="974.468" y="-787.8" font-family="Times,serif" font-size="14.00"> 0.11s</text>
</a>
</g>
</g>
<!-- N24 -->
<g id="node25" class="node"><title>N24</title>
<g id="a_node25"><a xlink:title="runtime.newarray (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="301.77,-586 228.23,-586 228.23,-550 301.77,-550 301.77,-586"/>
<text text-anchor="middle" x="265" y="-569.6" font-family="Times,serif" font-size="8.00">runtime.newarray</text>
<text text-anchor="middle" x="265" y="-561.6" font-family="Times,serif" font-size="8.00">0 of 0.03s(1.49%)</text>
</a>
</g>
</g>
<!-- N21&#45;&gt;N24 -->
<g id="edge18" class="edge"><title>N21&#45;&gt;N24</title>
<g id="a_edge18"><a xlink:title="runtime.makeslice &#45;&gt; runtime.newarray (0.03s)">
<path fill="none" stroke="black" d="M265,-642.884C265,-629.792 265,-611.48 265,-596.363"/>
<polygon fill="black" stroke="black" points="268.5,-596.04 265,-586.04 261.5,-596.04 268.5,-596.04"/>
</a>
</g>
<g id="a_edge18&#45;label"><a xlink:title="runtime.makeslice &#45;&gt; runtime.newarray (0.03s)">
<text text-anchor="middle" x="281.724" y="-613.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N22 -->
<g id="node23" class="node"><title>N22</title>
<g id="a_node23"><a xlink:title="runtime.mallocgc (0.03s)">
<polygon fill="#f8f8f8" stroke="black" points="301.77,-490.5 228.23,-490.5 228.23,-454.5 301.77,-454.5 301.77,-490.5"/>
<text text-anchor="middle" x="265" y="-474.1" font-family="Times,serif" font-size="8.00">runtime.mallocgc</text>
<text text-anchor="middle" x="265" y="-466.1" font-family="Times,serif" font-size="8.00">0 of 0.03s(1.49%)</text>
</a>
</g>
</g>
<!-- N25 -->
<g id="node26" class="node"><title>N25</title>
<g id="a_node26"><a xlink:title="runtime.systemstack (0.04s)">
<polygon fill="#f8f8f8" stroke="black" points="305.544,-392 224.456,-392 224.456,-356 305.544,-356 305.544,-392"/>
<text text-anchor="middle" x="265" y="-375.6" font-family="Times,serif" font-size="8.00">runtime.systemstack</text>
<text text-anchor="middle" x="265" y="-367.6" font-family="Times,serif" font-size="8.00">0 of 0.04s(1.99%)</text>
</a>
</g>
</g>
<!-- N22&#45;&gt;N25 -->
<g id="edge19" class="edge"><title>N22&#45;&gt;N25</title>
<g id="a_edge19"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.systemstack (0.03s)">
<path fill="none" stroke="black" d="M265,-454.248C265,-439.839 265,-419.035 265,-402.358"/>
<polygon fill="black" stroke="black" points="268.5,-402.103 265,-392.103 261.5,-402.103 268.5,-402.103"/>
</a>
</g>
<g id="a_edge19&#45;label"><a xlink:title="runtime.mallocgc &#45;&gt; runtime.systemstack (0.03s)">
<text text-anchor="middle" x="281.724" y="-422.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N23 -->
<g id="node24" class="node"><title>N23</title>
<g id="a_node24"><a xlink:title="runtime.mallocgc.func2 (0.02s)">
<polygon fill="#f8f8f8" stroke="black" points="311.419,-295 218.581,-295 218.581,-259 311.419,-259 311.419,-295"/>
<text text-anchor="middle" x="265" y="-278.6" font-family="Times,serif" font-size="8.00">runtime.mallocgc.func2</text>
<text text-anchor="middle" x="265" y="-270.6" font-family="Times,serif" font-size="8.00">0 of 0.02s(1%)</text>
</a>
</g>
</g>
<!-- N23&#45;&gt;N18 -->
<g id="edge25" class="edge"><title>N23&#45;&gt;N18</title>
<g id="a_edge25"><a xlink:title="runtime.mallocgc.func2 &#45;&gt; runtime.mCache_Refill (0.02s)">
<path fill="none" stroke="black" d="M265,-258.799C265,-247.163 265,-231.548 265,-218.237"/>
<polygon fill="black" stroke="black" points="268.5,-218.175 265,-208.175 261.5,-218.175 268.5,-218.175"/>
</a>
</g>
<g id="a_edge25&#45;label"><a xlink:title="runtime.mallocgc.func2 &#45;&gt; runtime.mCache_Refill (0.02s)">
<text text-anchor="middle" x="281.724" y="-228.8" font-family="Times,serif" font-size="14.00"> 0.02s</text>
</a>
</g>
</g>
<!-- N24&#45;&gt;N22 -->
<g id="edge20" class="edge"><title>N24&#45;&gt;N22</title>
<g id="a_edge20"><a xlink:title="runtime.newarray &#45;&gt; runtime.mallocgc (0.03s)">
<path fill="none" stroke="black" d="M265,-549.851C265,-536.143 265,-516.669 265,-500.819"/>
<polygon fill="black" stroke="black" points="268.5,-500.541 265,-490.541 261.5,-500.541 268.5,-500.541"/>
</a>
</g>
<g id="a_edge20&#45;label"><a xlink:title="runtime.newarray &#45;&gt; runtime.mallocgc (0.03s)">
<text text-anchor="middle" x="281.724" y="-513.8" font-family="Times,serif" font-size="14.00"> 0.03s</text>
</a>
</g>
</g>
<!-- N25&#45;&gt;N23 -->
<g id="edge26" class="edge"><title>N25&#45;&gt;N23</title>
<g id="a_edge26"><a xlink:title="runtime.systemstack &#45;&gt; runtime.mallocgc.func2 (0.02s)">
<path fill="none" stroke="black" d="M265,-355.576C265,-341.648 265,-321.861 265,-305.757"/>
<polygon fill="black" stroke="black" points="268.5,-305.314 265,-295.314 261.5,-305.314 268.5,-305.314"/>
</a>
</g>
<g id="a_edge26&#45;label"><a xlink:title="runtime.systemstack &#45;&gt; runtime.mallocgc.func2 (0.02s)">
<text text-anchor="middle" x="281.724" y="-316.8" font-family="Times,serif" font-size="14.00"> 0.02s</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