developers/zcash-zf-dag.html

539 lines
41 KiB
HTML

<!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="1052pt" height="1867pt"
viewBox="0.00 0.00 1052.00 1866.50" 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 1862.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1862.5 1048,-1862.5 1048,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-178 260,-457 1044,-457 1044,-178 260,-178"/>
<text text-anchor="middle" x="652" y="-441.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Support for RPC calls used by mining pools</text>
</g>
<!-- ZcashFoundation/zebra#5803 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#5803</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5803" xlink:title="ZcashFoundation/zebra#5803&#10;Manually test the&#10;`getblocktemplate` RPC&#10;creates valid blocks" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-426 268,-426 268,-358 500,-358 500,-426"/>
<text text-anchor="middle" x="384" y="-410.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5803</text>
<text text-anchor="middle" x="384" y="-395.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test the</text>
<text text-anchor="middle" x="384" y="-380.8" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="384" y="-365.8" font-family="Times,serif" font-size="14.00" fill="#000000">creates valid blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5685 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#5685</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5685" xlink:title="ZcashFoundation/zebra#5685&#10;Test the getblocktemplate&#10;RPC&#39;s response as a block&#10;template proposal in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-426 536,-426 536,-358 768,-358 768,-426"/>
<text text-anchor="middle" x="652" y="-410.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5685</text>
<text text-anchor="middle" x="652" y="-395.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test the getblocktemplate</text>
<text text-anchor="middle" x="652" y="-380.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC&#39;s response as a block</text>
<text text-anchor="middle" x="652" y="-365.8" font-family="Times,serif" font-size="14.00" fill="#000000">template proposal in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5803&#45;&gt;ZcashFoundation/zebra#5685 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#5803&#45;&gt;ZcashFoundation/zebra#5685</title>
<path fill="none" stroke="#000000" d="M500.38,-392C508.71,-392 517.14,-392 525.53,-392"/>
<polygon fill="#000000" stroke="#000000" points="525.74,-395.5001 535.74,-392 525.74,-388.5001 525.74,-395.5001"/>
</g>
<!-- ZcashFoundation/zebra#5934 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5934</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5934" xlink:title="ZcashFoundation/zebra#5934&#10;Manually test that Zcash&#10;mining pools can use&#10;Zebra to mine blocks on&#10;testnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-289.5 536,-289.5 536,-206.5 768,-206.5 768,-289.5"/>
<text text-anchor="middle" x="652" y="-274.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5934</text>
<text text-anchor="middle" x="652" y="-259.3" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that Zcash</text>
<text text-anchor="middle" x="652" y="-244.3" font-family="Times,serif" font-size="14.00" fill="#000000">mining pools can use</text>
<text text-anchor="middle" x="652" y="-229.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra to mine blocks on</text>
<text text-anchor="middle" x="652" y="-214.3" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5686 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5686</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5686" xlink:title="ZcashFoundation/zebra#5686&#10;Manually test that each&#10;mining RPC works&#10;correctly" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1036,-282 804,-282 804,-214 1036,-214 1036,-282"/>
<text text-anchor="middle" x="920" y="-266.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5686</text>
<text text-anchor="middle" x="920" y="-251.8" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that each</text>
<text text-anchor="middle" x="920" y="-236.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining RPC works</text>
<text text-anchor="middle" x="920" y="-221.8" font-family="Times,serif" font-size="14.00" fill="#000000">correctly</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5686 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5686</title>
<path fill="none" stroke="#000000" d="M768.38,-248C776.71,-248 785.14,-248 793.53,-248"/>
<polygon fill="#000000" stroke="#000000" points="793.74,-251.5001 803.74,-248 793.74,-244.5001 793.74,-251.5001"/>
</g>
<!-- ZcashFoundation/zebra#5304 -->
<g id="node7" class="node closed">
<title>ZcashFoundation/zebra#5304</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5304" xlink:title="ZcashFoundation/zebra#5304&#10;Check that mining pool&#10;software can connect to&#10;Zebra in CI, but don&#39;t&#10;mine any blocks" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1036,-169.5 804,-169.5 804,-86.5 1036,-86.5 1036,-169.5"/>
<text text-anchor="middle" x="920" y="-154.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5304</text>
<text text-anchor="middle" x="920" y="-139.3" font-family="Times,serif" font-size="14.00" fill="#000000">Check that mining pool</text>
<text text-anchor="middle" x="920" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">software can connect to</text>
<text text-anchor="middle" x="920" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra in CI, but don&#39;t</text>
<text text-anchor="middle" x="920" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">mine any blocks</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5304 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5304</title>
<path fill="none" stroke="#000000" d="M738.53,-206.39C748.48,-201.56 758.47,-196.68 768,-192 784.06,-184.11 787.67,-181.3 804,-174 804.2,-173.91 804.41,-173.82 804.61,-173.73"/>
<polygon fill="#000000" stroke="#000000" points="806.2067,-176.8513 813.95,-169.62 803.3873,-170.4442 806.2067,-176.8513"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node8"><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="1036,-68 804,-68 804,0 1036,0 1036,-68"/>
<text text-anchor="middle" x="920" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="920" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="920" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="920" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M752.81,-206.42C758.34,-202.05 763.47,-197.25 768,-192 803,-151.46 767.12,-115.83 804,-77 804.66,-76.302 805.34,-75.614 806.03,-74.938"/>
<polygon fill="#000000" stroke="#000000" points="808.6021,-77.3375 813.81,-68.111 803.985,-72.076 808.6021,-77.3375"/>
</g>
<!-- ZcashFoundation/zebra#5722 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5722</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5722" xlink:title="ZcashFoundation/zebra#5722&#10;Implement validateaddress&#10;and z_validateaddress&#10;RPCs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-340 268,-340 268,-272 500,-272 500,-340"/>
<text text-anchor="middle" x="384" y="-324.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5722</text>
<text text-anchor="middle" x="384" y="-309.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement validateaddress</text>
<text text-anchor="middle" x="384" y="-294.8" font-family="Times,serif" font-size="14.00" fill="#000000">and z_validateaddress</text>
<text text-anchor="middle" x="384" y="-279.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPCs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M500.38,-280.81C508.81,-278.99 517.33,-277.15 525.81,-275.31"/>
<polygon fill="#000000" stroke="#000000" points="526.7071,-278.6969 535.74,-273.16 525.2258,-271.8555 526.7071,-278.6969"/>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M488.05,-271.98C492.24,-269.21 496.25,-266.22 500,-263 525.04,-241.47 509.08,-217.13 536,-198 621.29,-137.39 685.45,-222.29 768,-158 799.08,-133.79 775.28,-103.96 804,-77 804.95,-76.111 805.91,-75.24 806.9,-74.387"/>
<polygon fill="#000000" stroke="#000000" points="809.0904,-77.1171 814.79,-68.186 804.7649,-71.6135 809.0904,-77.1171"/>
</g>
<!-- ZcashFoundation/zebra#6030 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#6030</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/6030" xlink:title="ZcashFoundation/zebra#6030&#10;Implement&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="768,-149.5 536,-149.5 536,-96.5 768,-96.5 768,-149.5"/>
<text text-anchor="middle" x="652" y="-134.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6030</text>
<text text-anchor="middle" x="652" y="-119.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="652" y="-104.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6030 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6030</title>
<path fill="none" stroke="#000000" d="M489.34,-271.96C493.11,-269.2 496.69,-266.22 500,-263 530.61,-233.28 506.28,-204.62 536,-174 543.2,-166.58 551.66,-160.17 560.68,-154.64"/>
<polygon fill="#000000" stroke="#000000" points="562.535,-157.6111 569.48,-149.61 559.0613,-151.5339 562.535,-157.6111"/>
</g>
<!-- ZcashFoundation/zebra#6028 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#6028</title>
<g id="a_node6"><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;mining pool software" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-254 268,-254 268,-186 500,-186 500,-254"/>
<text text-anchor="middle" x="384" y="-238.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6028</text>
<text text-anchor="middle" x="384" y="-223.8" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to mine on</text>
<text text-anchor="middle" x="384" y="-208.8" font-family="Times,serif" font-size="14.00" fill="#000000">testnet using Zebra and</text>
<text text-anchor="middle" x="384" y="-193.8" font-family="Times,serif" font-size="14.00" fill="#000000">mining pool software</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5297 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#5297</title>
<g id="a_node10"><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,-504.5 0,-504.5 0,-451.5 232,-451.5 232,-504.5"/>
<text text-anchor="middle" x="116" y="-489.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="116" y="-474.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="116" y="-459.3" font-family="Times,serif" font-size="14.00" fill="#000000">fork work and lengths</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2375 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#2375</title>
<g id="a_node11"><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,-591 0,-591 0,-523 232,-523 232,-591"/>
<text text-anchor="middle" x="116" y="-575.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="116" y="-560.8" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="116" y="-545.8" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="116" y="-530.8" font-family="Times,serif" font-size="14.00" fill="#000000">different user agents</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#794 -->
<g id="node12" class="node closed">
<title>ZcashFoundation/zebra#794</title>
<g id="a_node12"><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="495.5,-583.5 272.5,-583.5 272.5,-530.5 495.5,-530.5 495.5,-583.5"/>
<text text-anchor="middle" x="384" y="-568.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="384" y="-553.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="384" y="-538.3" 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="edge8" class="edge">
<title>ZcashFoundation/zebra#2375&#45;&gt;ZcashFoundation/zebra#794</title>
<path fill="none" stroke="#000000" d="M232.38,-557C242.23,-557 252.22,-557 262.11,-557"/>
<polygon fill="#000000" stroke="#000000" points="262.39,-560.5001 272.39,-557 262.39,-553.5001 262.39,-560.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node13"><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,-662.5 0,-662.5 0,-609.5 232,-609.5 232,-662.5"/>
<text text-anchor="middle" x="116" y="-647.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-632.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-617.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5336 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#5336</title>
<g id="a_node14"><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,-749 0,-749 0,-681 232,-681 232,-749"/>
<text text-anchor="middle" x="116" y="-733.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="116" y="-718.8" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="116" y="-703.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="116" y="-688.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;317 fee rules</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node15"><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,-835 0,-835 0,-767 232,-767 232,-835"/>
<text text-anchor="middle" x="116" y="-819.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="116" y="-804.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="116" y="-789.8" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="116" y="-774.8" font-family="Times,serif" font-size="14.00" fill="#000000">from ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5963 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#5963</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/5963" xlink:title="ZcashFoundation/zebra#5963&#10;change(ci): Run block&#10;proposal tests in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="500,-167.5 268,-167.5 268,-163.5 264,-163.5 264,-159.5 268,-159.5 268,-122.5 264,-122.5 264,-118.5 268,-118.5 268,-114.5 500,-114.5 500,-167.5"/>
<polyline fill="none" stroke="#000000" points="268,-163.5 272,-163.5 272,-159.5 268,-159.5 "/>
<polyline fill="none" stroke="#000000" points="268,-122.5 272,-122.5 272,-118.5 268,-118.5 "/>
<text text-anchor="middle" x="384" y="-152.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5963</text>
<text text-anchor="middle" x="384" y="-137.3" font-family="Times,serif" font-size="14.00" fill="#000000">change(ci): Run block</text>
<text text-anchor="middle" x="384" y="-122.3" font-family="Times,serif" font-size="14.00" fill="#000000">proposal tests in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5472 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#5472</title>
<g id="a_node17"><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" stroke-width="2" points="232,-921 0,-921 0,-853 232,-853 232,-921"/>
<text text-anchor="middle" x="116" y="-905.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="116" y="-890.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="116" y="-875.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="116" y="-860.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5984 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#5984</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5984" xlink:title="ZcashFoundation/zebra#5984&#10;Transaction nLockTIme&#10;check (CheckFinalTx)&#10;against MTP when adding&#10;to mempool possible&#10;missed" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-261 0,-261 0,-163 232,-163 232,-261"/>
<text text-anchor="middle" x="116" y="-245.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5984</text>
<text text-anchor="middle" x="116" y="-230.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction nLockTIme</text>
<text text-anchor="middle" x="116" y="-215.8" font-family="Times,serif" font-size="14.00" fill="#000000">check (CheckFinalTx)</text>
<text text-anchor="middle" x="116" y="-200.8" font-family="Times,serif" font-size="14.00" fill="#000000">against MTP when adding</text>
<text text-anchor="middle" x="116" y="-185.8" font-family="Times,serif" font-size="14.00" fill="#000000">to mempool possible</text>
<text text-anchor="middle" x="116" y="-170.8" font-family="Times,serif" font-size="14.00" fill="#000000">missed</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5984&#45;&gt;ZcashFoundation/zebra#5803 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#5984&#45;&gt;ZcashFoundation/zebra#5803</title>
<path fill="none" stroke="#000000" d="M157.86,-261.27C184.59,-290.16 221.4,-325.48 260,-349 262.34,-350.42 264.73,-351.81 267.16,-353.15"/>
<polygon fill="#000000" stroke="#000000" points="265.6585,-356.3146 276.14,-357.86 268.9099,-350.1156 265.6585,-356.3146"/>
</g>
<!-- ZcashFoundation/zebra#5984&#45;&gt;ZcashFoundation/zebra#5963 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#5984&#45;&gt;ZcashFoundation/zebra#5963</title>
<path fill="none" stroke="#000000" d="M232.38,-181.17C246.13,-177.52 260.14,-173.81 273.8,-170.19"/>
<polygon fill="#000000" stroke="#000000" points="274.9141,-173.5159 283.69,-167.58 273.1279,-166.7476 274.9141,-173.5159"/>
</g>
<!-- ZcashFoundation/zebra#6013 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#6013</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/6013" xlink:title="ZcashFoundation/zebra#6013&#10;use `reddsa` crate and&#10;remove duplicated&#10;RedPallas code" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-1007 0,-1007 0,-1003 -4,-1003 -4,-999 0,-999 0,-947 -4,-947 -4,-943 0,-943 0,-939 232,-939 232,-1007"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-1003 4,-1003 4,-999 0,-999 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-947 4,-947 4,-943 0,-943 "/>
<text text-anchor="middle" x="116" y="-991.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6013</text>
<text text-anchor="middle" x="116" y="-976.8" font-family="Times,serif" font-size="14.00" fill="#000000">use `reddsa` crate and</text>
<text text-anchor="middle" x="116" y="-961.8" font-family="Times,serif" font-size="14.00" fill="#000000">remove duplicated</text>
<text text-anchor="middle" x="116" y="-946.8" font-family="Times,serif" font-size="14.00" fill="#000000">RedPallas code</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5981 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#5981</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5981" xlink:title="ZcashFoundation/zebra#5981&#10;Use the same format as&#10;`zcashd` for&#10;`getblocktemplate`&#10;proposal mode errors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="232,-433.5 0,-433.5 0,-350.5 232,-350.5 232,-433.5"/>
<text text-anchor="middle" x="116" y="-418.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5981</text>
<text text-anchor="middle" x="116" y="-403.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use the same format as</text>
<text text-anchor="middle" x="116" y="-388.3" font-family="Times,serif" font-size="14.00" fill="#000000">`zcashd` for</text>
<text text-anchor="middle" x="116" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate`</text>
<text text-anchor="middle" x="116" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">proposal mode errors</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5981&#45;&gt;ZcashFoundation/zebra#5803 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#5981&#45;&gt;ZcashFoundation/zebra#5803</title>
<path fill="none" stroke="#000000" d="M232.38,-392C240.71,-392 249.14,-392 257.53,-392"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-395.5001 267.74,-392 257.74,-388.5001 257.74,-395.5001"/>
</g>
<!-- ZcashFoundation/zebra#4841 -->
<g id="node21" class="node closed">
<title>ZcashFoundation/zebra#4841</title>
<g id="a_node21"><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,-1143.5 268,-1143.5 268,-1090.5 500,-1090.5 500,-1143.5"/>
<text text-anchor="middle" x="384" y="-1128.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="384" y="-1113.3" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="384" y="-1098.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node22"><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,-1310.5 0,-1310.5 0,-1227.5 232,-1227.5 232,-1310.5"/>
<text text-anchor="middle" x="116" y="-1295.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-1280.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-1265.3" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-1250.3" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-1235.3" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node23"><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,-1397 0,-1397 0,-1329 232,-1329 232,-1397"/>
<text text-anchor="middle" x="116" y="-1381.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="116" y="-1366.8" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="116" y="-1351.8" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="116" y="-1336.8" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node24"><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,-1483 0,-1483 0,-1415 232,-1415 232,-1483"/>
<text text-anchor="middle" x="116" y="-1467.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="116" y="-1452.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="116" y="-1437.8" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="116" y="-1422.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node25" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node25"><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="500,-1483 268,-1483 268,-1415 500,-1415 500,-1483"/>
<text text-anchor="middle" x="384" y="-1467.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="384" y="-1452.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="384" y="-1437.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="384" y="-1422.8" 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="edge12" class="edge">
<title>ZcashFoundation/zebra#5709&#45;&gt;ZcashFoundation/zebra#5425</title>
<path fill="none" stroke="#000000" d="M232.38,-1449C240.71,-1449 249.14,-1449 257.53,-1449"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1452.5001 267.74,-1449 257.74,-1445.5001 257.74,-1452.5001"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node26"><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,-1209.5 0,-1209.5 0,-1126.5 232,-1126.5 232,-1209.5"/>
<text text-anchor="middle" x="116" y="-1194.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1179.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1164.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1149.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1134.3" 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="edge13" class="edge">
<title>ZcashFoundation/zebra#4774&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1145.9C240.81,-1144.2 249.33,-1142.6 257.81,-1141"/>
<polygon fill="#000000" stroke="#000000" points="258.576,-1144.417 267.74,-1139.1 257.2604,-1137.5417 258.576,-1144.417"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node27"><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,-1108.5 0,-1108.5 0,-1025.5 232,-1025.5 232,-1108.5"/>
<text text-anchor="middle" x="116" y="-1093.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1078.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1063.3" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1048.3" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1033.3" 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="edge14" class="edge">
<title>ZcashFoundation/zebra#4775&#45;&gt;ZcashFoundation/zebra#4841</title>
<path fill="none" stroke="#000000" d="M232.38,-1088.7C240.81,-1090.3 249.33,-1091.9 257.81,-1093.5"/>
<polygon fill="#000000" stroke="#000000" points="257.2761,-1096.9602 267.74,-1095.3 258.5246,-1090.0724 257.2761,-1096.9602"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node28"><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" stroke-width="2" points="232,-1584.5 0,-1584.5 0,-1501.5 232,-1501.5 232,-1584.5"/>
<text text-anchor="middle" x="116" y="-1569.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="116" y="-1554.3" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="116" y="-1539.3" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="116" y="-1524.3" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="116" y="-1509.3" font-family="Times,serif" font-size="14.00" fill="#000000">template would change</text>
</a>
</g>
</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,-1671 0,-1671 0,-1603 232,-1603 232,-1671"/>
<text text-anchor="middle" x="116" y="-1655.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="116" y="-1640.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="116" y="-1625.8" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="116" y="-1610.8" 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="500,-1663.5 268,-1663.5 268,-1610.5 500,-1610.5 500,-1663.5"/>
<text text-anchor="middle" x="384" y="-1648.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="384" y="-1633.3" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="384" y="-1618.3" 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="edge15" class="edge">
<title>ZcashFoundation/zebra#5502&#45;&gt;ZcashFoundation/zebra#5624</title>
<path fill="none" stroke="#000000" d="M232.38,-1637C240.71,-1637 249.14,-1637 257.53,-1637"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1640.5001 267.74,-1637 257.74,-1633.5001 257.74,-1640.5001"/>
</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,-1757 0,-1757 0,-1689 232,-1689 232,-1757"/>
<text text-anchor="middle" x="116" y="-1741.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-1726.8" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-1711.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-1696.8" 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,-1858.5 0,-1858.5 0,-1775.5 232,-1775.5 232,-1858.5"/>
<text text-anchor="middle" x="116" y="-1843.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-1828.3" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-1813.3" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-1798.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-1783.3" 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="500,-1851 268,-1851 268,-1783 500,-1783 500,-1851"/>
<text text-anchor="middle" x="384" y="-1835.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="384" y="-1820.8" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="384" y="-1805.8" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="384" y="-1790.8" 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="edge16" class="edge">
<title>ZcashFoundation/zebra#4545&#45;&gt;ZcashFoundation/zebra#4226</title>
<path fill="none" stroke="#000000" d="M232.38,-1817C240.71,-1817 249.14,-1817 257.53,-1817"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1820.5001 267.74,-1817 257.74,-1813.5001 257.74,-1820.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>