developers/zcash-zf-dag.svg

528 lines
42 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet href="zcash-dag.css" type="text/css"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
-->
<!-- Pages: 1 -->
<svg width="1052pt" height="1976pt"
viewBox="0.00 0.00 1052.00 1976.16" 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 1972.161)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1972.161 1048,-1972.161 1048,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="260,-130.691 260,-495.691 1044,-495.691 1044,-130.691 260,-130.691"/>
<text text-anchor="middle" x="652" y="-480.491" 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,-464.691 268,-464.691 268,-396.691 500,-396.691 500,-464.691"/>
<text text-anchor="middle" x="384" y="-449.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5803</text>
<text text-anchor="middle" x="384" y="-434.491" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test the</text>
<text text-anchor="middle" x="384" y="-419.491" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate` RPC</text>
<text text-anchor="middle" x="384" y="-404.491" 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,-464.691 536,-464.691 536,-396.691 768,-396.691 768,-464.691"/>
<text text-anchor="middle" x="652" y="-449.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5685</text>
<text text-anchor="middle" x="652" y="-434.491" font-family="Times,serif" font-size="14.00" fill="#000000">Test the getblocktemplate</text>
<text text-anchor="middle" x="652" y="-419.491" 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="-404.491" 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,-430.691C508.71,-430.691 517.14,-430.691 525.53,-430.691"/>
<polygon fill="#000000" stroke="#000000" points="525.74,-434.1911 535.74,-430.691 525.74,-427.1911 525.74,-434.1911"/>
</g>
<!-- ZcashFoundation/zebra#5722 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#5722</title>
<g id="a_node3"><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,-292.691 268,-292.691 268,-224.691 500,-224.691 500,-292.691"/>
<text text-anchor="middle" x="384" y="-277.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5722</text>
<text text-anchor="middle" x="384" y="-262.491" font-family="Times,serif" font-size="14.00" fill="#000000">Implement validateaddress</text>
<text text-anchor="middle" x="384" y="-247.491" font-family="Times,serif" font-size="14.00" fill="#000000">and z_validateaddress</text>
<text text-anchor="middle" x="384" y="-232.491" font-family="Times,serif" font-size="14.00" fill="#000000">RPCs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5934 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#5934</title>
<g id="a_node4"><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,-300.191 536,-300.191 536,-217.191 768,-217.191 768,-300.191"/>
<text text-anchor="middle" x="652" y="-284.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5934</text>
<text text-anchor="middle" x="652" y="-269.991" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that Zcash</text>
<text text-anchor="middle" x="652" y="-254.991" font-family="Times,serif" font-size="14.00" fill="#000000">mining pools can use</text>
<text text-anchor="middle" x="652" y="-239.991" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra to mine blocks on</text>
<text text-anchor="middle" x="652" y="-224.991" font-family="Times,serif" font-size="14.00" fill="#000000">testnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M500.38,-258.691C508.71,-258.691 517.14,-258.691 525.53,-258.691"/>
<polygon fill="#000000" stroke="#000000" points="525.74,-262.1911 535.74,-258.691 525.74,-255.1911 525.74,-262.1911"/>
</g>
<!-- ZcashFoundation/zebra#6030 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#6030</title>
<g id="a_node8"><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,-122.19 536,-122.19 536,-69.19 768,-69.19 768,-122.19"/>
<text text-anchor="middle" x="652" y="-106.99" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6030</text>
<text text-anchor="middle" x="652" y="-91.99" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="652" y="-76.99" 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="edge5" class="edge">
<title>ZcashFoundation/zebra#5722&#45;&gt;ZcashFoundation/zebra#6030</title>
<path fill="none" stroke="#000000" d="M489.34,-224.651C493.11,-221.891 496.69,-218.911 500,-215.691 528.34,-188.171 507.66,-159.541 534.04,-129.581"/>
<polygon fill="#000000" stroke="#000000" points="536.7013,-131.8715 541.35,-122.351 531.7789,-126.8946 536.7013,-131.8715"/>
</g>
<!-- ZcashFoundation/zebra#6025 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#6025</title>
<g id="a_node9"><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,-98.69 804,-98.69 804,-30.69 1036,-30.69 1036,-98.69"/>
<text text-anchor="middle" x="920" y="-83.49" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6025</text>
<text text-anchor="middle" x="920" y="-68.49" font-family="Times,serif" font-size="14.00" fill="#000000">Add a manually&#45;triggered</text>
<text text-anchor="middle" x="920" y="-53.49" font-family="Times,serif" font-size="14.00" fill="#000000">workflow for mining a</text>
<text text-anchor="middle" x="920" y="-38.49" font-family="Times,serif" font-size="14.00" fill="#000000">block on testnet</text>
</a>
</g>
</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="M490.75,-224.661C494.06,-221.901 497.16,-218.911 500,-215.691 546.99,-162.251 480.32,-103.988 536,-59.69 611.03,0 722.94,-8.9487 806.62,-28.257"/>
<polygon fill="#000000" stroke="#000000" points="805.8807,-31.6788 816.42,-30.595 807.5052,-24.8699 805.8807,-31.6788"/>
</g>
<!-- ZcashFoundation/zebra#5686 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#5686</title>
<g id="a_node5"><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,-292.691 804,-292.691 804,-224.691 1036,-224.691 1036,-292.691"/>
<text text-anchor="middle" x="920" y="-277.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5686</text>
<text text-anchor="middle" x="920" y="-262.491" font-family="Times,serif" font-size="14.00" fill="#000000">Manually test that each</text>
<text text-anchor="middle" x="920" y="-247.491" font-family="Times,serif" font-size="14.00" fill="#000000">mining RPC works</text>
<text text-anchor="middle" x="920" y="-232.491" 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="edge3" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#5686</title>
<path fill="none" stroke="#000000" d="M768.38,-258.691C776.71,-258.691 785.14,-258.691 793.53,-258.691"/>
<polygon fill="#000000" stroke="#000000" points="793.74,-262.1911 803.74,-258.691 793.74,-255.1911 793.74,-262.1911"/>
</g>
<!-- ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#5934&#45;&gt;ZcashFoundation/zebra#6025</title>
<path fill="none" stroke="#000000" d="M694.75,-216.941C724.1,-189.481 764.71,-153.741 804,-126.691 815.69,-118.641 828.54,-110.845 841.3,-103.655"/>
<polygon fill="#000000" stroke="#000000" points="843.0562,-106.6834 850.11,-98.778 839.6659,-100.5591 843.0562,-106.6834"/>
</g>
<!-- ZcashFoundation/zebra#5302 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#5302</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/5302" xlink:title="ZcashFoundation/zebra#5302&#10;Add support for&#10;`getblocksubsidy` RPC&#10;call" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="500,-378.691 268,-378.691 268,-310.691 500,-310.691 500,-378.691"/>
<text text-anchor="middle" x="384" y="-363.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5302</text>
<text text-anchor="middle" x="384" y="-348.491" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="384" y="-333.491" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocksubsidy` RPC</text>
<text text-anchor="middle" x="384" y="-318.491" font-family="Times,serif" font-size="14.00" fill="#000000">call</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5302&#45;&gt;ZcashFoundation/zebra#5934 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#5302&#45;&gt;ZcashFoundation/zebra#5934</title>
<path fill="none" stroke="#000000" d="M490.31,-310.581C502.07,-306.801 514.13,-302.931 526.1,-299.091"/>
<polygon fill="#000000" stroke="#000000" points="527.2252,-302.4058 535.68,-296.021 525.0889,-295.7398 527.2252,-302.4058"/>
</g>
<!-- ZcashFoundation/zebra#6028 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#6028</title>
<g id="a_node7"><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,-206.691 268,-206.691 268,-138.691 500,-138.691 500,-206.691"/>
<text text-anchor="middle" x="384" y="-191.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6028</text>
<text text-anchor="middle" x="384" y="-176.491" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to mine on</text>
<text text-anchor="middle" x="384" y="-161.491" font-family="Times,serif" font-size="14.00" fill="#000000">testnet using Zebra and</text>
<text text-anchor="middle" x="384" y="-146.491" 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,-543.191 0,-543.191 0,-490.191 232,-490.191 232,-543.191"/>
<text text-anchor="middle" x="116" y="-527.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5297</text>
<text text-anchor="middle" x="116" y="-512.991" font-family="Times,serif" font-size="14.00" fill="#000000">Add metrics for chain</text>
<text text-anchor="middle" x="116" y="-497.991" 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,-629.691 0,-629.691 0,-561.691 232,-561.691 232,-629.691"/>
<text text-anchor="middle" x="116" y="-614.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2375</text>
<text text-anchor="middle" x="116" y="-599.491" font-family="Times,serif" font-size="14.00" fill="#000000">Allow different `zebra&#45;</text>
<text text-anchor="middle" x="116" y="-584.491" font-family="Times,serif" font-size="14.00" fill="#000000">network` apps to use</text>
<text text-anchor="middle" x="116" y="-569.491" 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,-622.191 272.5,-622.191 272.5,-569.191 495.5,-569.191 495.5,-622.191"/>
<text text-anchor="middle" x="384" y="-606.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#794</text>
<text text-anchor="middle" x="384" y="-591.991" font-family="Times,serif" font-size="14.00" fill="#000000">Make sure custom user</text>
<text text-anchor="middle" x="384" y="-576.991" 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,-595.691C242.23,-595.691 252.22,-595.691 262.11,-595.691"/>
<polygon fill="#000000" stroke="#000000" points="262.39,-599.1911 272.39,-595.691 262.39,-592.1911 262.39,-599.1911"/>
</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,-701.191 0,-701.191 0,-648.191 232,-648.191 232,-701.191"/>
<text text-anchor="middle" x="116" y="-685.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="116" y="-670.991" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="116" y="-655.991" 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,-787.691 0,-787.691 0,-719.691 232,-719.691 232,-787.691"/>
<text text-anchor="middle" x="116" y="-772.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5336</text>
<text text-anchor="middle" x="116" y="-757.491" font-family="Times,serif" font-size="14.00" fill="#000000">Relay and accept mempool</text>
<text text-anchor="middle" x="116" y="-742.491" font-family="Times,serif" font-size="14.00" fill="#000000">transactions based on the</text>
<text text-anchor="middle" x="116" y="-727.491" 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,-873.691 0,-873.691 0,-805.691 232,-805.691 232,-873.691"/>
<text text-anchor="middle" x="116" y="-858.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="116" y="-843.491" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra release candidate</text>
<text text-anchor="middle" x="116" y="-828.491" font-family="Times,serif" font-size="14.00" fill="#000000">binaries should be linked</text>
<text text-anchor="middle" x="116" y="-813.491" 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" stroke-width="2" points="232,-945.191 0,-945.191 0,-941.191 -4,-941.191 -4,-937.191 0,-937.191 0,-900.191 -4,-900.191 -4,-896.191 0,-896.191 0,-892.191 232,-892.191 232,-945.191"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-941.191 4,-941.191 4,-937.191 0,-937.191 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-900.191 4,-900.191 4,-896.191 0,-896.191 "/>
<text text-anchor="middle" x="116" y="-929.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5963</text>
<text text-anchor="middle" x="116" y="-914.991" font-family="Times,serif" font-size="14.00" fill="#000000">change(ci): Run block</text>
<text text-anchor="middle" x="116" y="-899.991" 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,-1031.691 0,-1031.691 0,-963.691 232,-963.691 232,-1031.691"/>
<text text-anchor="middle" x="116" y="-1016.491" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5472</text>
<text text-anchor="middle" x="116" y="-1001.491" font-family="Times,serif" font-size="14.00" fill="#000000">Support shielded coinbase</text>
<text text-anchor="middle" x="116" y="-986.491" font-family="Times,serif" font-size="14.00" fill="#000000">in `getblocktemplate` for</text>
<text text-anchor="middle" x="116" y="-971.491" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6013 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#6013</title>
<g id="a_node18"><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,-1117.661 0,-1117.661 0,-1113.661 -4,-1113.661 -4,-1109.661 0,-1109.661 0,-1057.661 -4,-1057.661 -4,-1053.661 0,-1053.661 0,-1049.661 232,-1049.661 232,-1117.661"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-1113.661 4,-1113.661 4,-1109.661 0,-1109.661 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="0,-1057.661 4,-1057.661 4,-1053.661 0,-1053.661 "/>
<text text-anchor="middle" x="116" y="-1102.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6013</text>
<text text-anchor="middle" x="116" y="-1087.461" font-family="Times,serif" font-size="14.00" fill="#000000">use `reddsa` crate and</text>
<text text-anchor="middle" x="116" y="-1072.461" font-family="Times,serif" font-size="14.00" fill="#000000">remove duplicated</text>
<text text-anchor="middle" x="116" y="-1057.461" font-family="Times,serif" font-size="14.00" fill="#000000">RedPallas code</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5981 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#5981</title>
<g id="a_node19"><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,-472.191 0,-472.191 0,-389.191 232,-389.191 232,-472.191"/>
<text text-anchor="middle" x="116" y="-456.991" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5981</text>
<text text-anchor="middle" x="116" y="-441.991" font-family="Times,serif" font-size="14.00" fill="#000000">Use the same format as</text>
<text text-anchor="middle" x="116" y="-426.991" font-family="Times,serif" font-size="14.00" fill="#000000">`zcashd` for</text>
<text text-anchor="middle" x="116" y="-411.991" font-family="Times,serif" font-size="14.00" fill="#000000">`getblocktemplate`</text>
<text text-anchor="middle" x="116" y="-396.991" 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="edge9" class="edge">
<title>ZcashFoundation/zebra#5981&#45;&gt;ZcashFoundation/zebra#5803</title>
<path fill="none" stroke="#000000" d="M232.38,-430.691C240.71,-430.691 249.14,-430.691 257.53,-430.691"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-434.1911 267.74,-430.691 257.74,-427.1911 257.74,-434.1911"/>
</g>
<!-- ZcashFoundation/zebra#6037 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#6037</title>
<g id="a_node20"><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,-1219.161 0,-1219.161 0,-1136.161 232,-1136.161 232,-1219.161"/>
<text text-anchor="middle" x="116" y="-1203.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6037</text>
<text text-anchor="middle" x="116" y="-1188.961" font-family="Times,serif" font-size="14.00" fill="#000000">Don&#39;t return from long</text>
<text text-anchor="middle" x="116" y="-1173.961" font-family="Times,serif" font-size="14.00" fill="#000000">polling if the block</text>
<text text-anchor="middle" x="116" y="-1158.961" font-family="Times,serif" font-size="14.00" fill="#000000">template is an invalid</text>
<text text-anchor="middle" x="116" y="-1143.961" font-family="Times,serif" font-size="14.00" fill="#000000">block proposal</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#6047 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#6047</title>
<g id="a_node21"><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="500,-1222.661 268,-1222.661 268,-1154.661 500,-1154.661 500,-1222.661"/>
<text text-anchor="middle" x="384" y="-1207.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#6047</text>
<text text-anchor="middle" x="384" y="-1192.461" font-family="Times,serif" font-size="14.00" fill="#000000">Verify proposals are</text>
<text text-anchor="middle" x="384" y="-1177.461" font-family="Times,serif" font-size="14.00" fill="#000000">valid after sending them</text>
<text text-anchor="middle" x="384" y="-1162.461" 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="edge10" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#6047</title>
<path fill="none" stroke="#000000" d="M232.38,-1182.461C240.71,-1182.761 249.14,-1183.161 257.53,-1183.461"/>
<polygon fill="#000000" stroke="#000000" points="257.5807,-1186.9676 267.74,-1183.961 257.9232,-1179.976 257.5807,-1186.9676"/>
</g>
<!-- ZcashFoundation/zebra#5604 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#5604</title>
<g id="a_node22"><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="500,-1136.161 268,-1136.161 268,-1053.161 500,-1053.161 500,-1136.161"/>
<text text-anchor="middle" x="384" y="-1120.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5604</text>
<text text-anchor="middle" x="384" y="-1105.961" font-family="Times,serif" font-size="14.00" fill="#000000">Send the same</text>
<text text-anchor="middle" x="384" y="-1090.961" font-family="Times,serif" font-size="14.00" fill="#000000">getblocktemplate RPC</text>
<text text-anchor="middle" x="384" y="-1075.961" font-family="Times,serif" font-size="14.00" fill="#000000">response until the</text>
<text text-anchor="middle" x="384" y="-1060.961" 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="edge11" class="edge">
<title>ZcashFoundation/zebra#6037&#45;&gt;ZcashFoundation/zebra#5604</title>
<path fill="none" stroke="#000000" d="M232.38,-1141.661C240.9,-1138.961 249.51,-1136.361 258.08,-1133.661"/>
<polygon fill="#000000" stroke="#000000" points="259.228,-1136.9695 267.74,-1130.661 257.1519,-1130.2844 259.228,-1136.9695"/>
</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="500,-1355.161 268,-1355.161 268,-1302.161 500,-1302.161 500,-1355.161"/>
<text text-anchor="middle" x="384" y="-1339.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4841</text>
<text text-anchor="middle" x="384" y="-1324.961" font-family="Times,serif" font-size="14.00" fill="#000000">Improve note commitment</text>
<text text-anchor="middle" x="384" y="-1309.961" font-family="Times,serif" font-size="14.00" fill="#000000">tree append performance</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4794 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#4794</title>
<g id="a_node24"><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,-1522.161 0,-1522.161 0,-1439.161 232,-1439.161 232,-1522.161"/>
<text text-anchor="middle" x="116" y="-1506.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4794</text>
<text text-anchor="middle" x="116" y="-1491.961" font-family="Times,serif" font-size="14.00" fill="#000000">Revert note commitment</text>
<text text-anchor="middle" x="116" y="-1476.961" font-family="Times,serif" font-size="14.00" fill="#000000">and history trees when</text>
<text text-anchor="middle" x="116" y="-1461.961" font-family="Times,serif" font-size="14.00" fill="#000000">forking non&#45;finalized</text>
<text text-anchor="middle" x="116" y="-1446.961" font-family="Times,serif" font-size="14.00" fill="#000000">chains</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5487 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#5487</title>
<g id="a_node25"><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,-1608.661 0,-1608.661 0,-1540.661 232,-1540.661 232,-1608.661"/>
<text text-anchor="middle" x="116" y="-1593.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5487</text>
<text text-anchor="middle" x="116" y="-1578.461" font-family="Times,serif" font-size="14.00" fill="#000000">Return detailed errors</text>
<text text-anchor="middle" x="116" y="-1563.461" font-family="Times,serif" font-size="14.00" fill="#000000">from the `submitblock`</text>
<text text-anchor="middle" x="116" y="-1548.461" font-family="Times,serif" font-size="14.00" fill="#000000">RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5709 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#5709</title>
<g id="a_node26"><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,-1694.661 0,-1694.661 0,-1626.661 232,-1626.661 232,-1694.661"/>
<text text-anchor="middle" x="116" y="-1679.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5709</text>
<text text-anchor="middle" x="116" y="-1664.461" font-family="Times,serif" font-size="14.00" fill="#000000">Fix repeated block</text>
<text text-anchor="middle" x="116" y="-1649.461" font-family="Times,serif" font-size="14.00" fill="#000000">timeouts during initial</text>
<text text-anchor="middle" x="116" y="-1634.461" font-family="Times,serif" font-size="14.00" fill="#000000">sync</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5425 -->
<g id="node27" class="node closed">
<title>ZcashFoundation/zebra#5425</title>
<g id="a_node27"><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,-1694.661 268,-1694.661 268,-1626.661 500,-1626.661 500,-1694.661"/>
<text text-anchor="middle" x="384" y="-1679.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5425</text>
<text text-anchor="middle" x="384" y="-1664.461" font-family="Times,serif" font-size="14.00" fill="#000000">Parallelise note</text>
<text text-anchor="middle" x="384" y="-1649.461" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree point</text>
<text text-anchor="middle" x="384" y="-1634.461" 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,-1660.661C240.71,-1660.661 249.14,-1660.661 257.53,-1660.661"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1664.1611 267.74,-1660.661 257.74,-1657.1611 257.74,-1664.1611"/>
</g>
<!-- ZcashFoundation/zebra#4774 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#4774</title>
<g id="a_node28"><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,-1421.161 0,-1421.161 0,-1338.161 232,-1338.161 232,-1421.161"/>
<text text-anchor="middle" x="116" y="-1405.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4774</text>
<text text-anchor="middle" x="116" y="-1390.961" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1375.961" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1360.961" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Orchard</text>
<text text-anchor="middle" x="116" y="-1345.961" 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,-1357.561C240.81,-1355.961 249.33,-1354.361 257.81,-1352.661"/>
<polygon fill="#000000" stroke="#000000" points="258.5246,-1356.0886 267.74,-1350.861 257.2761,-1349.2008 258.5246,-1356.0886"/>
</g>
<!-- ZcashFoundation/zebra#4775 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#4775</title>
<g id="a_node29"><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,-1320.161 0,-1320.161 0,-1237.161 232,-1237.161 232,-1320.161"/>
<text text-anchor="middle" x="116" y="-1304.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4775</text>
<text text-anchor="middle" x="116" y="-1289.961" font-family="Times,serif" font-size="14.00" fill="#000000">Add an NU5 block test</text>
<text text-anchor="middle" x="116" y="-1274.961" font-family="Times,serif" font-size="14.00" fill="#000000">vector that contains many</text>
<text text-anchor="middle" x="116" y="-1259.961" font-family="Times,serif" font-size="14.00" fill="#000000">shielded Sapling</text>
<text text-anchor="middle" x="116" y="-1244.961" 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,-1300.361C240.81,-1301.961 249.33,-1303.561 257.81,-1305.161"/>
<polygon fill="#000000" stroke="#000000" points="257.2761,-1308.6212 267.74,-1306.961 258.5246,-1301.7334 257.2761,-1308.6212"/>
</g>
<!-- ZcashFoundation/zebra#5502 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#5502</title>
<g id="a_node30"><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,-1780.661 0,-1780.661 0,-1712.661 232,-1712.661 232,-1780.661"/>
<text text-anchor="middle" x="116" y="-1765.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5502</text>
<text text-anchor="middle" x="116" y="-1750.461" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the latest</text>
<text text-anchor="middle" x="116" y="-1735.461" font-family="Times,serif" font-size="14.00" fill="#000000">version of Abscissa (0.7</text>
<text text-anchor="middle" x="116" y="-1720.461" font-family="Times,serif" font-size="14.00" fill="#000000">or later)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#5624 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#5624</title>
<g id="a_node31"><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,-1773.161 268,-1773.161 268,-1720.161 500,-1720.161 500,-1773.161"/>
<text text-anchor="middle" x="384" y="-1757.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#5624</text>
<text text-anchor="middle" x="384" y="-1742.961" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad: obsolete help</text>
<text text-anchor="middle" x="384" y="-1727.961" 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,-1746.661C240.71,-1746.661 249.14,-1746.661 257.53,-1746.661"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1750.1611 267.74,-1746.661 257.74,-1743.1611 257.74,-1750.1611"/>
</g>
<!-- ZcashFoundation/zebra#4554 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#4554</title>
<g id="a_node32"><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,-1866.661 0,-1866.661 0,-1798.661 232,-1798.661 232,-1866.661"/>
<text text-anchor="middle" x="116" y="-1851.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4554</text>
<text text-anchor="middle" x="116" y="-1836.461" font-family="Times,serif" font-size="14.00" fill="#000000">benchmarks: surface</text>
<text text-anchor="middle" x="116" y="-1821.461" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad mainnet sync time</text>
<text text-anchor="middle" x="116" y="-1806.461" font-family="Times,serif" font-size="14.00" fill="#000000">in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4545 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#4545</title>
<g id="a_node33"><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,-1968.161 0,-1968.161 0,-1885.161 232,-1885.161 232,-1968.161"/>
<text text-anchor="middle" x="116" y="-1952.961" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4545</text>
<text text-anchor="middle" x="116" y="-1937.961" font-family="Times,serif" font-size="14.00" fill="#000000">Start disconnecting from</text>
<text text-anchor="middle" x="116" y="-1922.961" font-family="Times,serif" font-size="14.00" fill="#000000">outdated peers before</text>
<text text-anchor="middle" x="116" y="-1907.961" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrade</text>
<text text-anchor="middle" x="116" y="-1892.961" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4226 -->
<g id="node34" class="node closed">
<title>ZcashFoundation/zebra#4226</title>
<g id="a_node34"><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,-1960.661 268,-1960.661 268,-1892.661 500,-1892.661 500,-1960.661"/>
<text text-anchor="middle" x="384" y="-1945.461" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4226</text>
<text text-anchor="middle" x="384" y="-1930.461" font-family="Times,serif" font-size="14.00" fill="#000000">Prefer faster peers, but</text>
<text text-anchor="middle" x="384" y="-1915.461" font-family="Times,serif" font-size="14.00" fill="#000000">if all peers are slow,</text>
<text text-anchor="middle" x="384" y="-1900.461" 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,-1926.661C240.71,-1926.661 249.14,-1926.661 257.53,-1926.661"/>
<polygon fill="#000000" stroke="#000000" points="257.74,-1930.1611 267.74,-1926.661 257.74,-1923.1611 257.74,-1930.1611"/>
</g>
</g>
</svg>