developers/zcash-zf-dag.html

792 lines
60 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="1084pt" height="2922pt"
viewBox="0.00 0.00 1084.00 2922.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2918)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2918 1080,-2918 1080,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-291.5 260,-1461.5 796,-1461.5 796,-291.5 260,-291.5"/>
<text text-anchor="middle" x="528" y="-1446.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release Candidates</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="528,-1469.5 528,-1662.5 816,-1662.5 816,-1469.5 528,-1469.5"/>
<text text-anchor="middle" x="672" y="-1647.3" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra release candidate&#10;binaries should be linked&#10;from ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1430.5 268,-1430.5 268,-1362.5 500,-1362.5 500,-1430.5"/>
<text text-anchor="middle" x="384" y="-1415.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="384" y="-1400.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="384" y="-1385.3" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="384" y="-1370.3" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#3050</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3050" xlink:title="ZcashFoundation/zebra#3050&#10;Tag Zebra 1.0.0&#45;rc.0&#10;stable release candidate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="788,-1071 556,-1071 556,-1018 788,-1018 788,-1071"/>
<text text-anchor="middle" x="672" y="-1055.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="672" y="-1040.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;rc.0</text>
<text text-anchor="middle" x="672" y="-1025.8" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4967 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#4967</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4967" xlink:title="ZcashFoundation/zebra#4967&#10;feat(rpc): add&#10;getblockhash rpc method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1076,-1106 844,-1106 844,-1102 840,-1102 840,-1098 844,-1098 844,-1061 840,-1061 840,-1057 844,-1057 844,-1053 1076,-1053 1076,-1106"/>
<polyline fill="none" stroke="#000000" points="844,-1102 848,-1102 848,-1098 844,-1098 "/>
<polyline fill="none" stroke="#000000" points="844,-1061 848,-1061 848,-1057 844,-1057 "/>
<text text-anchor="middle" x="960" y="-1090.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4967</text>
<text text-anchor="middle" x="960" y="-1075.8" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): add</text>
<text text-anchor="middle" x="960" y="-1060.8" font-family="Times,serif" font-size="14.00" fill="#000000">getblockhash rpc method</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4967</title>
<path fill="none" stroke="#000000" d="M788.31,-1058.6C803.15,-1060.4 818.4,-1062.3 833.39,-1064.1"/>
<polygon fill="#000000" stroke="#000000" points="833.3612,-1067.6239 843.72,-1065.4 834.2353,-1060.6787 833.3612,-1067.6239"/>
</g>
<!-- ZcashFoundation/zebra#4992 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#4992</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4992" xlink:title="ZcashFoundation/zebra#4992&#10;Run cached state CI on&#10;testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1076,-1035 844,-1035 844,-982 1076,-982 1076,-1035"/>
<text text-anchor="middle" x="960" y="-1019.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4992</text>
<text text-anchor="middle" x="960" y="-1004.8" font-family="Times,serif" font-size="14.00" fill="#000000">Run cached state CI on</text>
<text text-anchor="middle" x="960" y="-989.8" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#3050&#45;&gt;ZcashFoundation/zebra#4992</title>
<path fill="none" stroke="#000000" d="M788.31,-1030C803.15,-1028.1 818.4,-1026.2 833.39,-1024.3"/>
<polygon fill="#000000" stroke="#000000" points="834.2353,-1027.7213 843.72,-1023 833.3612,-1020.7761 834.2353,-1027.7213"/>
</g>
<!-- ZcashFoundation/zebra#4932 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#4932</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4932" xlink:title="ZcashFoundation/zebra#4932&#10;Reduce the frequency of&#10;Zebra performance logs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-1157 268,-1157 268,-1104 500,-1104 500,-1157"/>
<text text-anchor="middle" x="384" y="-1141.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4932</text>
<text text-anchor="middle" x="384" y="-1126.8" font-family="Times,serif" font-size="14.00" fill="#000000">Reduce the frequency of</text>
<text text-anchor="middle" x="384" y="-1111.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra performance logs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4932&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#4932&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M472.76,-1104C504.51,-1094.5 540.49,-1083.8 573.05,-1074"/>
<polygon fill="#000000" stroke="#000000" points="574.4122,-1077.2491 583.04,-1071.1 572.4607,-1070.5266 574.4122,-1077.2491"/>
</g>
<!-- ZcashFoundation/zebra#4894 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#4894</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4894" xlink:title="ZcashFoundation/zebra#4894&#10;Make tests wait until&#10;lightwalletd full sync&#10;goes all the way to the&#10;tip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-1086 268,-1086 268,-1003 500,-1003 500,-1086"/>
<text text-anchor="middle" x="384" y="-1070.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4894</text>
<text text-anchor="middle" x="384" y="-1055.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make tests wait until</text>
<text text-anchor="middle" x="384" y="-1040.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd full sync</text>
<text text-anchor="middle" x="384" y="-1025.8" font-family="Times,serif" font-size="14.00" fill="#000000">goes all the way to the</text>
<text text-anchor="middle" x="384" y="-1010.8" font-family="Times,serif" font-size="14.00" fill="#000000">tip</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#4894&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M500.31,-1044.5C515.15,-1044.5 530.4,-1044.5 545.39,-1044.5"/>
<polygon fill="#000000" stroke="#000000" points="545.72,-1048.0001 555.72,-1044.5 545.72,-1041.0001 545.72,-1048.0001"/>
</g>
<!-- ZcashFoundation/zebra#4778 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#4778</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4778" xlink:title="ZcashFoundation/zebra#4778&#10;Replace old release&#10;criteria with stable&#10;release candidate&#10;criteria in docs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-1258 268,-1258 268,-1175 500,-1175 500,-1258"/>
<text text-anchor="middle" x="384" y="-1242.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4778</text>
<text text-anchor="middle" x="384" y="-1227.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace old release</text>
<text text-anchor="middle" x="384" y="-1212.8" font-family="Times,serif" font-size="14.00" fill="#000000">criteria with stable</text>
<text text-anchor="middle" x="384" y="-1197.8" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate</text>
<text text-anchor="middle" x="384" y="-1182.8" font-family="Times,serif" font-size="14.00" fill="#000000">criteria in docs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#4778&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M484.31,-1174.9C489.67,-1172.1 494.93,-1169.3 500,-1166.5 546.93,-1140.1 596.69,-1103.8 630.55,-1077.7"/>
<polygon fill="#000000" stroke="#000000" points="633.1159,-1080.1346 638.81,-1071.2 628.787,-1074.6336 633.1159,-1080.1346"/>
</g>
<!-- ZcashFoundation/zebra#4882 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#4882</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4882" xlink:title="ZcashFoundation/zebra#4882&#10;Add zcash&#45;lightwalletd /&#10;Build images to required&#10;jobs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-1344.5 268,-1344.5 268,-1276.5 500,-1276.5 500,-1344.5"/>
<text text-anchor="middle" x="384" y="-1329.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4882</text>
<text text-anchor="middle" x="384" y="-1314.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add zcash&#45;lightwalletd /</text>
<text text-anchor="middle" x="384" y="-1299.3" font-family="Times,serif" font-size="14.00" fill="#000000">Build images to required</text>
<text text-anchor="middle" x="384" y="-1284.3" font-family="Times,serif" font-size="14.00" fill="#000000">jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4612 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4612</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4612" xlink:title="ZcashFoundation/zebra#4612&#10;ci: Wait for lightwalletd&#10;image rebuild if it has&#10;changed" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="788,-1631.5 556,-1631.5 556,-1563.5 788,-1563.5 788,-1631.5"/>
<text text-anchor="middle" x="672" y="-1616.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4612</text>
<text text-anchor="middle" x="672" y="-1601.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Wait for lightwalletd</text>
<text text-anchor="middle" x="672" y="-1586.3" font-family="Times,serif" font-size="14.00" fill="#000000">image rebuild if it has</text>
<text text-anchor="middle" x="672" y="-1571.3" font-family="Times,serif" font-size="14.00" fill="#000000">changed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#4882&#45;&gt;ZcashFoundation/zebra#4612</title>
<path fill="none" stroke="#000000" d="M491.6,-1344.6C494.63,-1347.4 497.44,-1350.3 500,-1353.5 556.51,-1423.8 469.24,-1486.1 528,-1554.5 533.56,-1561 540.05,-1566.5 547.14,-1571.2"/>
<polygon fill="#000000" stroke="#000000" points="545.3539,-1574.2101 555.72,-1576.4 548.9821,-1568.2237 545.3539,-1574.2101"/>
</g>
<!-- ZcashFoundation/zebra#4684 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#4684</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4684" xlink:title="ZcashFoundation/zebra#4684&#10;Test that every old&#10;zebrad.toml config still&#10;works" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-984.5 268,-984.5 268,-916.5 500,-916.5 500,-984.5"/>
<text text-anchor="middle" x="384" y="-969.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4684</text>
<text text-anchor="middle" x="384" y="-954.3" font-family="Times,serif" font-size="14.00" fill="#000000">Test that every old</text>
<text text-anchor="middle" x="384" y="-939.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad.toml config still</text>
<text text-anchor="middle" x="384" y="-924.3" font-family="Times,serif" font-size="14.00" fill="#000000">works</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M488.38,-984.57C518.61,-994.43 551.36,-1005.1 580.72,-1014.7"/>
<polygon fill="#000000" stroke="#000000" points="579.9476,-1018.1294 590.54,-1017.9 582.1165,-1011.4739 579.9476,-1018.1294"/>
</g>
<!-- ZcashFoundation/zebra#5011 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#5011</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5011" xlink:title="ZcashFoundation/zebra#5011&#10;Tag Zebra 1.0.0&#45;beta.15&#10;release" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="788,-168 556,-168 556,-115 788,-115 788,-168"/>
<text text-anchor="middle" x="672" y="-152.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5011</text>
<text text-anchor="middle" x="672" y="-137.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;beta.15</text>
<text text-anchor="middle" x="672" y="-122.8" font-family="Times,serif" font-size="14.00" fill="#000000">release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#5011 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#4684&#45;&gt;ZcashFoundation/zebra#5011</title>
<path fill="none" stroke="#000000" d="M492.45,-916.21C495.19,-913.52 497.72,-910.62 500,-907.5 540.65,-851.8 500.4,-350.69 528,-287.5 548.36,-240.88 590.86,-200.82 624.43,-174.52"/>
<polygon fill="#000000" stroke="#000000" points="626.9559,-176.9936 632.76,-168.13 622.6953,-171.4395 626.9559,-176.9936"/>
</g>
<!-- ZcashFoundation/zebra#4929 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#4929</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4929" xlink:title="ZcashFoundation/zebra#4929&#10;Re&#45;enable beta Rust tests&#10;on Ubuntu" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-898 268,-898 268,-845 500,-845 500,-898"/>
<text text-anchor="middle" x="384" y="-882.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4929</text>
<text text-anchor="middle" x="384" y="-867.8" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable beta Rust tests</text>
<text text-anchor="middle" x="384" y="-852.8" font-family="Times,serif" font-size="14.00" fill="#000000">on Ubuntu</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4529 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#4529</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4529" xlink:title="ZcashFoundation/zebra#4529&#10;Make PRs from external&#10;repositories pass or skip&#10;CI jobs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-826.5 268,-826.5 268,-758.5 500,-758.5 500,-826.5"/>
<text text-anchor="middle" x="384" y="-811.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4529</text>
<text text-anchor="middle" x="384" y="-796.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make PRs from external</text>
<text text-anchor="middle" x="384" y="-781.3" font-family="Times,serif" font-size="14.00" fill="#000000">repositories pass or skip</text>
<text text-anchor="middle" x="384" y="-766.3" font-family="Times,serif" font-size="14.00" fill="#000000">CI jobs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4821 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#4821</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4821" xlink:title="ZcashFoundation/zebra#4821&#10;Open the database in a&#10;blocking tokio thread" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-740 268,-740 268,-687 500,-687 500,-740"/>
<text text-anchor="middle" x="384" y="-724.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4821</text>
<text text-anchor="middle" x="384" y="-709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Open the database in a</text>
<text text-anchor="middle" x="384" y="-694.8" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tokio thread</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4834 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#4834</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4834" xlink:title="ZcashFoundation/zebra#4834&#10;Switch zebrad to a non&#45;&#10;blocking tracing logger" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-669 268,-669 268,-616 500,-616 500,-669"/>
<text text-anchor="middle" x="384" y="-653.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4834</text>
<text text-anchor="middle" x="384" y="-638.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch zebrad to a non&#45;</text>
<text text-anchor="middle" x="384" y="-623.8" font-family="Times,serif" font-size="14.00" fill="#000000">blocking tracing logger</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4937 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4937</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4937" xlink:title="ZcashFoundation/zebra#4937&#10;Committing some blocks to&#10;the state takes 15&#10;minutes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-597.5 268,-597.5 268,-529.5 500,-529.5 500,-597.5"/>
<text text-anchor="middle" x="384" y="-582.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4937</text>
<text text-anchor="middle" x="384" y="-567.3" font-family="Times,serif" font-size="14.00" fill="#000000">Committing some blocks to</text>
<text text-anchor="middle" x="384" y="-552.3" font-family="Times,serif" font-size="14.00" fill="#000000">the state takes 15</text>
<text text-anchor="middle" x="384" y="-537.3" font-family="Times,serif" font-size="14.00" fill="#000000">minutes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1638" xlink:title="ZcashFoundation/zebra#1638&#10;Create PGP keys amongst&#10;security@zfnd.org" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-511 268,-511 268,-458 500,-458 500,-511"/>
<text text-anchor="middle" x="384" y="-495.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="384" y="-480.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="384" y="-465.8" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4678 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#4678</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4678" xlink:title="ZcashFoundation/zebra#4678&#10;Return peer metadata from&#10;`connect_isolated`&#10;functions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-439.5 268,-439.5 268,-371.5 500,-371.5 500,-439.5"/>
<text text-anchor="middle" x="384" y="-424.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4678</text>
<text text-anchor="middle" x="384" y="-409.3" font-family="Times,serif" font-size="14.00" fill="#000000">Return peer metadata from</text>
<text text-anchor="middle" x="384" y="-394.3" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="384" y="-379.3" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2001" xlink:title="ZcashFoundation/zebra#2001&#10;Write a draft security&#10;triage RFC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-353 268,-353 268,-300 500,-300 500,-353"/>
<text text-anchor="middle" x="384" y="-337.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="384" y="-322.8" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="384" y="-307.8" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4350 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4350</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4350" xlink:title="ZcashFoundation/zebra#4350&#10;Add GetMempoolTx and&#10;GetMempoolStream gRPC&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="788,-1545.5 556,-1545.5 556,-1477.5 788,-1477.5 788,-1545.5"/>
<text text-anchor="middle" x="672" y="-1530.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4350</text>
<text text-anchor="middle" x="672" y="-1515.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetMempoolTx and</text>
<text text-anchor="middle" x="672" y="-1500.3" font-family="Times,serif" font-size="14.00" fill="#000000">GetMempoolStream gRPC</text>
<text text-anchor="middle" x="672" y="-1485.3" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4350&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#4350&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M672,-1477.1C672,-1345.3 672,-1213.5 672,-1081.7"/>
<polygon fill="#000000" stroke="#000000" points="675.5001,-1081.4 672,-1071.4 668.5001,-1081.4 675.5001,-1081.4"/>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling/Orchard Key&#10;Agreement and KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="227.5,-1562 4.5,-1562 4.5,-1509 227.5,-1509 227.5,-1562"/>
<text text-anchor="middle" x="116" y="-1546.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="116" y="-1531.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard Key</text>
<text text-anchor="middle" x="116" y="-1516.8" font-family="Times,serif" font-size="14.00" fill="#000000">Agreement and KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling/Orchard note&#10;encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="495.5,-1609.5 272.5,-1609.5 272.5,-1541.5 495.5,-1541.5 495.5,-1609.5"/>
<text text-anchor="middle" x="384" y="-1594.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="384" y="-1579.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling/Orchard note</text>
<text text-anchor="middle" x="384" y="-1564.3" font-family="Times,serif" font-size="14.00" fill="#000000">encryption</text>
<text text-anchor="middle" x="384" y="-1549.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M227.72,-1552.2C239.16,-1553.9 250.82,-1555.6 262.36,-1557.3"/>
<polygon fill="#000000" stroke="#000000" points="262.0458,-1560.7938 272.47,-1558.9 263.1401,-1553.8798 262.0458,-1560.7938"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1523 268,-1523 268,-1470 500,-1470 500,-1523"/>
<text text-anchor="middle" x="384" y="-1507.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="384" y="-1492.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="384" y="-1477.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M227.72,-1519.2C237.63,-1517.8 247.7,-1516.3 257.72,-1514.9"/>
<polygon fill="#000000" stroke="#000000" points="258.3406,-1518.3461 267.71,-1513.4 257.3011,-1511.4237 258.3406,-1518.3461"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="227.5,-1618.5 4.5,-1618.5 4.5,-1580.5 227.5,-1580.5 227.5,-1618.5"/>
<text text-anchor="middle" x="116" y="-1603.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="116" y="-1588.3" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2631" xlink:title="ZcashFoundation/zebra#2631&#10;Send committed spent&#10;OutPoints &amp; nullifiers to&#10;the mempool for rejection" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1704.5 0,-1704.5 0,-1636.5 232,-1636.5 232,-1704.5"/>
<text text-anchor="middle" x="116" y="-1689.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="116" y="-1674.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="116" y="-1659.3" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="116" y="-1644.3" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3247" xlink:title="ZcashFoundation/zebra#3247&#10;Tracking: Questions for&#10;Network Audit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1776 0,-1776 0,-1723 232,-1723 232,-1776"/>
<text text-anchor="middle" x="116" y="-1760.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-1745.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-1730.8" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3263 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#3263</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3263" xlink:title="ZcashFoundation/zebra#3263&#10;Security: Remove the&#10;ErrorSlot from the&#10;heartbeat and connection&#10;tasks" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1877 0,-1877 0,-1794 232,-1794 232,-1877"/>
<text text-anchor="middle" x="116" y="-1861.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3263</text>
<text text-anchor="middle" x="116" y="-1846.8" font-family="Times,serif" font-size="14.00" fill="#000000">Security: Remove the</text>
<text text-anchor="middle" x="116" y="-1831.8" font-family="Times,serif" font-size="14.00" fill="#000000">ErrorSlot from the</text>
<text text-anchor="middle" x="116" y="-1816.8" font-family="Times,serif" font-size="14.00" fill="#000000">heartbeat and connection</text>
<text text-anchor="middle" x="116" y="-1801.8" font-family="Times,serif" font-size="14.00" fill="#000000">tasks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1948 0,-1948 0,-1895 232,-1895 232,-1948"/>
<text text-anchor="middle" x="116" y="-1932.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="116" y="-1917.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="116" y="-1902.8" font-family="Times,serif" font-size="14.00" fill="#000000">download` command</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#4953</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4953" xlink:title="ZcashFoundation/zebra#4953&#10;Document how to use&#10;released Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1423 0,-1423 0,-1370 232,-1370 232,-1423"/>
<text text-anchor="middle" x="116" y="-1407.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4953</text>
<text text-anchor="middle" x="116" y="-1392.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to use</text>
<text text-anchor="middle" x="116" y="-1377.8" font-family="Times,serif" font-size="14.00" fill="#000000">released Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#4953&#45;&gt;ZcashFoundation/zebra#1615</title>
<path fill="none" stroke="#000000" d="M232.38,-1396.5C240.71,-1396.5 249.14,-1396.5 257.53,-1396.5"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1400.0001 267.74,-1396.5 257.74,-1393.0001 257.74,-1400.0001"/>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Work out how to release&#10;Zebra binaries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-188 0,-188 0,-135 232,-135 232,-188"/>
<text text-anchor="middle" x="116" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="116" y="-157.8" font-family="Times,serif" font-size="14.00" fill="#000000">Work out how to release</text>
<text text-anchor="middle" x="116" y="-142.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra binaries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4954 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#4954</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4954" xlink:title="ZcashFoundation/zebra#4954&#10;Update release checklist&#10;PR template for the&#10;release candidate series" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-281.5 268,-281.5 268,-213.5 500,-213.5 500,-281.5"/>
<text text-anchor="middle" x="384" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4954</text>
<text text-anchor="middle" x="384" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">Update release checklist</text>
<text text-anchor="middle" x="384" y="-236.3" font-family="Times,serif" font-size="14.00" fill="#000000">PR template for the</text>
<text text-anchor="middle" x="384" y="-221.3" font-family="Times,serif" font-size="14.00" fill="#000000">release candidate series</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4954</title>
<path fill="none" stroke="#000000" d="M198.6,-188C220.63,-195.07 244.85,-202.85 268.3,-210.37"/>
<polygon fill="#000000" stroke="#000000" points="267.3587,-213.7437 277.95,-213.47 269.4997,-207.0792 267.3587,-213.7437"/>
</g>
<!-- ZcashFoundation/zebra#755 -->
<g id="node32" class="node closed">
<title>ZcashFoundation/zebra#755</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/755" xlink:title="ZcashFoundation/zebra#755&#10;Automate zebrad releases" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="495.5,-109.5 272.5,-109.5 272.5,-71.5 495.5,-71.5 495.5,-109.5"/>
<text text-anchor="middle" x="384" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#755</text>
<text text-anchor="middle" x="384" y="-79.3" font-family="Times,serif" font-size="14.00" fill="#000000">Automate zebrad releases</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#755</title>
<path fill="none" stroke="#000000" d="M201.39,-134.96C220.6,-129.28 240.94,-123.49 260,-118.5 268.45,-116.29 277.26,-114.09 286.11,-111.95"/>
<polygon fill="#000000" stroke="#000000" points="287.1747,-115.2943 296.09,-109.57 285.5508,-108.4853 287.1747,-115.2943"/>
</g>
<!-- ZcashFoundation/zebra#4412 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#4412</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4412" xlink:title="ZcashFoundation/zebra#4412&#10;Automate pinning CI&#10;dependencies to specific&#10;commit hashes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-195.5 268,-195.5 268,-127.5 500,-127.5 500,-195.5"/>
<text text-anchor="middle" x="384" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4412</text>
<text text-anchor="middle" x="384" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">Automate pinning CI</text>
<text text-anchor="middle" x="384" y="-150.3" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to specific</text>
<text text-anchor="middle" x="384" y="-135.3" font-family="Times,serif" font-size="14.00" fill="#000000">commit hashes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#1963&#45;&gt;ZcashFoundation/zebra#4412</title>
<path fill="none" stroke="#000000" d="M232.38,-161.5C240.71,-161.5 249.14,-161.5 257.53,-161.5"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-165.0001 267.74,-161.5 257.74,-158.0001 257.74,-165.0001"/>
</g>
<!-- ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4954&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M494.14,-281.63C496.19,-283.48 498.15,-285.44 500,-287.5 598.33,-397.14 654.13,-871.32 668.35,-1007.7"/>
<polygon fill="#000000" stroke="#000000" points="664.8639,-1008.0159 669.38,-1017.6 671.8263,-1007.2915 664.8639,-1008.0159"/>
</g>
<!-- ZcashFoundation/zebra#4767 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#4767</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4767" xlink:title="ZcashFoundation/zebra#4767&#10;Remove duplicate&#10;`orchard` crates, change&#10;dependencies to&#10;`zcash/librustzcash`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2049 0,-2049 0,-1966 232,-1966 232,-2049"/>
<text text-anchor="middle" x="116" y="-2033.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4767</text>
<text text-anchor="middle" x="116" y="-2018.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove duplicate</text>
<text text-anchor="middle" x="116" y="-2003.8" font-family="Times,serif" font-size="14.00" fill="#000000">`orchard` crates, change</text>
<text text-anchor="middle" x="116" y="-1988.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies to</text>
<text text-anchor="middle" x="116" y="-1973.8" font-family="Times,serif" font-size="14.00" fill="#000000">`zcash/librustzcash`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4745 -->
<g id="node35" class="node closed">
<title>ZcashFoundation/zebra#4745</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4745" xlink:title="ZcashFoundation/zebra#4745&#10;Broken, half&#45;done support&#10;for halo2 batch&#10;verification" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-2081.5 268,-2081.5 268,-2077.5 264,-2077.5 264,-2073.5 268,-2073.5 268,-2021.5 264,-2021.5 264,-2017.5 268,-2017.5 268,-2013.5 500,-2013.5 500,-2081.5"/>
<polyline fill="none" stroke="#000000" points="268,-2077.5 272,-2077.5 272,-2073.5 268,-2073.5 "/>
<polyline fill="none" stroke="#000000" points="268,-2021.5 272,-2021.5 272,-2017.5 268,-2017.5 "/>
<text text-anchor="middle" x="384" y="-2066.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4745</text>
<text text-anchor="middle" x="384" y="-2051.3" font-family="Times,serif" font-size="14.00" fill="#000000">Broken, half&#45;done support</text>
<text text-anchor="middle" x="384" y="-2036.3" font-family="Times,serif" font-size="14.00" fill="#000000">for halo2 batch</text>
<text text-anchor="middle" x="384" y="-2021.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4767&#45;&gt;ZcashFoundation/zebra#4745 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#4767&#45;&gt;ZcashFoundation/zebra#4745</title>
<path fill="none" stroke="#000000" d="M232.38,-2024.9C240.81,-2026.1 249.33,-2027.4 257.81,-2028.7"/>
<polygon fill="#000000" stroke="#000000" points="257.3493,-2032.1696 267.74,-2030.1 258.3266,-2025.2381 257.3493,-2032.1696"/>
</g>
<!-- ZcashFoundation/zebra#4672 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#4672</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4672" xlink:title="ZcashFoundation/zebra#4672&#10;Add support for Orchard&#10;proof batch verification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-1995 268,-1995 268,-1942 500,-1942 500,-1995"/>
<text text-anchor="middle" x="384" y="-1979.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4672</text>
<text text-anchor="middle" x="384" y="-1964.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for Orchard</text>
<text text-anchor="middle" x="384" y="-1949.8" font-family="Times,serif" font-size="14.00" fill="#000000">proof batch verification</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4767&#45;&gt;ZcashFoundation/zebra#4672 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#4767&#45;&gt;ZcashFoundation/zebra#4672</title>
<path fill="none" stroke="#000000" d="M232.38,-1990.6C240.81,-1989.3 249.33,-1988.1 257.81,-1986.9"/>
<polygon fill="#000000" stroke="#000000" points="258.375,-1990.3545 267.74,-1985.4 257.3294,-1983.433 258.375,-1990.3545"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node37" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4841" xlink:title="ZcashFoundation/zebra#4841&#10;Improve note commitment&#10;tree append performance" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-2195 268,-2195 268,-2142 500,-2142 500,-2195"/>
<text text-anchor="middle" x="384" y="-2179.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="384" y="-2164.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="384" y="-2149.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4870 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#4870</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4870" xlink:title="ZcashFoundation/zebra#4870&#10;feat(net): return peer&#10;metadata from&#10;`connect_isolated`&#10;functions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2352 0,-2352 0,-2348 -4,-2348 -4,-2344 0,-2344 0,-2277 -4,-2277 -4,-2273 0,-2273 0,-2269 232,-2269 232,-2352"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2348 4,-2348 4,-2344 0,-2344 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2277 4,-2277 4,-2273 0,-2273 "/>
<text text-anchor="middle" x="116" y="-2336.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4870</text>
<text text-anchor="middle" x="116" y="-2321.8" font-family="Times,serif" font-size="14.00" fill="#000000">feat(net): return peer</text>
<text text-anchor="middle" x="116" y="-2306.8" font-family="Times,serif" font-size="14.00" fill="#000000">metadata from</text>
<text text-anchor="middle" x="116" y="-2291.8" font-family="Times,serif" font-size="14.00" fill="#000000">`connect_isolated`</text>
<text text-anchor="middle" x="116" y="-2276.8" font-family="Times,serif" font-size="14.00" fill="#000000">functions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4806 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#4806</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4806" xlink:title="ZcashFoundation/zebra#4806&#10;fix(rpc): Isolate RPC&#10;queries from the rest of&#10;Zebra, to improve&#10;performance" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2453 0,-2453 0,-2449 -4,-2449 -4,-2445 0,-2445 0,-2378 -4,-2378 -4,-2374 0,-2374 0,-2370 232,-2370 232,-2453"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2449 4,-2449 4,-2445 0,-2445 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2378 4,-2378 4,-2374 0,-2374 "/>
<text text-anchor="middle" x="116" y="-2437.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4806</text>
<text text-anchor="middle" x="116" y="-2422.8" font-family="Times,serif" font-size="14.00" fill="#000000">fix(rpc): Isolate RPC</text>
<text text-anchor="middle" x="116" y="-2407.8" font-family="Times,serif" font-size="14.00" fill="#000000">queries from the rest of</text>
<text text-anchor="middle" x="116" y="-2392.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra, to improve</text>
<text text-anchor="middle" x="116" y="-2377.8" font-family="Times,serif" font-size="14.00" fill="#000000">performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4721</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4721" xlink:title="ZcashFoundation/zebra#4721&#10;feat(state): Send&#10;treestate from non&#45;&#10;finalized state to&#10;finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2554 0,-2554 0,-2550 -4,-2550 -4,-2546 0,-2546 0,-2479 -4,-2479 -4,-2475 0,-2475 0,-2471 232,-2471 232,-2554"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2550 4,-2550 4,-2546 0,-2546 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-2479 4,-2479 4,-2475 0,-2475 "/>
<text text-anchor="middle" x="116" y="-2538.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4721</text>
<text text-anchor="middle" x="116" y="-2523.8" font-family="Times,serif" font-size="14.00" fill="#000000">feat(state): Send</text>
<text text-anchor="middle" x="116" y="-2508.8" font-family="Times,serif" font-size="14.00" fill="#000000">treestate from non&#45;</text>
<text text-anchor="middle" x="116" y="-2493.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized state to</text>
<text text-anchor="middle" x="116" y="-2478.8" font-family="Times,serif" font-size="14.00" fill="#000000">finalized state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4784 -->
<g id="node41" class="node closed">
<title>ZcashFoundation/zebra#4784</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4784" xlink:title="ZcashFoundation/zebra#4784&#10;Store only the first tree&#10;state in each identical&#10;series of tree states" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-2589.5 268,-2589.5 268,-2521.5 500,-2521.5 500,-2589.5"/>
<text text-anchor="middle" x="384" y="-2574.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4784</text>
<text text-anchor="middle" x="384" y="-2559.3" font-family="Times,serif" font-size="14.00" fill="#000000">Store only the first tree</text>
<text text-anchor="middle" x="384" y="-2544.3" font-family="Times,serif" font-size="14.00" fill="#000000">state in each identical</text>
<text text-anchor="middle" x="384" y="-2529.3" font-family="Times,serif" font-size="14.00" fill="#000000">series of tree states</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4784 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4784</title>
<path fill="none" stroke="#000000" d="M232.38,-2531.2C240.81,-2532.5 249.33,-2533.9 257.81,-2535.3"/>
<polygon fill="#000000" stroke="#000000" points="257.3294,-2538.767 267.74,-2536.8 258.375,-2531.8455 257.3294,-2538.767"/>
</g>
<!-- ZcashFoundation/zebra#4823 -->
<g id="node42" class="node closed">
<title>ZcashFoundation/zebra#4823</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4823" xlink:title="ZcashFoundation/zebra#4823&#10;Find out which parts of C&#10;ommitBlock/CommitFinalize&#10;dBlock are slow" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-2503.5 268,-2503.5 268,-2435.5 500,-2435.5 500,-2503.5"/>
<text text-anchor="middle" x="384" y="-2488.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4823</text>
<text text-anchor="middle" x="384" y="-2473.3" font-family="Times,serif" font-size="14.00" fill="#000000">Find out which parts of C</text>
<text text-anchor="middle" x="384" y="-2458.3" font-family="Times,serif" font-size="14.00" fill="#000000">ommitBlock/CommitFinalize</text>
<text text-anchor="middle" x="384" y="-2443.3" font-family="Times,serif" font-size="14.00" fill="#000000">dBlock are slow</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4823 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#4721&#45;&gt;ZcashFoundation/zebra#4823</title>
<path fill="none" stroke="#000000" d="M232.38,-2493.8C240.81,-2492.5 249.33,-2491.1 257.81,-2489.7"/>
<polygon fill="#000000" stroke="#000000" points="258.375,-2493.1545 267.74,-2488.2 257.3294,-2486.233 258.375,-2493.1545"/>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4794" xlink:title="ZcashFoundation/zebra#4794&#10;Revert note commitment&#10;and history trees when&#10;forking non&#45;finalized&#10;chains" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2655 0,-2655 0,-2572 232,-2572 232,-2655"/>
<text text-anchor="middle" x="116" y="-2639.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-2624.8" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-2609.8" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-2594.8" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-2579.8" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3096 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#3096</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3096" xlink:title="ZcashFoundation/zebra#3096&#10;Epic: Zebra Release&#10;Candidates" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2726 0,-2726 0,-2673 232,-2673 232,-2726"/>
<text text-anchor="middle" x="116" y="-2710.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3096</text>
<text text-anchor="middle" x="116" y="-2695.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Release</text>
<text text-anchor="middle" x="116" y="-2680.8" font-family="Times,serif" font-size="14.00" fill="#000000">Candidates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4774" xlink:title="ZcashFoundation/zebra#4774&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Orchard&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2251 0,-2251 0,-2168 232,-2168 232,-2251"/>
<text text-anchor="middle" x="116" y="-2235.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-2220.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-2205.8" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-2190.8" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-2175.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge21" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-2191.7C240.81,-2190.4 249.33,-2189.1 257.81,-2187.8"/>
<polygon fill="#000000" stroke="#000000" points="258.375,-2191.2545 267.74,-2186.3 257.3294,-2184.333 258.375,-2191.2545"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4775" xlink:title="ZcashFoundation/zebra#4775&#10;Add an NU5 block test&#10;vector that contains many&#10;shielded Sapling&#10;transactions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2150 0,-2150 0,-2067 232,-2067 232,-2150"/>
<text text-anchor="middle" x="116" y="-2134.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-2119.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-2104.8" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-2089.8" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-2074.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841 -->
<g id="edge22" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-2134.6C240.81,-2136.4 249.33,-2138.3 257.81,-2140.2"/>
<polygon fill="#000000" stroke="#000000" points="257.2081,-2143.6532 267.74,-2142.5 258.7877,-2136.8337 257.2081,-2143.6532"/>
</g>
<!-- ZcashFoundation/zebra#5012 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#5012</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5012" xlink:title="ZcashFoundation/zebra#5012&#10;Run JSON&#45;RPC queries in&#10;multiple threads" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-53 268,-53 268,0 500,0 500,-53"/>
<text text-anchor="middle" x="384" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5012</text>
<text text-anchor="middle" x="384" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">Run JSON&#45;RPC queries in</text>
<text text-anchor="middle" x="384" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">multiple threads</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5012&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge23" class="edge">
<title>ZcashFoundation/zebra#5012&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M489.9,-53.019C493.54,-55.867 496.94,-59.017 500,-62.5 516.14,-80.844 637.71,-831.37 666.09,-1007.7"/>
<polygon fill="#000000" stroke="#000000" points="662.6704,-1008.4805 667.71,-1017.8 669.582,-1007.3719 662.6704,-1008.4805"/>
</g>
<!-- ZcashFoundation/zebra#5012&#45;&gt;ZcashFoundation/zebra#5011 -->
<g id="edge24" class="edge">
<title>ZcashFoundation/zebra#5012&#45;&gt;ZcashFoundation/zebra#5011</title>
<path fill="none" stroke="#000000" d="M473.7,-53.059C482.64,-56.088 491.53,-59.257 500,-62.5 537.01,-76.673 577.32,-95.024 609.61,-110.47"/>
<polygon fill="#000000" stroke="#000000" points="608.3913,-113.7677 618.92,-114.95 611.4267,-107.46 608.3913,-113.7677"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4554" xlink:title="ZcashFoundation/zebra#4554&#10;benchmarks: surface&#10;zebrad mainnet sync time&#10;in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2812.5 0,-2812.5 0,-2744.5 232,-2744.5 232,-2812.5"/>
<text text-anchor="middle" x="116" y="-2797.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-2782.3" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-2767.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-2752.3" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4545" xlink:title="ZcashFoundation/zebra#4545&#10;Start disconnecting from&#10;outdated peers before&#10;network upgrade&#10;activation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-2914 0,-2914 0,-2831 232,-2831 232,-2914"/>
<text text-anchor="middle" x="116" y="-2898.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-2883.8" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-2868.8" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-2853.8" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-2838.8" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node50" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4226" xlink:title="ZcashFoundation/zebra#4226&#10;Prefer faster peers, but&#10;if all peers are slow,&#10;still connect to them" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="500,-2906.5 268,-2906.5 268,-2838.5 500,-2838.5 500,-2906.5"/>
<text text-anchor="middle" x="384" y="-2891.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="384" y="-2876.3" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="384" y="-2861.3" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="384" y="-2846.3" font-family="Times,serif" font-size="14.00" fill="#000000">still connect to them</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226 -->
<g id="edge25" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.38,-2872.5C240.71,-2872.5 249.14,-2872.5 257.53,-2872.5"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-2876.0001 267.74,-2872.5 257.74,-2869.0001 257.74,-2876.0001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>