developers/zcash-zf-dag.html

1216 lines
93 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="1140pt" height="6699pt"
viewBox="0.00 0.00 1140.00 6699.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 6695)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-6695 1136,-6695 1136,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_1</title>
<polygon fill="none" stroke="#0000ff" points="0,-3672 0,-4409 248,-4409 248,-3672 0,-3672"/>
<text text-anchor="middle" x="124" y="-4393.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Documentation</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="844,-6300 844,-6449 1132,-6449 1132,-6300 844,-6300"/>
<text text-anchor="middle" x="988" y="-6433.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra Stable Release Candidate</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="268,-5823 268,-6286 556,-6286 556,-5823 268,-5823"/>
<text text-anchor="middle" x="412" y="-6270.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-4417 0,-5815 536,-5815 536,-4417 0,-4417"/>
<text text-anchor="middle" x="268" y="-5799.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Zebra as a Full&#45;Node Wallet</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_4</title>
<polygon fill="none" stroke="#0000ff" points="0,-2782 0,-3664 536,-3664 536,-2782 0,-2782"/>
<text text-anchor="middle" x="268" y="-3648.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Breaking Changes before the Stable Release</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="288,0 288,-2774 536,-2774 536,0 288,0"/>
<text text-anchor="middle" x="412" y="-2758.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_7</title>
<polygon fill="none" stroke="#0000ff" points="0,-6380 0,-6487 824,-6487 824,-6380 0,-6380"/>
<text text-anchor="middle" x="412" y="-6471.8" font-family="Times,serif" font-size="14.00" fill="#000000">NU5 Tracking Epic</text>
</g>
<!-- ZcashFoundation/zebra#2971 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#2971</title>
<g id="a_node1"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2971" xlink:title="ZcashFoundation/zebra#2971&#10;Fix crawler.rs doctest" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4378 8,-4378 8,-4340 240,-4340 240,-4378"/>
<text text-anchor="middle" x="124" y="-4362.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2971</text>
<text text-anchor="middle" x="124" y="-4347.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix crawler.rs doctest</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3318 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#3318</title>
<g id="a_node2"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3318" xlink:title="ZcashFoundation/zebra#3318&#10;Consider adding codespell&#10;to the CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4321.5 8,-4321.5 8,-4268.5 240,-4268.5 240,-4321.5"/>
<text text-anchor="middle" x="124" y="-4306.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3318</text>
<text text-anchor="middle" x="124" y="-4291.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider adding codespell</text>
<text text-anchor="middle" x="124" y="-4276.3" font-family="Times,serif" font-size="14.00" fill="#000000">to the CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node3"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1963" xlink:title="ZcashFoundation/zebra#1963&#10;Revise Release Process&#10;RFC Draft" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4250.5 8,-4250.5 8,-4197.5 240,-4197.5 240,-4250.5"/>
<text text-anchor="middle" x="124" y="-4235.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="124" y="-4220.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revise Release Process</text>
<text text-anchor="middle" x="124" y="-4205.3" font-family="Times,serif" font-size="14.00" fill="#000000">RFC Draft</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4202 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#4202</title>
<g id="a_node4"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4202" xlink:title="ZcashFoundation/zebra#4202&#10;Document how to handle&#10;network upgrades" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4179.5 8,-4179.5 8,-4126.5 240,-4126.5 240,-4179.5"/>
<text text-anchor="middle" x="124" y="-4164.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4202</text>
<text text-anchor="middle" x="124" y="-4149.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to handle</text>
<text text-anchor="middle" x="124" y="-4134.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrades</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2972 -->
<g id="node5" class="node open">
<title>ZcashFoundation/zebra#2972</title>
<g id="a_node5"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2972" xlink:title="ZcashFoundation/zebra#2972&#10;Make it easy for users to&#10;discover how to configure&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4108 8,-4108 8,-4040 240,-4040 240,-4108"/>
<text text-anchor="middle" x="124" y="-4092.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2972</text>
<text text-anchor="middle" x="124" y="-4077.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make it easy for users to</text>
<text text-anchor="middle" x="124" y="-4062.8" font-family="Times,serif" font-size="14.00" fill="#000000">discover how to configure</text>
<text text-anchor="middle" x="124" y="-4047.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2191 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#2191</title>
<g id="a_node6"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2191" xlink:title="ZcashFoundation/zebra#2191&#10;Update user and dev&#10;instructions in the Zebra&#10;Book to deduplicate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4022 8,-4022 8,-3954 240,-3954 240,-4022"/>
<text text-anchor="middle" x="124" y="-4006.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2191</text>
<text text-anchor="middle" x="124" y="-3991.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update user and dev</text>
<text text-anchor="middle" x="124" y="-3976.8" font-family="Times,serif" font-size="14.00" fill="#000000">instructions in the Zebra</text>
<text text-anchor="middle" x="124" y="-3961.8" font-family="Times,serif" font-size="14.00" fill="#000000">Book to deduplicate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2740 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#2740</title>
<g id="a_node7"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2740" xlink:title="ZcashFoundation/zebra#2740&#10;Documentation: adapt&#10;Zebra architecture blog&#10;posts into zebrad&#10;overview for devs in the&#10;book" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3936 8,-3936 8,-3838 240,-3838 240,-3936"/>
<text text-anchor="middle" x="124" y="-3920.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2740</text>
<text text-anchor="middle" x="124" y="-3905.8" font-family="Times,serif" font-size="14.00" fill="#000000">Documentation: adapt</text>
<text text-anchor="middle" x="124" y="-3890.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra architecture blog</text>
<text text-anchor="middle" x="124" y="-3875.8" font-family="Times,serif" font-size="14.00" fill="#000000">posts into zebrad</text>
<text text-anchor="middle" x="124" y="-3860.8" font-family="Times,serif" font-size="14.00" fill="#000000">overview for devs in the</text>
<text text-anchor="middle" x="124" y="-3845.8" font-family="Times,serif" font-size="14.00" fill="#000000">book</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node8"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2001" xlink:title="ZcashFoundation/zebra#2001&#10;Write a draft security&#10;triage RFC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3819.5 8,-3819.5 8,-3766.5 240,-3766.5 240,-3819.5"/>
<text text-anchor="middle" x="124" y="-3804.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="124" y="-3789.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="124" y="-3774.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1772 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#1772</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1772" xlink:title="ZcashFoundation/zebra#1772&#10;Add comments on how to&#10;configure metric and&#10;tracing endpoints" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3748 8,-3748 8,-3680 240,-3680 240,-3748"/>
<text text-anchor="middle" x="124" y="-3732.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1772</text>
<text text-anchor="middle" x="124" y="-3717.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add comments on how to</text>
<text text-anchor="middle" x="124" y="-3702.8" font-family="Times,serif" font-size="14.00" fill="#000000">configure metric and</text>
<text text-anchor="middle" x="124" y="-3687.8" font-family="Times,serif" font-size="14.00" fill="#000000">tracing endpoints</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#3050</title>
<g id="a_node10"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3050" xlink:title="ZcashFoundation/zebra#3050&#10;Tag Zebra v1.0.0&#45;rc1&#10;stable release candidate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1104,-6417.5 872,-6417.5 872,-6364.5 1104,-6364.5 1104,-6417.5"/>
<text text-anchor="middle" x="988" y="-6402.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="988" y="-6387.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra v1.0.0&#45;rc1</text>
<text text-anchor="middle" x="988" y="-6372.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2995 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#2995</title>
<g id="a_node11"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2995" xlink:title="ZcashFoundation/zebra#2995&#10;Speed up Zebra&#39;s CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1104,-6346 872,-6346 872,-6308 1104,-6308 1104,-6346"/>
<text text-anchor="middle" x="988" y="-6330.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2995</text>
<text text-anchor="middle" x="988" y="-6315.8" font-family="Times,serif" font-size="14.00" fill="#000000">Speed up Zebra&#39;s CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4168 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#4168</title>
<g id="a_node12"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4168" xlink:title="ZcashFoundation/zebra#4168&#10;ci: call lightwalletd&#10;wallet queries" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-6254.5 296,-6254.5 296,-6201.5 528,-6201.5 528,-6254.5"/>
<text text-anchor="middle" x="412" y="-6239.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4168</text>
<text text-anchor="middle" x="412" y="-6224.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: call lightwalletd</text>
<text text-anchor="middle" x="412" y="-6209.3" font-family="Times,serif" font-size="14.00" fill="#000000">wallet queries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4150 -->
<g id="node85" class="node open">
<title>ZcashFoundation/zebra#4150</title>
<g id="a_node85"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4150" xlink:title="ZcashFoundation/zebra#4150&#10;Update column family&#10;names to match Zebra&#39;s&#10;database design" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="816,-6277 584,-6277 584,-6209 816,-6209 816,-6277"/>
<text text-anchor="middle" x="700" y="-6261.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4150</text>
<text text-anchor="middle" x="700" y="-6246.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update column family</text>
<text text-anchor="middle" x="700" y="-6231.8" font-family="Times,serif" font-size="14.00" fill="#000000">names to match Zebra&#39;s</text>
<text text-anchor="middle" x="700" y="-6216.8" font-family="Times,serif" font-size="14.00" fill="#000000">database design</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge6" class="edge">
<title>ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M528.31,-6234.1C543.15,-6234.8 558.4,-6235.6 573.39,-6236.4"/>
<polygon fill="#000000" stroke="#000000" points="573.5624,-6239.9124 583.72,-6236.9 573.9009,-6232.9205 573.5624,-6239.9124"/>
</g>
<!-- ZcashFoundation/zebra#4153 -->
<g id="node86" class="node open">
<title>ZcashFoundation/zebra#4153</title>
<g id="a_node86"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4153" xlink:title="ZcashFoundation/zebra#4153&#10;Re&#45;use cached state with&#10;the same version from any&#10;branch" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="816,-6191 584,-6191 584,-6123 816,-6123 816,-6191"/>
<text text-anchor="middle" x="700" y="-6175.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4153</text>
<text text-anchor="middle" x="700" y="-6160.8" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;use cached state with</text>
<text text-anchor="middle" x="700" y="-6145.8" font-family="Times,serif" font-size="14.00" fill="#000000">the same version from any</text>
<text text-anchor="middle" x="700" y="-6130.8" font-family="Times,serif" font-size="14.00" fill="#000000">branch</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge7" class="edge">
<title>ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M521.7,-6201.4C533.28,-6198.6 544.88,-6195.7 556,-6193 561.77,-6191.6 567.67,-6190.1 573.63,-6188.6"/>
<polygon fill="#000000" stroke="#000000" points="574.838,-6191.9064 583.7,-6186.1 573.1513,-6185.1127 574.838,-6191.9064"/>
</g>
<!-- ZcashFoundation/zebra#4278 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#4278</title>
<g id="a_node13"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4278" xlink:title="ZcashFoundation/zebra#4278&#10;Add missing wallet grpc&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-6183.5 296,-6183.5 296,-6130.5 528,-6130.5 528,-6183.5"/>
<text text-anchor="middle" x="412" y="-6168.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4278</text>
<text text-anchor="middle" x="412" y="-6153.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add missing wallet grpc</text>
<text text-anchor="middle" x="412" y="-6138.3" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge8" class="edge">
<title>ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M522.34,-6183.5C533.75,-6186.6 545.13,-6189.8 556,-6193 569.06,-6196.9 582.7,-6201.2 596.14,-6205.7"/>
<polygon fill="#000000" stroke="#000000" points="595.2957,-6209.1092 605.89,-6209 597.5399,-6202.4787 595.2957,-6209.1092"/>
</g>
<!-- ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M528.31,-6157C543.15,-6157 558.4,-6157 573.39,-6157"/>
<polygon fill="#000000" stroke="#000000" points="573.72,-6160.5001 583.72,-6157 573.72,-6153.5001 573.72,-6160.5001"/>
</g>
<!-- ZcashFoundation/zebra#4351 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#4351</title>
<g id="a_node14"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4351" xlink:title="ZcashFoundation/zebra#4351&#10;Add GetTreeState gRPC&#10;test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-6112.5 296,-6112.5 296,-6059.5 528,-6059.5 528,-6112.5"/>
<text text-anchor="middle" x="412" y="-6097.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4351</text>
<text text-anchor="middle" x="412" y="-6082.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetTreeState gRPC</text>
<text text-anchor="middle" x="412" y="-6067.3" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4415 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#4415</title>
<g id="a_node15"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4415" xlink:title="ZcashFoundation/zebra#4415&#10;Fix lightwalletd cached&#10;state disks in CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-6041.5 296,-6041.5 296,-5988.5 528,-5988.5 528,-6041.5"/>
<text text-anchor="middle" x="412" y="-6026.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4415</text>
<text text-anchor="middle" x="412" y="-6011.3" font-family="Times,serif" font-size="14.00" fill="#000000">Fix lightwalletd cached</text>
<text text-anchor="middle" x="412" y="-5996.3" font-family="Times,serif" font-size="14.00" fill="#000000">state disks in CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4350 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#4350</title>
<g id="a_node16"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4350" xlink:title="ZcashFoundation/zebra#4350&#10;Add GetMempoolTx gRPC&#10;test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-5970.5 296,-5970.5 296,-5917.5 528,-5917.5 528,-5970.5"/>
<text text-anchor="middle" x="412" y="-5955.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4350</text>
<text text-anchor="middle" x="412" y="-5940.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetMempoolTx gRPC</text>
<text text-anchor="middle" x="412" y="-5925.3" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4060 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#4060</title>
<g id="a_node17"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4060" xlink:title="ZcashFoundation/zebra#4060&#10;Report better&#10;transactions errors to&#10;lightwalletd" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-5899 296,-5899 296,-5831 528,-5831 528,-5899"/>
<text text-anchor="middle" x="412" y="-5883.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4060</text>
<text text-anchor="middle" x="412" y="-5868.8" font-family="Times,serif" font-size="14.00" fill="#000000">Report better</text>
<text text-anchor="middle" x="412" y="-5853.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions errors to</text>
<text text-anchor="middle" x="412" y="-5838.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node18"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/271" xlink:title="ZcashFoundation/zebra#271&#10;Sapling Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5783.5 12.5,-5783.5 12.5,-5730.5 235.5,-5730.5 235.5,-5783.5"/>
<text text-anchor="middle" x="124" y="-5768.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="124" y="-5753.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Key Agreement and</text>
<text text-anchor="middle" x="124" y="-5738.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node19"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/269" xlink:title="ZcashFoundation/zebra#269&#10;Sapling note encryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="523.5,-5712.5 300.5,-5712.5 300.5,-5659.5 523.5,-5659.5 523.5,-5712.5"/>
<text text-anchor="middle" x="412" y="-5697.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="412" y="-5682.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note encryption</text>
<text text-anchor="middle" x="412" y="-5667.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M231.65,-5730.5C252.2,-5725.4 273.81,-5720.1 294.65,-5714.9"/>
<polygon fill="#000000" stroke="#000000" points="295.5955,-5718.272 304.48,-5712.5 293.9352,-5711.4718 295.5955,-5718.272"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node20"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3002" xlink:title="ZcashFoundation/zebra#3002&#10;Sapling note decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="528,-5783.5 296,-5783.5 296,-5730.5 528,-5730.5 528,-5783.5"/>
<text text-anchor="middle" x="412" y="-5768.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="412" y="-5753.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="412" y="-5738.3" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002 -->
<g id="edge2" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M235.76,-5757C252,-5757 268.81,-5757 285.31,-5757"/>
<polygon fill="#000000" stroke="#000000" points="285.54,-5760.5001 295.54,-5757 285.54,-5753.5001 285.54,-5760.5001"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node21"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/325" xlink:title="ZcashFoundation/zebra#325&#10;Block Chain Scanning" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5712 12.5,-5712 12.5,-5674 235.5,-5674 235.5,-5712"/>
<text text-anchor="middle" x="124" y="-5696.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="124" y="-5681.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node22"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/267" xlink:title="ZcashFoundation/zebra#267&#10;Implement ZIP&#45;32 Sapling&#10;and Orchard key&#10;derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5656 12.5,-5656 12.5,-5588 235.5,-5588 235.5,-5656"/>
<text text-anchor="middle" x="124" y="-5640.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="124" y="-5625.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="124" y="-5610.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="124" y="-5595.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node23"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2064" xlink:title="ZcashFoundation/zebra#2064&#10;Import Poseidon hash into&#10;Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-5569.5 8,-5569.5 8,-5516.5 240,-5516.5 240,-5569.5"/>
<text text-anchor="middle" x="124" y="-5554.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="124" y="-5539.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="124" y="-5524.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node24"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2192" xlink:title="ZcashFoundation/zebra#2192&#10;Implement&#10;`EphemeralPrivateKey`&#39;s&#10;for Orchard, Sapling,&#10;Sprout" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-5498.5 8,-5498.5 8,-5415.5 240,-5415.5 240,-5498.5"/>
<text text-anchor="middle" x="124" y="-5483.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="124" y="-5468.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="124" y="-5453.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="124" y="-5438.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="124" y="-5423.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node25"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/181" xlink:title="ZcashFoundation/zebra#181&#10;Sprout note&#10;encryption/decryption&#10;implementation." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5397 12.5,-5397 12.5,-5329 235.5,-5329 235.5,-5397"/>
<text text-anchor="middle" x="124" y="-5381.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="124" y="-5366.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="124" y="-5351.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="124" y="-5336.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#785 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#785</title>
<g id="a_node26"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/785" xlink:title="ZcashFoundation/zebra#785&#10;Implement ZIP 212: Allow&#10;Recipient to Derive&#10;Sapling Ephemeral Secret&#10;from Note Plaintext" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5310.5 12.5,-5310.5 12.5,-5227.5 235.5,-5227.5 235.5,-5310.5"/>
<text text-anchor="middle" x="124" y="-5295.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#785</text>
<text text-anchor="middle" x="124" y="-5280.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 212: Allow</text>
<text text-anchor="middle" x="124" y="-5265.3" font-family="Times,serif" font-size="14.00" fill="#000000">Recipient to Derive</text>
<text text-anchor="middle" x="124" y="-5250.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Ephemeral Secret</text>
<text text-anchor="middle" x="124" y="-5235.3" font-family="Times,serif" font-size="14.00" fill="#000000">from Note Plaintext</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node27"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/321" xlink:title="ZcashFoundation/zebra#321&#10;Create Output Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5209 12.5,-5209 12.5,-5171 235.5,-5171 235.5,-5209"/>
<text text-anchor="middle" x="124" y="-5193.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="124" y="-5178.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node28"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/272" xlink:title="ZcashFoundation/zebra#272&#10;Sprout Key Agreement and&#10;KDF" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-5152.5 12.5,-5152.5 12.5,-5099.5 235.5,-5099.5 235.5,-5152.5"/>
<text text-anchor="middle" x="124" y="-5137.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="124" y="-5122.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="124" y="-5107.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node29" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node29"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2496" xlink:title="ZcashFoundation/zebra#2496&#10;Handle a ivk == ⊥&#10;(KA^Orchard private key)&#10;when generating an&#10;Orchard Spending Key" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-5081.5 8,-5081.5 8,-4998.5 240,-4998.5 240,-5081.5"/>
<text text-anchor="middle" x="124" y="-5066.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="124" y="-5051.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="124" y="-5036.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="124" y="-5021.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="124" y="-5006.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node30"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3869" xlink:title="ZcashFoundation/zebra#3869&#10;Orchard: ensure that ivk&#10;= 0 is rejected if that&#10;negligible case occurs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4980 8,-4980 8,-4912 240,-4912 240,-4980"/>
<text text-anchor="middle" x="124" y="-4964.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="124" y="-4949.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="124" y="-4934.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="124" y="-4919.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node31"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/278" xlink:title="ZcashFoundation/zebra#278&#10;Sapling Note Builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-4894 12.5,-4894 12.5,-4856 235.5,-4856 235.5,-4894"/>
<text text-anchor="middle" x="124" y="-4878.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="124" y="-4863.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node32"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2447" xlink:title="ZcashFoundation/zebra#2447&#10;Define a new `Amount`&#10;`Constraint` for Note&#10;values w/ [0..2^64) as&#10;`valid_range()`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4837.5 8,-4837.5 8,-4754.5 240,-4754.5 240,-4837.5"/>
<text text-anchor="middle" x="124" y="-4822.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="124" y="-4807.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="124" y="-4792.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="124" y="-4777.3" font-family="Times,serif" font-size="14.00" fill="#000000">values w/ [0..2^64) as</text>
<text text-anchor="middle" x="124" y="-4762.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node33"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2041" xlink:title="ZcashFoundation/zebra#2041&#10;Orchard: derive&#10;OutgoingCipherKey" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4736.5 8,-4736.5 8,-4683.5 240,-4683.5 240,-4736.5"/>
<text text-anchor="middle" x="124" y="-4721.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="124" y="-4706.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="124" y="-4691.3" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node34"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/320" xlink:title="ZcashFoundation/zebra#320&#10;Create a Spend Proof" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-4665 12.5,-4665 12.5,-4627 235.5,-4627 235.5,-4665"/>
<text text-anchor="middle" x="124" y="-4649.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="124" y="-4634.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node35"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2080" xlink:title="ZcashFoundation/zebra#2080&#10;Replace`redpallas` module&#10;with `reddsa`/`redpallas`&#10;crate" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4609 8,-4609 8,-4541 240,-4541 240,-4609"/>
<text text-anchor="middle" x="124" y="-4593.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="124" y="-4578.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace`redpallas` module</text>
<text text-anchor="middle" x="124" y="-4563.8" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="124" y="-4548.8" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node36"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2095" xlink:title="ZcashFoundation/zebra#2095&#10;Orchard: update&#10;note/action generation to&#10;include input note&#10;nullifier in the&#10;PRF^expand invocations" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-4523 8,-4523 8,-4425 240,-4425 240,-4523"/>
<text text-anchor="middle" x="124" y="-4507.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="124" y="-4492.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="124" y="-4477.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="124" y="-4462.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="124" y="-4447.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="124" y="-4432.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1894 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#1894</title>
<g id="a_node37"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1894" xlink:title="ZcashFoundation/zebra#1894&#10;Zebra should follow OS&#10;directory conventions&#10;better" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3633 8,-3633 8,-3565 240,-3565 240,-3633"/>
<text text-anchor="middle" x="124" y="-3617.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1894</text>
<text text-anchor="middle" x="124" y="-3602.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should follow OS</text>
<text text-anchor="middle" x="124" y="-3587.8" font-family="Times,serif" font-size="14.00" fill="#000000">directory conventions</text>
<text text-anchor="middle" x="124" y="-3572.8" font-family="Times,serif" font-size="14.00" fill="#000000">better</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3432 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#3432</title>
<g id="a_node38"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3432" xlink:title="ZcashFoundation/zebra#3432&#10;Use the Filesystem&#10;Hierarchy Standard (FHS)&#10;for deployments and&#10;artifacts" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="528,-3632.5 296,-3632.5 296,-3549.5 528,-3549.5 528,-3632.5"/>
<text text-anchor="middle" x="412" y="-3617.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3432</text>
<text text-anchor="middle" x="412" y="-3602.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use the Filesystem</text>
<text text-anchor="middle" x="412" y="-3587.3" font-family="Times,serif" font-size="14.00" fill="#000000">Hierarchy Standard (FHS)</text>
<text text-anchor="middle" x="412" y="-3572.3" font-family="Times,serif" font-size="14.00" fill="#000000">for deployments and</text>
<text text-anchor="middle" x="412" y="-3557.3" font-family="Times,serif" font-size="14.00" fill="#000000">artifacts</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1894&#45;&gt;ZcashFoundation/zebra#3432 -->
<g id="edge3" class="edge">
<title>ZcashFoundation/zebra#1894&#45;&gt;ZcashFoundation/zebra#3432</title>
<path fill="none" stroke="#000000" d="M240.31,-3595.8C255.15,-3595.4 270.4,-3594.9 285.39,-3594.5"/>
<polygon fill="#000000" stroke="#000000" points="285.8259,-3597.9889 295.72,-3594.2 285.6226,-3590.9919 285.8259,-3597.9889"/>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node39"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2631" xlink:title="ZcashFoundation/zebra#2631&#10;Send committed spent&#10;OutPoints &amp; nullifiers to&#10;the mempool for rejection" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3547 8,-3547 8,-3479 240,-3479 240,-3547"/>
<text text-anchor="middle" x="124" y="-3531.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="124" y="-3516.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="124" y="-3501.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="124" y="-3486.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#950 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#950</title>
<g id="a_node40"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/950" xlink:title="ZcashFoundation/zebra#950&#10;Demo: compare zcashd vs&#10;zebrad ludicrous speed on&#10;syncing" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="235.5,-3461 12.5,-3461 12.5,-3393 235.5,-3393 235.5,-3461"/>
<text text-anchor="middle" x="124" y="-3445.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#950</text>
<text text-anchor="middle" x="124" y="-3430.8" font-family="Times,serif" font-size="14.00" fill="#000000">Demo: compare zcashd vs</text>
<text text-anchor="middle" x="124" y="-3415.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad ludicrous speed on</text>
<text text-anchor="middle" x="124" y="-3400.8" font-family="Times,serif" font-size="14.00" fill="#000000">syncing</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1904 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#1904</title>
<g id="a_node41"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1904" xlink:title="ZcashFoundation/zebra#1904&#10;Some DNS seeders and&#10;block explorers don&#39;t&#10;show Zebra nodes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3375 8,-3375 8,-3307 240,-3307 240,-3375"/>
<text text-anchor="middle" x="124" y="-3359.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1904</text>
<text text-anchor="middle" x="124" y="-3344.8" font-family="Times,serif" font-size="14.00" fill="#000000">Some DNS seeders and</text>
<text text-anchor="middle" x="124" y="-3329.8" font-family="Times,serif" font-size="14.00" fill="#000000">block explorers don&#39;t</text>
<text text-anchor="middle" x="124" y="-3314.8" font-family="Times,serif" font-size="14.00" fill="#000000">show Zebra nodes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node52" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node52"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1791" xlink:title="ZcashFoundation/zebra#1791&#10;Re&#45;enable `sync_large_che&#10;ckpoints_testnet` test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="528,-2428.5 296,-2428.5 296,-2375.5 528,-2375.5 528,-2428.5"/>
<text text-anchor="middle" x="412" y="-2413.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="412" y="-2398.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="412" y="-2383.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791</title>
<path fill="none" stroke="#000000" d="M240.46,-3306.7C243.19,-3304 245.72,-3301.1 248,-3298 276.16,-3259.4 238.15,-2475.3 268,-2438 273.44,-2431.2 279.95,-2425.6 287.15,-2420.9"/>
<polygon fill="#000000" stroke="#000000" points="288.9541,-2423.9003 295.9,-2415.9 285.4811,-2417.8226 288.9541,-2423.9003"/>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node42"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1615" xlink:title="ZcashFoundation/zebra#1615&#10;Zebra stable download&#10;should be linked from&#10;ZFND website" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3289 8,-3289 8,-3221 240,-3221 240,-3289"/>
<text text-anchor="middle" x="124" y="-3273.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="124" y="-3258.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra stable download</text>
<text text-anchor="middle" x="124" y="-3243.8" font-family="Times,serif" font-size="14.00" fill="#000000">should be linked from</text>
<text text-anchor="middle" x="124" y="-3228.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1213 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#1213</title>
<g id="a_node43"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1213" xlink:title="ZcashFoundation/zebra#1213&#10;Detect when an older&#10;state version is present,&#10;and delete it" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3203 8,-3203 8,-3135 240,-3135 240,-3203"/>
<text text-anchor="middle" x="124" y="-3187.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1213</text>
<text text-anchor="middle" x="124" y="-3172.8" font-family="Times,serif" font-size="14.00" fill="#000000">Detect when an older</text>
<text text-anchor="middle" x="124" y="-3157.8" font-family="Times,serif" font-size="14.00" fill="#000000">state version is present,</text>
<text text-anchor="middle" x="124" y="-3142.8" font-family="Times,serif" font-size="14.00" fill="#000000">and delete it</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1621 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#1621</title>
<g id="a_node44"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1621" xlink:title="ZcashFoundation/zebra#1621&#10;Run `zebrad start` by&#10;default, and add `start`&#10;to `zebrad help`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3117 8,-3117 8,-3049 240,-3049 240,-3117"/>
<text text-anchor="middle" x="124" y="-3101.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1621</text>
<text text-anchor="middle" x="124" y="-3086.8" font-family="Times,serif" font-size="14.00" fill="#000000">Run `zebrad start` by</text>
<text text-anchor="middle" x="124" y="-3071.8" font-family="Times,serif" font-size="14.00" fill="#000000">default, and add `start`</text>
<text text-anchor="middle" x="124" y="-3056.8" font-family="Times,serif" font-size="14.00" fill="#000000">to `zebrad help`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1617 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#1617</title>
<g id="a_node45"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1617" xlink:title="ZcashFoundation/zebra#1617&#10;Restructure and clean up&#10;README to make it easier&#10;for new users to get&#10;started with Zebra" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-3030.5 8,-3030.5 8,-2947.5 240,-2947.5 240,-3030.5"/>
<text text-anchor="middle" x="124" y="-3015.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1617</text>
<text text-anchor="middle" x="124" y="-3000.3" font-family="Times,serif" font-size="14.00" fill="#000000">Restructure and clean up</text>
<text text-anchor="middle" x="124" y="-2985.3" font-family="Times,serif" font-size="14.00" fill="#000000">README to make it easier</text>
<text text-anchor="middle" x="124" y="-2970.3" font-family="Times,serif" font-size="14.00" fill="#000000">for new users to get</text>
<text text-anchor="middle" x="124" y="-2955.3" font-family="Times,serif" font-size="14.00" fill="#000000">started with Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1638" xlink:title="ZcashFoundation/zebra#1638&#10;Create PGP keys amongst&#10;security@zfnd.org" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2929.5 8,-2929.5 8,-2876.5 240,-2876.5 240,-2929.5"/>
<text text-anchor="middle" x="124" y="-2914.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="124" y="-2899.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="124" y="-2884.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1870 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#1870</title>
<g id="a_node47"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1870" xlink:title="ZcashFoundation/zebra#1870&#10;Decide if old Zebra&#10;versions should&#10;eventually refuse to run" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-2858 8,-2858 8,-2790 240,-2790 240,-2858"/>
<text text-anchor="middle" x="124" y="-2842.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1870</text>
<text text-anchor="middle" x="124" y="-2827.8" font-family="Times,serif" font-size="14.00" fill="#000000">Decide if old Zebra</text>
<text text-anchor="middle" x="124" y="-2812.8" font-family="Times,serif" font-size="14.00" fill="#000000">versions should</text>
<text text-anchor="middle" x="124" y="-2797.8" font-family="Times,serif" font-size="14.00" fill="#000000">eventually refuse to run</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2573 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#2573</title>
<g id="a_node48"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2573" xlink:title="ZcashFoundation/zebra#2573&#10;Remove redundant watch&#10;values once our Tokio&#10;dependency is updated" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2743 296,-2743 296,-2675 528,-2675 528,-2743"/>
<text text-anchor="middle" x="412" y="-2727.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2573</text>
<text text-anchor="middle" x="412" y="-2712.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove redundant watch</text>
<text text-anchor="middle" x="412" y="-2697.8" font-family="Times,serif" font-size="14.00" fill="#000000">values once our Tokio</text>
<text text-anchor="middle" x="412" y="-2682.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependency is updated</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2214 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#2214</title>
<g id="a_node49"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2214" xlink:title="ZcashFoundation/zebra#2214&#10;Limit fanouts to the&#10;number of active peers,&#10;Credit: Equilibrium" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2657 296,-2657 296,-2589 528,-2589 528,-2657"/>
<text text-anchor="middle" x="412" y="-2641.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2214</text>
<text text-anchor="middle" x="412" y="-2626.8" font-family="Times,serif" font-size="14.00" fill="#000000">Limit fanouts to the</text>
<text text-anchor="middle" x="412" y="-2611.8" font-family="Times,serif" font-size="14.00" fill="#000000">number of active peers,</text>
<text text-anchor="middle" x="412" y="-2596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Credit: Equilibrium</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3383" xlink:title="ZcashFoundation/zebra#3383&#10;Document `zebrad&#10;download` command." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2570.5 296,-2570.5 296,-2517.5 528,-2517.5 528,-2570.5"/>
<text text-anchor="middle" x="412" y="-2555.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="412" y="-2540.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="412" y="-2525.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2560 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#2560</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2560" xlink:title="ZcashFoundation/zebra#2560&#10;Test History Tree&#10;serialization" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2499.5 296,-2499.5 296,-2446.5 528,-2446.5 528,-2499.5"/>
<text text-anchor="middle" x="412" y="-2484.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2560</text>
<text text-anchor="middle" x="412" y="-2469.3" font-family="Times,serif" font-size="14.00" fill="#000000">Test History Tree</text>
<text text-anchor="middle" x="412" y="-2454.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1875 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#1875</title>
<g id="a_node53"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1875" xlink:title="ZcashFoundation/zebra#1875&#10;Zebra attempts new peer&#10;connections in a fixed,&#10;predictable order" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2357 296,-2357 296,-2289 528,-2289 528,-2357"/>
<text text-anchor="middle" x="412" y="-2341.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1875</text>
<text text-anchor="middle" x="412" y="-2326.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra attempts new peer</text>
<text text-anchor="middle" x="412" y="-2311.8" font-family="Times,serif" font-size="14.00" fill="#000000">connections in a fixed,</text>
<text text-anchor="middle" x="412" y="-2296.8" font-family="Times,serif" font-size="14.00" fill="#000000">predictable order</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1956 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#1956</title>
<g id="a_node54"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1956" xlink:title="ZcashFoundation/zebra#1956&#10;Zebra should store a&#10;persistent list of recent&#10;successful peers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2271 296,-2271 296,-2203 528,-2203 528,-2271"/>
<text text-anchor="middle" x="412" y="-2255.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1956</text>
<text text-anchor="middle" x="412" y="-2240.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should store a</text>
<text text-anchor="middle" x="412" y="-2225.8" font-family="Times,serif" font-size="14.00" fill="#000000">persistent list of recent</text>
<text text-anchor="middle" x="412" y="-2210.8" font-family="Times,serif" font-size="14.00" fill="#000000">successful peers</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2042 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#2042</title>
<g id="a_node55"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2042" xlink:title="ZcashFoundation/zebra#2042&#10;zebra&#45;chain: Port array&#45;&#10;wrapper types to const&#10;generics" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2185 296,-2185 296,-2117 528,-2117 528,-2185"/>
<text text-anchor="middle" x="412" y="-2169.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2042</text>
<text text-anchor="middle" x="412" y="-2154.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebra&#45;chain: Port array&#45;</text>
<text text-anchor="middle" x="412" y="-2139.8" font-family="Times,serif" font-size="14.00" fill="#000000">wrapper types to const</text>
<text text-anchor="middle" x="412" y="-2124.8" font-family="Times,serif" font-size="14.00" fill="#000000">generics</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#483 -->
<g id="node56" class="node open">
<title>ZcashFoundation/zebra#483</title>
<g id="a_node56"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/483" xlink:title="ZcashFoundation/zebra#483&#10;Limit generated block and&#10;transaction size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="523.5,-2098.5 300.5,-2098.5 300.5,-2045.5 523.5,-2045.5 523.5,-2098.5"/>
<text text-anchor="middle" x="412" y="-2083.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="412" y="-2068.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="412" y="-2053.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3372 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#3372</title>
<g id="a_node57"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3372" xlink:title="ZcashFoundation/zebra#3372&#10;Use clap v3 instead of&#10;structopt" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-2027.5 296,-2027.5 296,-1974.5 528,-1974.5 528,-2027.5"/>
<text text-anchor="middle" x="412" y="-2012.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3372</text>
<text text-anchor="middle" x="412" y="-1997.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use clap v3 instead of</text>
<text text-anchor="middle" x="412" y="-1982.3" font-family="Times,serif" font-size="14.00" fill="#000000">structopt</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3436 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#3436</title>
<g id="a_node58"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3436" xlink:title="ZcashFoundation/zebra#3436&#10;Create wrapper for&#10;`precomputed` in&#10;`CachedFfiTransaction`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1956 296,-1956 296,-1888 528,-1888 528,-1956"/>
<text text-anchor="middle" x="412" y="-1940.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3436</text>
<text text-anchor="middle" x="412" y="-1925.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create wrapper for</text>
<text text-anchor="middle" x="412" y="-1910.8" font-family="Times,serif" font-size="14.00" fill="#000000">`precomputed` in</text>
<text text-anchor="middle" x="412" y="-1895.8" font-family="Times,serif" font-size="14.00" fill="#000000">`CachedFfiTransaction`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#565 -->
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#565</title>
<g id="a_node59"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/565" xlink:title="ZcashFoundation/zebra#565&#10;Tracking: all the&#10;consensus parameters" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="523.5,-1869.5 300.5,-1869.5 300.5,-1816.5 523.5,-1816.5 523.5,-1869.5"/>
<text text-anchor="middle" x="412" y="-1854.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#565</text>
<text text-anchor="middle" x="412" y="-1839.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: all the</text>
<text text-anchor="middle" x="412" y="-1824.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus parameters</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2298 -->
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#2298</title>
<g id="a_node60"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2298" xlink:title="ZcashFoundation/zebra#2298&#10;Coverage&#45;based fuzzing&#10;for transaction&#10;processing,&#10;(de)serialization" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1798.5 296,-1798.5 296,-1715.5 528,-1715.5 528,-1798.5"/>
<text text-anchor="middle" x="412" y="-1783.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2298</text>
<text text-anchor="middle" x="412" y="-1768.3" font-family="Times,serif" font-size="14.00" fill="#000000">Coverage&#45;based fuzzing</text>
<text text-anchor="middle" x="412" y="-1753.3" font-family="Times,serif" font-size="14.00" fill="#000000">for transaction</text>
<text text-anchor="middle" x="412" y="-1738.3" font-family="Times,serif" font-size="14.00" fill="#000000">processing,</text>
<text text-anchor="middle" x="412" y="-1723.3" font-family="Times,serif" font-size="14.00" fill="#000000">(de)serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908 -->
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#2908</title>
<g id="a_node61"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2908" xlink:title="ZcashFoundation/zebra#2908&#10;Improve&#10;VerifyBlockError::Commit&#10;typing" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1697 296,-1697 296,-1629 528,-1629 528,-1697"/>
<text text-anchor="middle" x="412" y="-1681.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2908</text>
<text text-anchor="middle" x="412" y="-1666.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve</text>
<text text-anchor="middle" x="412" y="-1651.8" font-family="Times,serif" font-size="14.00" fill="#000000">VerifyBlockError::Commit</text>
<text text-anchor="middle" x="412" y="-1636.8" font-family="Times,serif" font-size="14.00" fill="#000000">typing</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2090 -->
<g id="node62" class="node open">
<title>ZcashFoundation/zebra#2090</title>
<g id="a_node62"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2090" xlink:title="ZcashFoundation/zebra#2090&#10;Auto&#45;delete old Google&#10;Cloud instance templates" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1610.5 296,-1610.5 296,-1557.5 528,-1557.5 528,-1610.5"/>
<text text-anchor="middle" x="412" y="-1595.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2090</text>
<text text-anchor="middle" x="412" y="-1580.3" font-family="Times,serif" font-size="14.00" fill="#000000">Auto&#45;delete old Google</text>
<text text-anchor="middle" x="412" y="-1565.3" font-family="Times,serif" font-size="14.00" fill="#000000">Cloud instance templates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2892 -->
<g id="node63" class="node open">
<title>ZcashFoundation/zebra#2892</title>
<g id="a_node63"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2892" xlink:title="ZcashFoundation/zebra#2892&#10;Go over all `cargo doc`&#10;warnings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1539.5 296,-1539.5 296,-1486.5 528,-1486.5 528,-1539.5"/>
<text text-anchor="middle" x="412" y="-1524.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2892</text>
<text text-anchor="middle" x="412" y="-1509.3" font-family="Times,serif" font-size="14.00" fill="#000000">Go over all `cargo doc`</text>
<text text-anchor="middle" x="412" y="-1494.3" font-family="Times,serif" font-size="14.00" fill="#000000">warnings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2220 -->
<g id="node64" class="node open">
<title>ZcashFoundation/zebra#2220</title>
<g id="a_node64"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2220" xlink:title="ZcashFoundation/zebra#2220&#10;Add the Google Cloud&#10;Instance ID to Sentry, so&#10;we can search logs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1468 296,-1468 296,-1400 528,-1400 528,-1468"/>
<text text-anchor="middle" x="412" y="-1452.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2220</text>
<text text-anchor="middle" x="412" y="-1437.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add the Google Cloud</text>
<text text-anchor="middle" x="412" y="-1422.8" font-family="Times,serif" font-size="14.00" fill="#000000">Instance ID to Sentry, so</text>
<text text-anchor="middle" x="412" y="-1407.8" font-family="Times,serif" font-size="14.00" fill="#000000">we can search logs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2869 -->
<g id="node65" class="node open">
<title>ZcashFoundation/zebra#2869</title>
<g id="a_node65"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2869" xlink:title="ZcashFoundation/zebra#2869&#10;Add mempool metrics&#10;related to memory usage" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1381.5 296,-1381.5 296,-1328.5 528,-1328.5 528,-1381.5"/>
<text text-anchor="middle" x="412" y="-1366.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2869</text>
<text text-anchor="middle" x="412" y="-1351.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add mempool metrics</text>
<text text-anchor="middle" x="412" y="-1336.3" font-family="Times,serif" font-size="14.00" fill="#000000">related to memory usage</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2632 -->
<g id="node66" class="node open">
<title>ZcashFoundation/zebra#2632</title>
<g id="a_node66"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2632" xlink:title="ZcashFoundation/zebra#2632&#10;Improve performance of&#10;authorizing data&#10;commitment" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1310 296,-1310 296,-1242 528,-1242 528,-1310"/>
<text text-anchor="middle" x="412" y="-1294.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2632</text>
<text text-anchor="middle" x="412" y="-1279.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve performance of</text>
<text text-anchor="middle" x="412" y="-1264.8" font-family="Times,serif" font-size="14.00" fill="#000000">authorizing data</text>
<text text-anchor="middle" x="412" y="-1249.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2297 -->
<g id="node67" class="node open">
<title>ZcashFoundation/zebra#2297</title>
<g id="a_node67"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2297" xlink:title="ZcashFoundation/zebra#2297&#10;Enforce unwrap&#45;pertinent&#10;Clippy lints" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1223.5 296,-1223.5 296,-1170.5 528,-1170.5 528,-1223.5"/>
<text text-anchor="middle" x="412" y="-1208.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2297</text>
<text text-anchor="middle" x="412" y="-1193.3" font-family="Times,serif" font-size="14.00" fill="#000000">Enforce unwrap&#45;pertinent</text>
<text text-anchor="middle" x="412" y="-1178.3" font-family="Times,serif" font-size="14.00" fill="#000000">Clippy lints</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1186 -->
<g id="node68" class="node open">
<title>ZcashFoundation/zebra#1186</title>
<g id="a_node68"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1186" xlink:title="ZcashFoundation/zebra#1186&#10;Dedupe Verification error&#10;types (Block, Chain)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1152.5 296,-1152.5 296,-1099.5 528,-1099.5 528,-1152.5"/>
<text text-anchor="middle" x="412" y="-1137.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1186</text>
<text text-anchor="middle" x="412" y="-1122.3" font-family="Times,serif" font-size="14.00" fill="#000000">Dedupe Verification error</text>
<text text-anchor="middle" x="412" y="-1107.3" font-family="Times,serif" font-size="14.00" fill="#000000">types (Block, Chain)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3831 -->
<g id="node69" class="node open">
<title>ZcashFoundation/zebra#3831</title>
<g id="a_node69"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3831" xlink:title="ZcashFoundation/zebra#3831&#10;Remove duplicated&#10;zcash_proofs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1081.5 296,-1081.5 296,-1028.5 528,-1028.5 528,-1081.5"/>
<text text-anchor="middle" x="412" y="-1066.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3831</text>
<text text-anchor="middle" x="412" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove duplicated</text>
<text text-anchor="middle" x="412" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_proofs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2299 -->
<g id="node70" class="node open">
<title>ZcashFoundation/zebra#2299</title>
<g id="a_node70"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2299" xlink:title="ZcashFoundation/zebra#2299&#10;Coverage&#45;based fuzzing&#10;for network message&#10;processing,&#10;(de)serialization" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-1010.5 296,-1010.5 296,-927.5 528,-927.5 528,-1010.5"/>
<text text-anchor="middle" x="412" y="-995.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2299</text>
<text text-anchor="middle" x="412" y="-980.3" font-family="Times,serif" font-size="14.00" fill="#000000">Coverage&#45;based fuzzing</text>
<text text-anchor="middle" x="412" y="-965.3" font-family="Times,serif" font-size="14.00" fill="#000000">for network message</text>
<text text-anchor="middle" x="412" y="-950.3" font-family="Times,serif" font-size="14.00" fill="#000000">processing,</text>
<text text-anchor="middle" x="412" y="-935.3" font-family="Times,serif" font-size="14.00" fill="#000000">(de)serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1890 -->
<g id="node71" class="node open">
<title>ZcashFoundation/zebra#1890</title>
<g id="a_node71"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1890" xlink:title="ZcashFoundation/zebra#1890&#10;Zebra should support&#10;separate local bind and&#10;external advertise&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-909.5 296,-909.5 296,-826.5 528,-826.5 528,-909.5"/>
<text text-anchor="middle" x="412" y="-894.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1890</text>
<text text-anchor="middle" x="412" y="-879.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should support</text>
<text text-anchor="middle" x="412" y="-864.3" font-family="Times,serif" font-size="14.00" fill="#000000">separate local bind and</text>
<text text-anchor="middle" x="412" y="-849.3" font-family="Times,serif" font-size="14.00" fill="#000000">external advertise</text>
<text text-anchor="middle" x="412" y="-834.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1364 -->
<g id="node72" class="node open">
<title>ZcashFoundation/zebra#1364</title>
<g id="a_node72"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1364" xlink:title="ZcashFoundation/zebra#1364&#10;Add a CI job which&#10;compiles each Zebra crate&#10;individually" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-808 296,-808 296,-740 528,-740 528,-808"/>
<text text-anchor="middle" x="412" y="-792.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1364</text>
<text text-anchor="middle" x="412" y="-777.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a CI job which</text>
<text text-anchor="middle" x="412" y="-762.8" font-family="Times,serif" font-size="14.00" fill="#000000">compiles each Zebra crate</text>
<text text-anchor="middle" x="412" y="-747.8" font-family="Times,serif" font-size="14.00" fill="#000000">individually</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3179 -->
<g id="node73" class="node open">
<title>ZcashFoundation/zebra#3179</title>
<g id="a_node73"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3179" xlink:title="ZcashFoundation/zebra#3179&#10;Use a `bellman::Proof`&#10;instead of a byte array&#10;in `Groth16Proof`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-722 296,-722 296,-654 528,-654 528,-722"/>
<text text-anchor="middle" x="412" y="-706.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3179</text>
<text text-anchor="middle" x="412" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">Use a `bellman::Proof`</text>
<text text-anchor="middle" x="412" y="-676.8" font-family="Times,serif" font-size="14.00" fill="#000000">instead of a byte array</text>
<text text-anchor="middle" x="412" y="-661.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `Groth16Proof`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2587 -->
<g id="node74" class="node open">
<title>ZcashFoundation/zebra#2587</title>
<g id="a_node74"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2587" xlink:title="ZcashFoundation/zebra#2587&#10;Clean up History Tree&#10;fields (network,&#10;network_upgrade)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-636 296,-636 296,-568 528,-568 528,-636"/>
<text text-anchor="middle" x="412" y="-620.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2587</text>
<text text-anchor="middle" x="412" y="-605.8" font-family="Times,serif" font-size="14.00" fill="#000000">Clean up History Tree</text>
<text text-anchor="middle" x="412" y="-590.8" font-family="Times,serif" font-size="14.00" fill="#000000">fields (network,</text>
<text text-anchor="middle" x="412" y="-575.8" font-family="Times,serif" font-size="14.00" fill="#000000">network_upgrade)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3117 -->
<g id="node75" class="node open">
<title>ZcashFoundation/zebra#3117</title>
<g id="a_node75"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3117" xlink:title="ZcashFoundation/zebra#3117&#10;Stop using private IP&#10;addresses by default" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-549.5 296,-549.5 296,-496.5 528,-496.5 528,-549.5"/>
<text text-anchor="middle" x="412" y="-534.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3117</text>
<text text-anchor="middle" x="412" y="-519.3" font-family="Times,serif" font-size="14.00" fill="#000000">Stop using private IP</text>
<text text-anchor="middle" x="412" y="-504.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses by default</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1951 -->
<g id="node76" class="node open">
<title>ZcashFoundation/zebra#1951</title>
<g id="a_node76"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1951" xlink:title="ZcashFoundation/zebra#1951&#10;Generalize/deduplicate&#10;async batch verification&#10;services / create a&#10;derive&#45;able proc macro" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-478.5 296,-478.5 296,-395.5 528,-395.5 528,-478.5"/>
<text text-anchor="middle" x="412" y="-463.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1951</text>
<text text-anchor="middle" x="412" y="-448.3" font-family="Times,serif" font-size="14.00" fill="#000000">Generalize/deduplicate</text>
<text text-anchor="middle" x="412" y="-433.3" font-family="Times,serif" font-size="14.00" fill="#000000">async batch verification</text>
<text text-anchor="middle" x="412" y="-418.3" font-family="Times,serif" font-size="14.00" fill="#000000">services / create a</text>
<text text-anchor="middle" x="412" y="-403.3" font-family="Times,serif" font-size="14.00" fill="#000000">derive&#45;able proc macro</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2909 -->
<g id="node77" class="node open">
<title>ZcashFoundation/zebra#2909</title>
<g id="a_node77"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2909" xlink:title="ZcashFoundation/zebra#2909&#10;Test if the block&#10;downloader and verifier&#10;error checking is correct" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-377 296,-377 296,-309 528,-309 528,-377"/>
<text text-anchor="middle" x="412" y="-361.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2909</text>
<text text-anchor="middle" x="412" y="-346.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if the block</text>
<text text-anchor="middle" x="412" y="-331.8" font-family="Times,serif" font-size="14.00" fill="#000000">downloader and verifier</text>
<text text-anchor="middle" x="412" y="-316.8" font-family="Times,serif" font-size="14.00" fill="#000000">error checking is correct</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2436 -->
<g id="node78" class="node open">
<title>ZcashFoundation/zebra#2436</title>
<g id="a_node78"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2436" xlink:title="ZcashFoundation/zebra#2436&#10;Slim down `zebra&#45;consensu&#10;s/src/transaction.rs`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-290.5 296,-290.5 296,-237.5 528,-237.5 528,-290.5"/>
<text text-anchor="middle" x="412" y="-275.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2436</text>
<text text-anchor="middle" x="412" y="-260.3" font-family="Times,serif" font-size="14.00" fill="#000000">Slim down `zebra&#45;consensu</text>
<text text-anchor="middle" x="412" y="-245.3" font-family="Times,serif" font-size="14.00" fill="#000000">s/src/transaction.rs`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1432 -->
<g id="node79" class="node open">
<title>ZcashFoundation/zebra#1432</title>
<g id="a_node79"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1432" xlink:title="ZcashFoundation/zebra#1432&#10;Remove `zebra_state::Requ&#10;est::FindBlockHeaders`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-219.5 296,-219.5 296,-166.5 528,-166.5 528,-219.5"/>
<text text-anchor="middle" x="412" y="-204.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1432</text>
<text text-anchor="middle" x="412" y="-189.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove `zebra_state::Requ</text>
<text text-anchor="middle" x="412" y="-174.3" font-family="Times,serif" font-size="14.00" fill="#000000">est::FindBlockHeaders`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2847 -->
<g id="node80" class="node open">
<title>ZcashFoundation/zebra#2847</title>
<g id="a_node80"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2847" xlink:title="ZcashFoundation/zebra#2847&#10;Make config `Duration`&#10;easier to write in the&#10;toml file" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-148 296,-148 296,-80 528,-80 528,-148"/>
<text text-anchor="middle" x="412" y="-132.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2847</text>
<text text-anchor="middle" x="412" y="-117.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make config `Duration`</text>
<text text-anchor="middle" x="412" y="-102.8" font-family="Times,serif" font-size="14.00" fill="#000000">easier to write in the</text>
<text text-anchor="middle" x="412" y="-87.8" font-family="Times,serif" font-size="14.00" fill="#000000">toml file</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2559 -->
<g id="node81" class="node open">
<title>ZcashFoundation/zebra#2559</title>
<g id="a_node81"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2559" xlink:title="ZcashFoundation/zebra#2559&#10;Test History Tree errors&#10;in finalized state" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="528,-61.5 296,-61.5 296,-8.5 528,-8.5 528,-61.5"/>
<text text-anchor="middle" x="412" y="-46.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2559</text>
<text text-anchor="middle" x="412" y="-31.3" font-family="Times,serif" font-size="14.00" fill="#000000">Test History Tree errors</text>
<text text-anchor="middle" x="412" y="-16.3" font-family="Times,serif" font-size="14.00" fill="#000000">in finalized state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3948 -->
<g id="node82" class="node open">
<title>ZcashFoundation/zebra#3948</title>
<g id="a_node82"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3948" xlink:title="ZcashFoundation/zebra#3948&#10;Tag Zebra NU5 mainnet&#10;version" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="528,-6448.5 296,-6448.5 296,-6395.5 528,-6395.5 528,-6448.5"/>
<text text-anchor="middle" x="412" y="-6433.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3948</text>
<text text-anchor="middle" x="412" y="-6418.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra NU5 mainnet</text>
<text text-anchor="middle" x="412" y="-6403.3" font-family="Times,serif" font-size="14.00" fill="#000000">version</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M500.49,-6395.5C527.08,-6388.7 556.51,-6382.4 584,-6379 676.5,-6367.6 781.77,-6371.3 861.65,-6377.4"/>
<polygon fill="#000000" stroke="#000000" points="861.515,-6380.9002 871.76,-6378.2 862.0673,-6373.922 861.515,-6380.9002"/>
</g>
<!-- ZcashFoundation/zebra#4117 -->
<g id="node83" class="node open">
<title>ZcashFoundation/zebra#4117</title>
<g id="a_node83"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4117" xlink:title="ZcashFoundation/zebra#4117&#10;Set the minimum network&#10;protocol version to&#10;`170_100` for NU5 mainnet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="816,-6456 584,-6456 584,-6388 816,-6388 816,-6456"/>
<text text-anchor="middle" x="700" y="-6440.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4117</text>
<text text-anchor="middle" x="700" y="-6425.8" font-family="Times,serif" font-size="14.00" fill="#000000">Set the minimum network</text>
<text text-anchor="middle" x="700" y="-6410.8" font-family="Times,serif" font-size="14.00" fill="#000000">protocol version to</text>
<text text-anchor="middle" x="700" y="-6395.8" font-family="Times,serif" font-size="14.00" fill="#000000">`170_100` for NU5 mainnet</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#4117 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#4117</title>
<path fill="none" stroke="#000000" d="M528.31,-6422C543.15,-6422 558.4,-6422 573.39,-6422"/>
<polygon fill="#000000" stroke="#000000" points="573.72,-6425.5001 583.72,-6422 573.72,-6418.5001 573.72,-6425.5001"/>
</g>
<!-- ZcashFoundation/zebra#4117&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#4117&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M816.31,-6409.5C831.15,-6407.9 846.4,-6406.2 861.39,-6404.6"/>
<polygon fill="#000000" stroke="#000000" points="862.1469,-6408.0393 871.72,-6403.5 861.4056,-6401.0786 862.1469,-6408.0393"/>
</g>
<!-- ZcashFoundation/zebra#2372 -->
<g id="node84" class="node open">
<title>ZcashFoundation/zebra#2372</title>
<g id="a_node84"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/2372" xlink:title="ZcashFoundation/zebra#2372&#10; Update the README goals&#10;and scope for NU5 mainnet&#10;activation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6456 8,-6456 8,-6388 240,-6388 240,-6456"/>
<text text-anchor="middle" x="124" y="-6440.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2372</text>
<text text-anchor="middle" x="124" y="-6425.8" font-family="Times,serif" font-size="14.00" fill="#000000"> Update the README goals</text>
<text text-anchor="middle" x="124" y="-6410.8" font-family="Times,serif" font-size="14.00" fill="#000000">and scope for NU5 mainnet</text>
<text text-anchor="middle" x="124" y="-6395.8" font-family="Times,serif" font-size="14.00" fill="#000000">activation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2372&#45;&gt;ZcashFoundation/zebra#3948 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#2372&#45;&gt;ZcashFoundation/zebra#3948</title>
<path fill="none" stroke="#000000" d="M240.31,-6422C255.15,-6422 270.4,-6422 285.39,-6422"/>
<polygon fill="#000000" stroke="#000000" points="285.72,-6425.5001 295.72,-6422 285.72,-6418.5001 285.72,-6425.5001"/>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node87" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node87"><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="240,-6548.5 8,-6548.5 8,-6495.5 240,-6495.5 240,-6548.5"/>
<text text-anchor="middle" x="124" y="-6533.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="124" y="-6518.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="124" y="-6503.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1841 -->
<g id="node88" class="node open">
<title>ZcashFoundation/zebra#1841</title>
<g id="a_node88"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1841" xlink:title="ZcashFoundation/zebra#1841&#10;NU5 Tracking Epic" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6605 8,-6605 8,-6567 240,-6567 240,-6605"/>
<text text-anchor="middle" x="124" y="-6589.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1841</text>
<text text-anchor="middle" x="124" y="-6574.8" font-family="Times,serif" font-size="14.00" fill="#000000">NU5 Tracking Epic</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4340 -->
<g id="node89" class="node open">
<title>ZcashFoundation/zebra#4340</title>
<g id="a_node89"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4340" xlink:title="ZcashFoundation/zebra#4340&#10;ci: Require successful&#10;lightwalletd integration&#10;tests for PRs to merge" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6691 8,-6691 8,-6623 240,-6623 240,-6691"/>
<text text-anchor="middle" x="124" y="-6675.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4340</text>
<text text-anchor="middle" x="124" y="-6660.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Require successful</text>
<text text-anchor="middle" x="124" y="-6645.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd integration</text>
<text text-anchor="middle" x="124" y="-6630.8" font-family="Times,serif" font-size="14.00" fill="#000000">tests for PRs to merge</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4355 -->
<g id="node90" class="node open">
<title>ZcashFoundation/zebra#4355</title>
<g id="a_node90"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4355" xlink:title="ZcashFoundation/zebra#4355&#10;2. fix(state): index&#10;spending transaction IDs&#10;for each address" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="528,-6362 296,-6362 296,-6358 292,-6358 292,-6354 296,-6354 296,-6302 292,-6302 292,-6298 296,-6298 296,-6294 528,-6294 528,-6362"/>
<polyline fill="none" stroke="#000000" points="296,-6358 300,-6358 300,-6354 296,-6354 "/>
<polyline fill="none" stroke="#000000" points="296,-6302 300,-6302 300,-6298 296,-6298 "/>
<text text-anchor="middle" x="412" y="-6346.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4355</text>
<text text-anchor="middle" x="412" y="-6331.8" font-family="Times,serif" font-size="14.00" fill="#000000">2. fix(state): index</text>
<text text-anchor="middle" x="412" y="-6316.8" font-family="Times,serif" font-size="14.00" fill="#000000">spending transaction IDs</text>
<text text-anchor="middle" x="412" y="-6301.8" font-family="Times,serif" font-size="14.00" fill="#000000">for each address</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4355&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#4355&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M528.09,-6298C537.55,-6295.3 546.95,-6292.7 556,-6290 566.54,-6286.9 577.47,-6283.5 588.38,-6280.1"/>
<polygon fill="#000000" stroke="#000000" points="589.4629,-6283.4286 597.96,-6277.1 587.371,-6276.7484 589.4629,-6283.4286"/>
</g>
<!-- ZcashFoundation/zebra#4385 -->
<g id="node91" class="node open">
<title>ZcashFoundation/zebra#4385</title>
<g id="a_node91"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4385" xlink:title="ZcashFoundation/zebra#4385&#10;1. fix(ci): rebuild&#10;cached state before&#10;running cached state&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6369.5 8,-6369.5 8,-6365.5 4,-6365.5 4,-6361.5 8,-6361.5 8,-6294.5 4,-6294.5 4,-6290.5 8,-6290.5 8,-6286.5 240,-6286.5 240,-6369.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-6365.5 12,-6365.5 12,-6361.5 8,-6361.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-6294.5 12,-6294.5 12,-6290.5 8,-6290.5 "/>
<text text-anchor="middle" x="124" y="-6354.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4385</text>
<text text-anchor="middle" x="124" y="-6339.3" font-family="Times,serif" font-size="14.00" fill="#000000">1. fix(ci): rebuild</text>
<text text-anchor="middle" x="124" y="-6324.3" font-family="Times,serif" font-size="14.00" fill="#000000">cached state before</text>
<text text-anchor="middle" x="124" y="-6309.3" font-family="Times,serif" font-size="14.00" fill="#000000">running cached state</text>
<text text-anchor="middle" x="124" y="-6294.3" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4385&#45;&gt;ZcashFoundation/zebra#4355 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#4385&#45;&gt;ZcashFoundation/zebra#4355</title>
<path fill="none" stroke="#000000" d="M240.31,-6328C255.15,-6328 270.4,-6328 285.39,-6328"/>
<polygon fill="#000000" stroke="#000000" points="285.72,-6331.5001 295.72,-6328 285.72,-6324.5001 285.72,-6331.5001"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>