developers/zcash-zf-dag.html

557 lines
43 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="898pt" height="1923pt"
viewBox="0.00 0.00 898.00 1923.20" 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 1919.198)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1919.198 894,-1919.198 894,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-457.738 260,-564.738 630,-564.738 630,-457.738 260,-457.738"/>
<text text-anchor="middle" x="445" y="-549.538" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#6028 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#6028</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6028" xlink:title="ZcashFoundation/zebra#6028&#10;Document how to mine on&#10;testnet using Zebra and&#10;`s&#45;nomp`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="561,-533.738 329,-533.738 329,-465.738 561,-465.738 561,-533.738"/>
<text text-anchor="middle" x="445" y="-518.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6028</text>
<text text-anchor="middle" x="445" y="-503.538" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to mine on</text>
<text text-anchor="middle" x="445" y="-488.538" font-family="Times,serif" font-size="14.00" fill="#000000">testnet using Zebra and</text>
<text text-anchor="middle" x="445" y="-473.538" font-family="Times,serif" font-size="14.00" fill="#000000">`s&#45;nomp`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6049 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#6049</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6049" xlink:title="ZcashFoundation/zebra#6049&#10;Tag Zebra 1.0.0&#45;rc.5&#10;release" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="890,-331.238 658,-331.238 658,-278.238 890,-278.238 890,-331.238"/>
<text text-anchor="middle" x="774" y="-316.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6049</text>
<text text-anchor="middle" x="774" y="-301.038" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra 1.0.0&#45;rc.5</text>
<text text-anchor="middle" x="774" y="-286.038" font-family="Times,serif" font-size="14.00" fill="#000000">release</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6028&#45;&gt;ZcashFoundation/zebra#6049 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#6028&#45;&gt;ZcashFoundation/zebra#6049</title>
<path fill="none" stroke="#000000" d="M561.43,-483.578C585.1,-477.338 609.12,-468.698 630,-456.738 680.88,-427.578 724.82,-374.798 750.36,-339.758"/>
<polygon fill="#000000" stroke="#000000" points="753.471,-341.4254 756.45,-331.258 747.7807,-337.3485 753.471,-341.4254"/>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5297" xlink:title="ZcashFoundation/zebra#5297&#10;Add metrics for chain&#10;fork work and lengths" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-409.238 0,-409.238 0,-356.238 232,-356.238 232,-409.238"/>
<text text-anchor="middle" x="116" y="-394.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="116" y="-379.038" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="116" y="-364.038" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2375" xlink:title="ZcashFoundation/zebra#2375&#10;Allow different `zebra&#45;&#10;network` apps to use&#10;different user agents" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-633.738 0,-633.738 0,-565.738 232,-565.738 232,-633.738"/>
<text text-anchor="middle" x="116" y="-618.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="116" y="-603.538" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="116" y="-588.538" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="116" y="-573.538" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node5" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/794" xlink:title="ZcashFoundation/zebra#794&#10;Make sure custom user&#10;agents conform to BIP&#45;14" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="556.5,-626.238 333.5,-626.238 333.5,-573.238 556.5,-573.238 556.5,-626.238"/>
<text text-anchor="middle" x="445" y="-611.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="445" y="-596.038" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="445" y="-581.038" font-family="Times,serif" font-size="14.00" fill="#000000">agents conform to BIP&#45;14</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M232.46,-599.738C261.81,-599.738 293.39,-599.738 323.01,-599.738"/>
<polygon fill="#000000" stroke="#000000" points="323.39,-603.2381 333.39,-599.738 323.39,-596.2381 323.39,-603.2381"/>
</g>
<!-- ZcashFoundation/zebra#6134 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#6134</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/6134" xlink:title="ZcashFoundation/zebra#6134&#10;fix(rpc): Add `getblock`&#10;RPC fields to support the&#10;latest version of&#10;`zcash/lightwalletd`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="561,-447.238 329,-447.238 329,-443.238 325,-443.238 325,-439.238 329,-439.238 329,-372.238 325,-372.238 325,-368.238 329,-368.238 329,-364.238 561,-364.238 561,-447.238"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="329,-443.238 333,-443.238 333,-439.238 329,-439.238 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="329,-372.238 333,-372.238 333,-368.238 329,-368.238 "/>
<text text-anchor="middle" x="445" y="-432.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6134</text>
<text text-anchor="middle" x="445" y="-417.038" font-family="Times,serif" font-size="14.00" fill="#000000">fix(rpc): Add `getblock`</text>
<text text-anchor="middle" x="445" y="-402.038" font-family="Times,serif" font-size="14.00" fill="#000000">RPC fields to support the</text>
<text text-anchor="middle" x="445" y="-387.038" font-family="Times,serif" font-size="14.00" fill="#000000">latest version of</text>
<text text-anchor="middle" x="445" y="-372.038" font-family="Times,serif" font-size="14.00" fill="#000000">`zcash/lightwalletd`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6134&#45;&gt;ZcashFoundation/zebra#6049 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#6134&#45;&gt;ZcashFoundation/zebra#6049</title>
<path fill="none" stroke="#000000" d="M561.29,-374.918C584.15,-368.518 607.89,-361.608 630,-354.738 649.76,-348.588 670.89,-341.528 690.7,-334.688"/>
<polygon fill="#000000" stroke="#000000" points="692.0072,-337.9393 700.31,-331.358 689.7152,-331.3251 692.0072,-337.9393"/>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5472" xlink:title="ZcashFoundation/zebra#5472&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Sapling addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-120.734 329,-120.734 329,-52.734 561,-52.734 561,-120.734"/>
<text text-anchor="middle" x="445" y="-105.534" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="445" y="-90.534" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="445" y="-75.534" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="445" y="-60.534" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5929 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#5929</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5929" xlink:title="ZcashFoundation/zebra#5929&#10;Support shielded coinbase&#10;in `getblocktemplate` for&#10;Orchard Unified addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="890,-120.734 658,-120.734 658,-52.734 890,-52.734 890,-120.734"/>
<text text-anchor="middle" x="774" y="-105.534" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5929</text>
<text text-anchor="middle" x="774" y="-90.534" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="774" y="-75.534" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="774" y="-60.534" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Unified addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5472&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M561.46,-86.734C589.36,-86.734 619.29,-86.734 647.62,-86.734"/>
<polygon fill="#000000" stroke="#000000" points="647.98,-90.2341 657.98,-86.734 647.98,-83.2341 647.98,-90.2341"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node9"><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,-705.238 0,-705.238 0,-652.238 232,-652.238 232,-705.238"/>
<text text-anchor="middle" x="116" y="-690.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-675.038" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-660.038" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5336" xlink:title="ZcashFoundation/zebra#5336&#10;Relay and accept mempool&#10;transactions based on the&#10;ZIP&#45;317 fee rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-791.738 0,-791.738 0,-723.738 232,-723.738 232,-791.738"/>
<text text-anchor="middle" x="116" y="-776.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="116" y="-761.538" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="116" y="-746.538" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="116" y="-731.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node11"><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" stroke-width="2" points="232,-877.738 0,-877.738 0,-809.738 232,-809.738 232,-877.738"/>
<text text-anchor="middle" x="116" y="-862.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="116" y="-847.538" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="116" y="-832.538" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="116" y="-817.538" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6132 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#6132</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6132" xlink:title="ZcashFoundation/zebra#6132&#10;Fix &quot;duplicate&#10;transparent spend&quot; caused&#10;by mempool validation&#10;race condition" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="561,-346.238 329,-346.238 329,-263.238 561,-263.238 561,-346.238"/>
<text text-anchor="middle" x="445" y="-331.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6132</text>
<text text-anchor="middle" x="445" y="-316.038" font-family="Times,serif" font-size="14.00" fill="#000000">Fix &quot;duplicate</text>
<text text-anchor="middle" x="445" y="-301.038" font-family="Times,serif" font-size="14.00" fill="#000000">transparent spend&quot; caused</text>
<text text-anchor="middle" x="445" y="-286.038" font-family="Times,serif" font-size="14.00" fill="#000000">by mempool validation</text>
<text text-anchor="middle" x="445" y="-271.038" font-family="Times,serif" font-size="14.00" fill="#000000">race condition</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6132&#45;&gt;ZcashFoundation/zebra#6049 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#6132&#45;&gt;ZcashFoundation/zebra#6049</title>
<path fill="none" stroke="#000000" d="M561.46,-304.738C589.36,-304.738 619.29,-304.738 647.62,-304.738"/>
<polygon fill="#000000" stroke="#000000" points="647.98,-308.2381 657.98,-304.738 647.98,-301.2381 647.98,-308.2381"/>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6037" xlink:title="ZcashFoundation/zebra#6037&#10;Don&#39;t return from long&#10;polling if the block&#10;template is an invalid&#10;block proposal" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-979.238 0,-979.238 0,-896.238 232,-896.238 232,-979.238"/>
<text text-anchor="middle" x="116" y="-964.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="116" y="-949.038" font-family="Times,serif" font-size="14.00" fill="#000000">Don&#39;t return from long</text>
<text text-anchor="middle" x="116" y="-934.038" font-family="Times,serif" font-size="14.00" fill="#000000">polling if the block</text>
<text text-anchor="middle" x="116" y="-919.038" font-family="Times,serif" font-size="14.00" fill="#000000">template is an invalid</text>
<text text-anchor="middle" x="116" y="-904.038" font-family="Times,serif" font-size="14.00" fill="#000000">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6047" xlink:title="ZcashFoundation/zebra#6047&#10;Verify proposals are&#10;valid after sending them&#10;to miners" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-997.738 329,-997.738 329,-929.738 561,-929.738 561,-997.738"/>
<text text-anchor="middle" x="445" y="-982.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="445" y="-967.538" font-family="Times,serif" font-size="14.00" fill="#000000">Verify proposals are</text>
<text text-anchor="middle" x="445" y="-952.538" font-family="Times,serif" font-size="14.00" fill="#000000">valid after sending them</text>
<text text-anchor="middle" x="445" y="-937.538" font-family="Times,serif" font-size="14.00" fill="#000000">to miners</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="#000000" d="M232.46,-946.938C260.48,-949.148 290.55,-951.528 318.99,-953.778"/>
<polygon fill="#000000" stroke="#000000" points="318.7352,-957.2687 328.98,-954.568 319.2871,-950.2905 318.7352,-957.2687"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5604" xlink:title="ZcashFoundation/zebra#5604&#10;Send the same&#10;getblocktemplate RPC&#10;response until the&#10;template would change" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-911.238 329,-911.238 329,-828.238 561,-828.238 561,-911.238"/>
<text text-anchor="middle" x="445" y="-896.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="445" y="-881.038" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="445" y="-866.038" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="445" y="-851.038" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="445" y="-836.038" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M232.46,-913.668C260.48,-907.868 290.55,-901.658 318.99,-895.778"/>
<polygon fill="#000000" stroke="#000000" points="319.8929,-899.1655 328.98,-893.718 318.4792,-892.3098 319.8929,-899.1655"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6025" xlink:title="ZcashFoundation/zebra#6025&#10;Add a manually&#45;triggered&#10;workflow for mining a&#10;block on testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-1108.698 329,-1108.698 329,-1040.698 561,-1040.698 561,-1108.698"/>
<text text-anchor="middle" x="445" y="-1093.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="445" y="-1078.498" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="445" y="-1063.498" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="445" y="-1048.498" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6081 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#6081</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6081" xlink:title="ZcashFoundation/zebra#6081&#10;Implement missing mining&#10;status RPCs or fields" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1180.198 0,-1180.198 0,-1127.198 232,-1127.198 232,-1180.198"/>
<text text-anchor="middle" x="116" y="-1164.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6081</text>
<text text-anchor="middle" x="116" y="-1149.998" font-family="Times,serif" font-size="14.00" fill="#000000">Implement missing mining</text>
<text text-anchor="middle" x="116" y="-1134.998" font-family="Times,serif" font-size="14.00" fill="#000000">status RPCs or fields</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#6083</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6083" xlink:title="ZcashFoundation/zebra#6083&#10;Implement&#10;z_validateaddress RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-156.238 0,-156.238 0,-103.238 232,-103.238 232,-156.238"/>
<text text-anchor="middle" x="116" y="-141.038" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6083</text>
<text text-anchor="middle" x="116" y="-126.038" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="116" y="-111.038" font-family="Times,serif" font-size="14.00" fill="#000000">z_validateaddress RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6049 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6049</title>
<path fill="none" stroke="#000000" d="M150.56,-156.308C178.49,-176.258 219.65,-202.348 260,-215.738 416.9,-267.788 468.72,-217.438 630,-253.738 653.1,-258.938 677.61,-266.708 699.72,-274.638"/>
<polygon fill="#000000" stroke="#000000" points="698.7759,-278.0189 709.37,-278.148 701.1687,-271.4405 698.7759,-278.0189"/>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5472 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5472</title>
<path fill="none" stroke="#000000" d="M232.46,-114.513C260.48,-110.85 290.55,-106.92 318.99,-103.203"/>
<polygon fill="#000000" stroke="#000000" points="319.5176,-106.6639 328.98,-101.898 318.6109,-99.7229 319.5176,-106.6639"/>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M148.8,-103.059C176.54,-82.33 218.32,-55.234 260,-43.734 418.52,0 467.28,-19.9582 630,-43.734 640.98,-45.339 652.29,-47.597 663.51,-50.248"/>
<polygon fill="#000000" stroke="#000000" points="662.7927,-53.6759 673.34,-52.673 664.4694,-46.8797 662.7927,-53.6759"/>
</g>
<!-- ZcashFoundation/zebra#6030 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6030</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6030" xlink:title="ZcashFoundation/zebra#6030&#10;Implement&#10;z_listunifiedreceivers&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-206.738 329,-206.738 329,-138.738 561,-138.738 561,-206.738"/>
<text text-anchor="middle" x="445" y="-191.538" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6030</text>
<text text-anchor="middle" x="445" y="-176.538" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="445" y="-161.538" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
<text text-anchor="middle" x="445" y="-146.538" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6030 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#6083&#45;&gt;ZcashFoundation/zebra#6030</title>
<path fill="none" stroke="#000000" d="M232.46,-144.958C260.48,-148.618 290.55,-152.548 318.99,-156.268"/>
<polygon fill="#000000" stroke="#000000" points="318.6119,-159.7482 328.98,-157.568 319.5153,-152.8068 318.6119,-159.7482"/>
</g>
<!-- ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#6049 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#6049</title>
<path fill="none" stroke="#000000" d="M561.08,-197.638C584.29,-204.068 608.22,-211.758 630,-220.738 663.8,-234.668 699.31,-255.308 726.61,-272.638"/>
<polygon fill="#000000" stroke="#000000" points="724.865,-275.6769 735.17,-278.138 728.6489,-269.7878 724.865,-275.6769"/>
</g>
<!-- ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#5929 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#6030&#45;&gt;ZcashFoundation/zebra#5929</title>
<path fill="none" stroke="#000000" d="M561.23,-146.878C584.09,-141.468 607.85,-135.608 630,-129.738 637.45,-127.758 645.09,-125.668 652.79,-123.508"/>
<polygon fill="#000000" stroke="#000000" points="653.8881,-126.8348 662.56,-120.748 651.9851,-120.0985 653.8881,-126.8348"/>
</g>
<!-- ZcashFoundation/zebra#5700 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#5700</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5700" xlink:title="ZcashFoundation/zebra#5700&#10;Re&#45;use blocks from the&#10;old state when the state&#10;version changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1266.698 0,-1266.698 0,-1198.698 232,-1198.698 232,-1266.698"/>
<text text-anchor="middle" x="116" y="-1251.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5700</text>
<text text-anchor="middle" x="116" y="-1236.498" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;use blocks from the</text>
<text text-anchor="middle" x="116" y="-1221.498" font-family="Times,serif" font-size="14.00" fill="#000000">old state when the state</text>
<text text-anchor="middle" x="116" y="-1206.498" font-family="Times,serif" font-size="14.00" fill="#000000">version changes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5911 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#5911</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5911" xlink:title="ZcashFoundation/zebra#5911&#10;Store the serialized&#10;block size in the&#10;database" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-1266.698 329,-1266.698 329,-1198.698 561,-1198.698 561,-1266.698"/>
<text text-anchor="middle" x="445" y="-1251.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5911</text>
<text text-anchor="middle" x="445" y="-1236.498" font-family="Times,serif" font-size="14.00" fill="#000000">Store the serialized</text>
<text text-anchor="middle" x="445" y="-1221.498" font-family="Times,serif" font-size="14.00" fill="#000000">block size in the</text>
<text text-anchor="middle" x="445" y="-1206.498" font-family="Times,serif" font-size="14.00" fill="#000000">database</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#5700&#45;&gt;ZcashFoundation/zebra#5911</title>
<path fill="none" stroke="#000000" d="M232.46,-1232.698C260.36,-1232.698 290.29,-1232.698 318.62,-1232.698"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1236.1981 328.98,-1232.698 318.98,-1229.1981 318.98,-1236.1981"/>
</g>
<!-- ZcashFoundation/zebra#6118 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#6118</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6118" xlink:title="ZcashFoundation/zebra#6118&#10;Create a Docker image for&#10;mining with Zebra on&#10;Testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1108.698 0,-1108.698 0,-1040.698 232,-1040.698 232,-1108.698"/>
<text text-anchor="middle" x="116" y="-1093.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6118</text>
<text text-anchor="middle" x="116" y="-1078.498" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Docker image for</text>
<text text-anchor="middle" x="116" y="-1063.498" font-family="Times,serif" font-size="14.00" fill="#000000">mining with Zebra on</text>
<text text-anchor="middle" x="116" y="-1048.498" font-family="Times,serif" font-size="14.00" fill="#000000">Testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#6118&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M232.46,-1074.698C260.36,-1074.698 290.29,-1074.698 318.62,-1074.698"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1078.1981 328.98,-1074.698 318.98,-1071.1981 318.98,-1078.1981"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node23" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node23"><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="561,-1404.198 329,-1404.198 329,-1351.198 561,-1351.198 561,-1404.198"/>
<text text-anchor="middle" x="445" y="-1388.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="445" y="-1373.998" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="445" y="-1358.998" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5487" xlink:title="ZcashFoundation/zebra#5487&#10;Return detailed errors&#10;from the `submitblock`&#10;RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1555.698 0,-1555.698 0,-1487.698 232,-1487.698 232,-1555.698"/>
<text text-anchor="middle" x="116" y="-1540.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="116" y="-1525.498" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="116" y="-1510.498" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="116" y="-1495.498" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5709" xlink:title="ZcashFoundation/zebra#5709&#10;Fix repeated block&#10;timeouts during initial&#10;sync" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1641.698 0,-1641.698 0,-1573.698 232,-1573.698 232,-1641.698"/>
<text text-anchor="middle" x="116" y="-1626.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="116" y="-1611.498" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="116" y="-1596.498" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="116" y="-1581.498" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node26" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5425" xlink:title="ZcashFoundation/zebra#5425&#10;Parallelise note&#10;commitment tree point&#10;conversions" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="561,-1641.698 329,-1641.698 329,-1573.698 561,-1573.698 561,-1641.698"/>
<text text-anchor="middle" x="445" y="-1626.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="445" y="-1611.498" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="445" y="-1596.498" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="445" y="-1581.498" font-family="Times,serif" font-size="14.00" fill="#000000">conversions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M232.46,-1607.698C260.36,-1607.698 290.29,-1607.698 318.62,-1607.698"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1611.1981 328.98,-1607.698 318.98,-1604.1981 318.98,-1611.1981"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node27"><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,-1469.198 0,-1469.198 0,-1386.198 232,-1386.198 232,-1469.198"/>
<text text-anchor="middle" x="116" y="-1453.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1438.998" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1423.998" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1408.998" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1393.998" 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="edge17" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.46,-1409.998C260.48,-1405.798 290.55,-1401.198 318.99,-1396.898"/>
<polygon fill="#000000" stroke="#000000" points="319.6106,-1400.3441 328.98,-1395.398 318.5711,-1393.4217 319.6106,-1400.3441"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node28"><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,-1368.198 0,-1368.198 0,-1285.198 232,-1285.198 232,-1368.198"/>
<text text-anchor="middle" x="116" y="-1352.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1337.998" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1322.998" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1307.998" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1292.998" 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="edge18" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.46,-1344.798C260.48,-1349.098 290.55,-1353.798 318.99,-1358.198"/>
<polygon fill="#000000" stroke="#000000" points="318.5523,-1361.6724 328.98,-1359.798 319.6594,-1354.7605 318.5523,-1361.6724"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5502" xlink:title="ZcashFoundation/zebra#5502&#10;Migrate to the latest&#10;version of Abscissa (0.7&#10;or later)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1727.698 0,-1727.698 0,-1659.698 232,-1659.698 232,-1727.698"/>
<text text-anchor="middle" x="116" y="-1712.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="116" y="-1697.498" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="116" y="-1682.498" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="116" y="-1667.498" font-family="Times,serif" font-size="14.00" fill="#000000">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5624" xlink:title="ZcashFoundation/zebra#5624&#10;zebrad: obsolete help&#10;text with the wrong info" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="561,-1720.198 329,-1720.198 329,-1667.198 561,-1667.198 561,-1720.198"/>
<text text-anchor="middle" x="445" y="-1704.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="445" y="-1689.998" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="445" y="-1674.998" font-family="Times,serif" font-size="14.00" fill="#000000">text with the wrong info</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M232.46,-1693.698C260.36,-1693.698 290.29,-1693.698 318.62,-1693.698"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1697.1981 328.98,-1693.698 318.98,-1690.1981 318.98,-1697.1981"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node31"><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,-1813.698 0,-1813.698 0,-1745.698 232,-1745.698 232,-1813.698"/>
<text text-anchor="middle" x="116" y="-1798.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-1783.498" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-1768.498" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-1753.498" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node32"><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,-1915.198 0,-1915.198 0,-1832.198 232,-1832.198 232,-1915.198"/>
<text text-anchor="middle" x="116" y="-1899.998" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-1884.998" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-1869.998" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-1854.998" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-1839.998" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node33" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node33"><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="561,-1907.698 329,-1907.698 329,-1839.698 561,-1839.698 561,-1907.698"/>
<text text-anchor="middle" x="445" y="-1892.498" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="445" y="-1877.498" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="445" y="-1862.498" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="445" y="-1847.498" 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="edge20" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.46,-1873.698C260.36,-1873.698 290.29,-1873.698 318.62,-1873.698"/>
<polygon fill="#000000" stroke="#000000" points="318.98,-1877.1981 328.98,-1873.698 318.98,-1870.1981 318.98,-1877.1981"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>