developers/zcash-zf-dag.html

1499 lines
115 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Zcash zf DAG</title>
<!-- Pan/zoom SVGs -->
<script src="https://bumbu.me/svg-pan-zoom/dist/svg-pan-zoom.min.js"></script>
<link rel="stylesheet" href="zcash-dag.css">
<style>
@media (prefers-color-scheme: dark) {
body {
/* Material dark theme surface colour */
background-color: #121212;
}
}
</style>
</head>
<body>
<div id="dag"><svg width="1368pt" height="7051pt"
viewBox="0.00 0.00 1368.00 7050.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 7046.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-7046.5 1364,-7046.5 1364,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_0</title>
<polygon fill="none" stroke="#0000ff" points="268,-2294 268,-4997 516,-4997 516,-2294 268,-2294"/>
<text text-anchor="middle" x="392" y="-4981.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Tech Debt</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_4</title>
<polygon fill="none" stroke="#0000ff" points="1072,-5932 1072,-6081 1360,-6081 1360,-5932 1072,-5932"/>
<text text-anchor="middle" x="1216" y="-6065.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_1</title>
<polygon fill="none" stroke="#0000ff" points="0,0 0,-808 248,-808 248,0 0,0"/>
<text text-anchor="middle" x="124" y="-792.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Documentation</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_7</title>
<polygon fill="none" stroke="#0000ff" points="0,-5895 0,-6174 1052,-6174 1052,-5895 0,-5895"/>
<text text-anchor="middle" x="526" y="-6158.8" font-family="Times,serif" font-size="14.00" fill="#000000">NU5 Tracking Epic</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_2</title>
<polygon fill="none" stroke="#0000ff" points="0,-816 0,-2286 516,-2286 516,-816 0,-816"/>
<text text-anchor="middle" x="258" y="-2270.8" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Zebra as a Full&#45;Node Wallet</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_3</title>
<polygon fill="none" stroke="#0000ff" points="0,-5005 0,-5887 516,-5887 516,-5005 0,-5005"/>
<text text-anchor="middle" x="258" y="-5871.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Breaking Changes before the Stable Release</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_5</title>
<polygon fill="none" stroke="#0000ff" points="0,-6336 0,-6759 1052,-6759 1052,-6336 0,-6336"/>
<text text-anchor="middle" x="526" y="-6743.8" font-family="Times,serif" font-size="14.00" fill="#000000">Epic: Zebra as a lightwalletd backend</text>
</g>
<!-- ZcashFoundation/zebra#2573 -->
<g id="node1" class="node open">
<title>ZcashFoundation/zebra#2573</title>
<g id="a_node1"><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="508,-4966 276,-4966 276,-4898 508,-4898 508,-4966"/>
<text text-anchor="middle" x="392" y="-4950.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2573</text>
<text text-anchor="middle" x="392" y="-4935.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove redundant watch</text>
<text text-anchor="middle" x="392" y="-4920.8" font-family="Times,serif" font-size="14.00" fill="#000000">values once our Tokio</text>
<text text-anchor="middle" x="392" y="-4905.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependency is updated</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2214 -->
<g id="node2" class="node open">
<title>ZcashFoundation/zebra#2214</title>
<g id="a_node2"><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="508,-4880 276,-4880 276,-4812 508,-4812 508,-4880"/>
<text text-anchor="middle" x="392" y="-4864.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2214</text>
<text text-anchor="middle" x="392" y="-4849.8" font-family="Times,serif" font-size="14.00" fill="#000000">Limit fanouts to the</text>
<text text-anchor="middle" x="392" y="-4834.8" font-family="Times,serif" font-size="14.00" fill="#000000">number of active peers,</text>
<text text-anchor="middle" x="392" y="-4819.8" font-family="Times,serif" font-size="14.00" fill="#000000">Credit: Equilibrium</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3383 -->
<g id="node3" class="node open">
<title>ZcashFoundation/zebra#3383</title>
<g id="a_node3"><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="508,-4793.5 276,-4793.5 276,-4740.5 508,-4740.5 508,-4793.5"/>
<text text-anchor="middle" x="392" y="-4778.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3383</text>
<text text-anchor="middle" x="392" y="-4763.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document `zebrad</text>
<text text-anchor="middle" x="392" y="-4748.3" font-family="Times,serif" font-size="14.00" fill="#000000">download` command.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2560 -->
<g id="node4" class="node open">
<title>ZcashFoundation/zebra#2560</title>
<g id="a_node4"><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="508,-4722.5 276,-4722.5 276,-4669.5 508,-4669.5 508,-4722.5"/>
<text text-anchor="middle" x="392" y="-4707.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2560</text>
<text text-anchor="middle" x="392" y="-4692.3" font-family="Times,serif" font-size="14.00" fill="#000000">Test History Tree</text>
<text text-anchor="middle" x="392" y="-4677.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1791 -->
<g id="node5" class="node closed">
<title>ZcashFoundation/zebra#1791</title>
<g id="a_node5"><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="508,-4651.5 276,-4651.5 276,-4598.5 508,-4598.5 508,-4651.5"/>
<text text-anchor="middle" x="392" y="-4636.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1791</text>
<text text-anchor="middle" x="392" y="-4621.3" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;enable `sync_large_che</text>
<text text-anchor="middle" x="392" y="-4606.3" font-family="Times,serif" font-size="14.00" fill="#000000">ckpoints_testnet` test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1875 -->
<g id="node6" class="node open">
<title>ZcashFoundation/zebra#1875</title>
<g id="a_node6"><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="508,-4580 276,-4580 276,-4512 508,-4512 508,-4580"/>
<text text-anchor="middle" x="392" y="-4564.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1875</text>
<text text-anchor="middle" x="392" y="-4549.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra attempts new peer</text>
<text text-anchor="middle" x="392" y="-4534.8" font-family="Times,serif" font-size="14.00" fill="#000000">connections in a fixed,</text>
<text text-anchor="middle" x="392" y="-4519.8" font-family="Times,serif" font-size="14.00" fill="#000000">predictable order</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1956 -->
<g id="node7" class="node open">
<title>ZcashFoundation/zebra#1956</title>
<g id="a_node7"><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="508,-4494 276,-4494 276,-4426 508,-4426 508,-4494"/>
<text text-anchor="middle" x="392" y="-4478.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1956</text>
<text text-anchor="middle" x="392" y="-4463.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should store a</text>
<text text-anchor="middle" x="392" y="-4448.8" font-family="Times,serif" font-size="14.00" fill="#000000">persistent list of recent</text>
<text text-anchor="middle" x="392" y="-4433.8" font-family="Times,serif" font-size="14.00" fill="#000000">successful peers</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2042 -->
<g id="node8" class="node open">
<title>ZcashFoundation/zebra#2042</title>
<g id="a_node8"><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="508,-4408 276,-4408 276,-4340 508,-4340 508,-4408"/>
<text text-anchor="middle" x="392" y="-4392.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2042</text>
<text text-anchor="middle" x="392" y="-4377.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebra&#45;chain: Port array&#45;</text>
<text text-anchor="middle" x="392" y="-4362.8" font-family="Times,serif" font-size="14.00" fill="#000000">wrapper types to const</text>
<text text-anchor="middle" x="392" y="-4347.8" font-family="Times,serif" font-size="14.00" fill="#000000">generics</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1786 -->
<g id="node9" class="node open">
<title>ZcashFoundation/zebra#1786</title>
<g id="a_node9"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/1786" xlink:title="ZcashFoundation/zebra#1786&#10;Skip duplicate GitHub&#10;actions" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-4321.5 276,-4321.5 276,-4268.5 508,-4268.5 508,-4321.5"/>
<text text-anchor="middle" x="392" y="-4306.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1786</text>
<text text-anchor="middle" x="392" y="-4291.3" font-family="Times,serif" font-size="14.00" fill="#000000">Skip duplicate GitHub</text>
<text text-anchor="middle" x="392" y="-4276.3" font-family="Times,serif" font-size="14.00" fill="#000000">actions</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3372 -->
<g id="node10" class="node open">
<title>ZcashFoundation/zebra#3372</title>
<g id="a_node10"><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="508,-4250.5 276,-4250.5 276,-4197.5 508,-4197.5 508,-4250.5"/>
<text text-anchor="middle" x="392" y="-4235.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3372</text>
<text text-anchor="middle" x="392" y="-4220.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use clap v3 instead of</text>
<text text-anchor="middle" x="392" y="-4205.3" font-family="Times,serif" font-size="14.00" fill="#000000">structopt</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3436 -->
<g id="node11" class="node open">
<title>ZcashFoundation/zebra#3436</title>
<g id="a_node11"><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="508,-4179 276,-4179 276,-4111 508,-4111 508,-4179"/>
<text text-anchor="middle" x="392" y="-4163.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3436</text>
<text text-anchor="middle" x="392" y="-4148.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create wrapper for</text>
<text text-anchor="middle" x="392" y="-4133.8" font-family="Times,serif" font-size="14.00" fill="#000000">`precomputed` in</text>
<text text-anchor="middle" x="392" y="-4118.8" font-family="Times,serif" font-size="14.00" fill="#000000">`CachedFfiTransaction`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#565 -->
<g id="node12" class="node open">
<title>ZcashFoundation/zebra#565</title>
<g id="a_node12"><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="503.5,-4092.5 280.5,-4092.5 280.5,-4039.5 503.5,-4039.5 503.5,-4092.5"/>
<text text-anchor="middle" x="392" y="-4077.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#565</text>
<text text-anchor="middle" x="392" y="-4062.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: all the</text>
<text text-anchor="middle" x="392" y="-4047.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus parameters</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2298 -->
<g id="node13" class="node open">
<title>ZcashFoundation/zebra#2298</title>
<g id="a_node13"><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="508,-4021.5 276,-4021.5 276,-3938.5 508,-3938.5 508,-4021.5"/>
<text text-anchor="middle" x="392" y="-4006.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2298</text>
<text text-anchor="middle" x="392" y="-3991.3" font-family="Times,serif" font-size="14.00" fill="#000000">Coverage&#45;based fuzzing</text>
<text text-anchor="middle" x="392" y="-3976.3" font-family="Times,serif" font-size="14.00" fill="#000000">for transaction</text>
<text text-anchor="middle" x="392" y="-3961.3" font-family="Times,serif" font-size="14.00" fill="#000000">processing,</text>
<text text-anchor="middle" x="392" y="-3946.3" font-family="Times,serif" font-size="14.00" fill="#000000">(de)serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2908 -->
<g id="node14" class="node open">
<title>ZcashFoundation/zebra#2908</title>
<g id="a_node14"><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="508,-3920 276,-3920 276,-3852 508,-3852 508,-3920"/>
<text text-anchor="middle" x="392" y="-3904.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2908</text>
<text text-anchor="middle" x="392" y="-3889.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve</text>
<text text-anchor="middle" x="392" y="-3874.8" font-family="Times,serif" font-size="14.00" fill="#000000">VerifyBlockError::Commit</text>
<text text-anchor="middle" x="392" y="-3859.8" font-family="Times,serif" font-size="14.00" fill="#000000">typing</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2090 -->
<g id="node15" class="node open">
<title>ZcashFoundation/zebra#2090</title>
<g id="a_node15"><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="508,-3833.5 276,-3833.5 276,-3780.5 508,-3780.5 508,-3833.5"/>
<text text-anchor="middle" x="392" y="-3818.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2090</text>
<text text-anchor="middle" x="392" y="-3803.3" font-family="Times,serif" font-size="14.00" fill="#000000">Auto&#45;delete old Google</text>
<text text-anchor="middle" x="392" y="-3788.3" font-family="Times,serif" font-size="14.00" fill="#000000">Cloud instance templates</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2220 -->
<g id="node16" class="node open">
<title>ZcashFoundation/zebra#2220</title>
<g id="a_node16"><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="508,-3762 276,-3762 276,-3694 508,-3694 508,-3762"/>
<text text-anchor="middle" x="392" y="-3746.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2220</text>
<text text-anchor="middle" x="392" y="-3731.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add the Google Cloud</text>
<text text-anchor="middle" x="392" y="-3716.8" font-family="Times,serif" font-size="14.00" fill="#000000">Instance ID to Sentry, so</text>
<text text-anchor="middle" x="392" y="-3701.8" font-family="Times,serif" font-size="14.00" fill="#000000">we can search logs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2869 -->
<g id="node17" class="node open">
<title>ZcashFoundation/zebra#2869</title>
<g id="a_node17"><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="508,-3675.5 276,-3675.5 276,-3622.5 508,-3622.5 508,-3675.5"/>
<text text-anchor="middle" x="392" y="-3660.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2869</text>
<text text-anchor="middle" x="392" y="-3645.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add mempool metrics</text>
<text text-anchor="middle" x="392" y="-3630.3" font-family="Times,serif" font-size="14.00" fill="#000000">related to memory usage</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2632 -->
<g id="node18" class="node open">
<title>ZcashFoundation/zebra#2632</title>
<g id="a_node18"><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="508,-3604 276,-3604 276,-3536 508,-3536 508,-3604"/>
<text text-anchor="middle" x="392" y="-3588.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2632</text>
<text text-anchor="middle" x="392" y="-3573.8" font-family="Times,serif" font-size="14.00" fill="#000000">Improve performance of</text>
<text text-anchor="middle" x="392" y="-3558.8" font-family="Times,serif" font-size="14.00" fill="#000000">authorizing data</text>
<text text-anchor="middle" x="392" y="-3543.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2297 -->
<g id="node19" class="node open">
<title>ZcashFoundation/zebra#2297</title>
<g id="a_node19"><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="508,-3517.5 276,-3517.5 276,-3464.5 508,-3464.5 508,-3517.5"/>
<text text-anchor="middle" x="392" y="-3502.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2297</text>
<text text-anchor="middle" x="392" y="-3487.3" font-family="Times,serif" font-size="14.00" fill="#000000">Enforce unwrap&#45;pertinent</text>
<text text-anchor="middle" x="392" y="-3472.3" font-family="Times,serif" font-size="14.00" fill="#000000">Clippy lints</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1186 -->
<g id="node20" class="node open">
<title>ZcashFoundation/zebra#1186</title>
<g id="a_node20"><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="508,-3446.5 276,-3446.5 276,-3393.5 508,-3393.5 508,-3446.5"/>
<text text-anchor="middle" x="392" y="-3431.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1186</text>
<text text-anchor="middle" x="392" y="-3416.3" font-family="Times,serif" font-size="14.00" fill="#000000">Dedupe Verification error</text>
<text text-anchor="middle" x="392" y="-3401.3" font-family="Times,serif" font-size="14.00" fill="#000000">types (Block, Chain)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3831 -->
<g id="node21" class="node open">
<title>ZcashFoundation/zebra#3831</title>
<g id="a_node21"><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="508,-3375.5 276,-3375.5 276,-3322.5 508,-3322.5 508,-3375.5"/>
<text text-anchor="middle" x="392" y="-3360.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3831</text>
<text text-anchor="middle" x="392" y="-3345.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove duplicated</text>
<text text-anchor="middle" x="392" y="-3330.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_proofs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2299 -->
<g id="node22" class="node open">
<title>ZcashFoundation/zebra#2299</title>
<g id="a_node22"><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="508,-3304.5 276,-3304.5 276,-3221.5 508,-3221.5 508,-3304.5"/>
<text text-anchor="middle" x="392" y="-3289.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2299</text>
<text text-anchor="middle" x="392" y="-3274.3" font-family="Times,serif" font-size="14.00" fill="#000000">Coverage&#45;based fuzzing</text>
<text text-anchor="middle" x="392" y="-3259.3" font-family="Times,serif" font-size="14.00" fill="#000000">for network message</text>
<text text-anchor="middle" x="392" y="-3244.3" font-family="Times,serif" font-size="14.00" fill="#000000">processing,</text>
<text text-anchor="middle" x="392" y="-3229.3" font-family="Times,serif" font-size="14.00" fill="#000000">(de)serialization</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1890 -->
<g id="node23" class="node open">
<title>ZcashFoundation/zebra#1890</title>
<g id="a_node23"><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="508,-3203.5 276,-3203.5 276,-3120.5 508,-3120.5 508,-3203.5"/>
<text text-anchor="middle" x="392" y="-3188.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1890</text>
<text text-anchor="middle" x="392" y="-3173.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should support</text>
<text text-anchor="middle" x="392" y="-3158.3" font-family="Times,serif" font-size="14.00" fill="#000000">separate local bind and</text>
<text text-anchor="middle" x="392" y="-3143.3" font-family="Times,serif" font-size="14.00" fill="#000000">external advertise</text>
<text text-anchor="middle" x="392" y="-3128.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1364 -->
<g id="node24" class="node open">
<title>ZcashFoundation/zebra#1364</title>
<g id="a_node24"><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="508,-3102 276,-3102 276,-3034 508,-3034 508,-3102"/>
<text text-anchor="middle" x="392" y="-3086.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1364</text>
<text text-anchor="middle" x="392" y="-3071.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add a CI job which</text>
<text text-anchor="middle" x="392" y="-3056.8" font-family="Times,serif" font-size="14.00" fill="#000000">compiles each Zebra crate</text>
<text text-anchor="middle" x="392" y="-3041.8" font-family="Times,serif" font-size="14.00" fill="#000000">individually</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3179 -->
<g id="node25" class="node open">
<title>ZcashFoundation/zebra#3179</title>
<g id="a_node25"><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="508,-3016 276,-3016 276,-2948 508,-2948 508,-3016"/>
<text text-anchor="middle" x="392" y="-3000.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3179</text>
<text text-anchor="middle" x="392" y="-2985.8" font-family="Times,serif" font-size="14.00" fill="#000000">Use a `bellman::Proof`</text>
<text text-anchor="middle" x="392" y="-2970.8" font-family="Times,serif" font-size="14.00" fill="#000000">instead of a byte array</text>
<text text-anchor="middle" x="392" y="-2955.8" font-family="Times,serif" font-size="14.00" fill="#000000">in `Groth16Proof`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2587 -->
<g id="node26" class="node open">
<title>ZcashFoundation/zebra#2587</title>
<g id="a_node26"><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="508,-2930 276,-2930 276,-2862 508,-2862 508,-2930"/>
<text text-anchor="middle" x="392" y="-2914.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2587</text>
<text text-anchor="middle" x="392" y="-2899.8" font-family="Times,serif" font-size="14.00" fill="#000000">Clean up History Tree</text>
<text text-anchor="middle" x="392" y="-2884.8" font-family="Times,serif" font-size="14.00" fill="#000000">fields (network,</text>
<text text-anchor="middle" x="392" y="-2869.8" font-family="Times,serif" font-size="14.00" fill="#000000">network_upgrade)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3117 -->
<g id="node27" class="node open">
<title>ZcashFoundation/zebra#3117</title>
<g id="a_node27"><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="508,-2843.5 276,-2843.5 276,-2790.5 508,-2790.5 508,-2843.5"/>
<text text-anchor="middle" x="392" y="-2828.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3117</text>
<text text-anchor="middle" x="392" y="-2813.3" font-family="Times,serif" font-size="14.00" fill="#000000">Stop using private IP</text>
<text text-anchor="middle" x="392" y="-2798.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses by default</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1951 -->
<g id="node28" class="node open">
<title>ZcashFoundation/zebra#1951</title>
<g id="a_node28"><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="508,-2772.5 276,-2772.5 276,-2689.5 508,-2689.5 508,-2772.5"/>
<text text-anchor="middle" x="392" y="-2757.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1951</text>
<text text-anchor="middle" x="392" y="-2742.3" font-family="Times,serif" font-size="14.00" fill="#000000">Generalize/deduplicate</text>
<text text-anchor="middle" x="392" y="-2727.3" font-family="Times,serif" font-size="14.00" fill="#000000">async batch verification</text>
<text text-anchor="middle" x="392" y="-2712.3" font-family="Times,serif" font-size="14.00" fill="#000000">services / create a</text>
<text text-anchor="middle" x="392" y="-2697.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="node29" class="node open">
<title>ZcashFoundation/zebra#2909</title>
<g id="a_node29"><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="508,-2671 276,-2671 276,-2603 508,-2603 508,-2671"/>
<text text-anchor="middle" x="392" y="-2655.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2909</text>
<text text-anchor="middle" x="392" y="-2640.8" font-family="Times,serif" font-size="14.00" fill="#000000">Test if the block</text>
<text text-anchor="middle" x="392" y="-2625.8" font-family="Times,serif" font-size="14.00" fill="#000000">downloader and verifier</text>
<text text-anchor="middle" x="392" y="-2610.8" font-family="Times,serif" font-size="14.00" fill="#000000">error checking is correct</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2436 -->
<g id="node30" class="node open">
<title>ZcashFoundation/zebra#2436</title>
<g id="a_node30"><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="508,-2584.5 276,-2584.5 276,-2531.5 508,-2531.5 508,-2584.5"/>
<text text-anchor="middle" x="392" y="-2569.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2436</text>
<text text-anchor="middle" x="392" y="-2554.3" font-family="Times,serif" font-size="14.00" fill="#000000">Slim down `zebra&#45;consensu</text>
<text text-anchor="middle" x="392" y="-2539.3" font-family="Times,serif" font-size="14.00" fill="#000000">s/src/transaction.rs`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1432 -->
<g id="node31" class="node open">
<title>ZcashFoundation/zebra#1432</title>
<g id="a_node31"><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="508,-2513.5 276,-2513.5 276,-2460.5 508,-2460.5 508,-2513.5"/>
<text text-anchor="middle" x="392" y="-2498.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1432</text>
<text text-anchor="middle" x="392" y="-2483.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove `zebra_state::Requ</text>
<text text-anchor="middle" x="392" y="-2468.3" font-family="Times,serif" font-size="14.00" fill="#000000">est::FindBlockHeaders`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2847 -->
<g id="node32" class="node open">
<title>ZcashFoundation/zebra#2847</title>
<g id="a_node32"><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="508,-2442 276,-2442 276,-2374 508,-2374 508,-2442"/>
<text text-anchor="middle" x="392" y="-2426.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2847</text>
<text text-anchor="middle" x="392" y="-2411.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make config `Duration`</text>
<text text-anchor="middle" x="392" y="-2396.8" font-family="Times,serif" font-size="14.00" fill="#000000">easier to write in the</text>
<text text-anchor="middle" x="392" y="-2381.8" font-family="Times,serif" font-size="14.00" fill="#000000">toml file</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2559 -->
<g id="node33" class="node open">
<title>ZcashFoundation/zebra#2559</title>
<g id="a_node33"><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="508,-2355.5 276,-2355.5 276,-2302.5 508,-2302.5 508,-2355.5"/>
<text text-anchor="middle" x="392" y="-2340.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2559</text>
<text text-anchor="middle" x="392" y="-2325.3" font-family="Times,serif" font-size="14.00" fill="#000000">Test History Tree errors</text>
<text text-anchor="middle" x="392" y="-2310.3" font-family="Times,serif" font-size="14.00" fill="#000000">in finalized state</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3050 -->
<g id="node34" class="node open">
<title>ZcashFoundation/zebra#3050</title>
<g id="a_node34"><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="1332,-6049.5 1100,-6049.5 1100,-5996.5 1332,-5996.5 1332,-6049.5"/>
<text text-anchor="middle" x="1216" y="-6034.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3050</text>
<text text-anchor="middle" x="1216" y="-6019.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra v1.0.0&#45;rc1</text>
<text text-anchor="middle" x="1216" y="-6004.3" font-family="Times,serif" font-size="14.00" fill="#000000">stable release candidate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2995 -->
<g id="node35" class="node open">
<title>ZcashFoundation/zebra#2995</title>
<g id="a_node35"><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="1332,-5978 1100,-5978 1100,-5940 1332,-5940 1332,-5978"/>
<text text-anchor="middle" x="1216" y="-5962.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2995</text>
<text text-anchor="middle" x="1216" y="-5947.8" font-family="Times,serif" font-size="14.00" fill="#000000">Speed up Zebra&#39;s CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2971 -->
<g id="node36" class="node open">
<title>ZcashFoundation/zebra#2971</title>
<g id="a_node36"><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,-777 8,-777 8,-739 240,-739 240,-777"/>
<text text-anchor="middle" x="124" y="-761.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2971</text>
<text text-anchor="middle" x="124" y="-746.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix crawler.rs doctest</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2892 -->
<g id="node37" class="node open">
<title>ZcashFoundation/zebra#2892</title>
<g id="a_node37"><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="240,-720.5 8,-720.5 8,-667.5 240,-667.5 240,-720.5"/>
<text text-anchor="middle" x="124" y="-705.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2892</text>
<text text-anchor="middle" x="124" y="-690.3" font-family="Times,serif" font-size="14.00" fill="#000000">Go over all `cargo doc`</text>
<text text-anchor="middle" x="124" y="-675.3" font-family="Times,serif" font-size="14.00" fill="#000000">warnings</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3318 -->
<g id="node38" class="node open">
<title>ZcashFoundation/zebra#3318</title>
<g id="a_node38"><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,-649.5 8,-649.5 8,-596.5 240,-596.5 240,-649.5"/>
<text text-anchor="middle" x="124" y="-634.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3318</text>
<text text-anchor="middle" x="124" y="-619.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider adding codespell</text>
<text text-anchor="middle" x="124" y="-604.3" font-family="Times,serif" font-size="14.00" fill="#000000">to the CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1963 -->
<g id="node39" class="node open">
<title>ZcashFoundation/zebra#1963</title>
<g id="a_node39"><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,-578.5 8,-578.5 8,-525.5 240,-525.5 240,-578.5"/>
<text text-anchor="middle" x="124" y="-563.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1963</text>
<text text-anchor="middle" x="124" y="-548.3" font-family="Times,serif" font-size="14.00" fill="#000000">Revise Release Process</text>
<text text-anchor="middle" x="124" y="-533.3" font-family="Times,serif" font-size="14.00" fill="#000000">RFC Draft</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4202 -->
<g id="node40" class="node open">
<title>ZcashFoundation/zebra#4202</title>
<g id="a_node40"><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,-507.5 8,-507.5 8,-454.5 240,-454.5 240,-507.5"/>
<text text-anchor="middle" x="124" y="-492.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4202</text>
<text text-anchor="middle" x="124" y="-477.3" font-family="Times,serif" font-size="14.00" fill="#000000">Document how to handle</text>
<text text-anchor="middle" x="124" y="-462.3" font-family="Times,serif" font-size="14.00" fill="#000000">network upgrades</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2972 -->
<g id="node41" class="node open">
<title>ZcashFoundation/zebra#2972</title>
<g id="a_node41"><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,-436 8,-436 8,-368 240,-368 240,-436"/>
<text text-anchor="middle" x="124" y="-420.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2972</text>
<text text-anchor="middle" x="124" y="-405.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="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">discover how to configure</text>
<text text-anchor="middle" x="124" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2191 -->
<g id="node42" class="node open">
<title>ZcashFoundation/zebra#2191</title>
<g id="a_node42"><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,-350 8,-350 8,-282 240,-282 240,-350"/>
<text text-anchor="middle" x="124" y="-334.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2191</text>
<text text-anchor="middle" x="124" y="-319.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update user and dev</text>
<text text-anchor="middle" x="124" y="-304.8" font-family="Times,serif" font-size="14.00" fill="#000000">instructions in the Zebra</text>
<text text-anchor="middle" x="124" y="-289.8" font-family="Times,serif" font-size="14.00" fill="#000000">Book to deduplicate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2740 -->
<g id="node43" class="node open">
<title>ZcashFoundation/zebra#2740</title>
<g id="a_node43"><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,-264 8,-264 8,-166 240,-166 240,-264"/>
<text text-anchor="middle" x="124" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2740</text>
<text text-anchor="middle" x="124" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Documentation: adapt</text>
<text text-anchor="middle" x="124" y="-218.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra architecture blog</text>
<text text-anchor="middle" x="124" y="-203.8" font-family="Times,serif" font-size="14.00" fill="#000000">posts into zebrad</text>
<text text-anchor="middle" x="124" y="-188.8" font-family="Times,serif" font-size="14.00" fill="#000000">overview for devs in the</text>
<text text-anchor="middle" x="124" y="-173.8" font-family="Times,serif" font-size="14.00" fill="#000000">book</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2001 -->
<g id="node44" class="node open">
<title>ZcashFoundation/zebra#2001</title>
<g id="a_node44"><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,-147.5 8,-147.5 8,-94.5 240,-94.5 240,-147.5"/>
<text text-anchor="middle" x="124" y="-132.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2001</text>
<text text-anchor="middle" x="124" y="-117.3" font-family="Times,serif" font-size="14.00" fill="#000000">Write a draft security</text>
<text text-anchor="middle" x="124" y="-102.3" font-family="Times,serif" font-size="14.00" fill="#000000">triage RFC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1772 -->
<g id="node45" class="node open">
<title>ZcashFoundation/zebra#1772</title>
<g id="a_node45"><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,-76 8,-76 8,-8 240,-8 240,-76"/>
<text text-anchor="middle" x="124" y="-60.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1772</text>
<text text-anchor="middle" x="124" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add comments on how to</text>
<text text-anchor="middle" x="124" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">configure metric and</text>
<text text-anchor="middle" x="124" y="-15.8" font-family="Times,serif" font-size="14.00" fill="#000000">tracing endpoints</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3414 -->
<g id="node46" class="node open">
<title>ZcashFoundation/zebra#3414</title>
<g id="a_node46"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3414" xlink:title="ZcashFoundation/zebra#3414&#10;Upgrade to NU5 mainnet&#10;version of orchard and&#10;librustzcash" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-6143 276,-6143 276,-6075 508,-6075 508,-6143"/>
<text text-anchor="middle" x="392" y="-6127.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3414</text>
<text text-anchor="middle" x="392" y="-6112.8" font-family="Times,serif" font-size="14.00" fill="#000000">Upgrade to NU5 mainnet</text>
<text text-anchor="middle" x="392" y="-6097.8" font-family="Times,serif" font-size="14.00" fill="#000000">version of orchard and</text>
<text text-anchor="middle" x="392" y="-6082.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3948 -->
<g id="node47" class="node open">
<title>ZcashFoundation/zebra#3948</title>
<g id="a_node47"><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="776,-6049.5 544,-6049.5 544,-5996.5 776,-5996.5 776,-6049.5"/>
<text text-anchor="middle" x="660" y="-6034.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3948</text>
<text text-anchor="middle" x="660" y="-6019.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tag Zebra NU5 mainnet</text>
<text text-anchor="middle" x="660" y="-6004.3" font-family="Times,serif" font-size="14.00" fill="#000000">version</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3414&#45;&gt;ZcashFoundation/zebra#3948 -->
<g id="edge1" class="edge">
<title>ZcashFoundation/zebra#3414&#45;&gt;ZcashFoundation/zebra#3948</title>
<path fill="none" stroke="#000000" d="M498.31,-6074.9C521.22,-6067.5 545.26,-6059.8 567.6,-6052.7"/>
<polygon fill="#000000" stroke="#000000" points="568.9723,-6055.9337 577.39,-6049.5 566.7974,-6049.2802 568.9723,-6055.9337"/>
</g>
<!-- ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge31" class="edge">
<title>ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M776.13,-6012.9C788.23,-6012.1 800.36,-6011.5 812,-6011 918.58,-6006.8 945.4,-6007.1 1052,-6011 1064.2,-6011.4 1076.8,-6012.1 1089.5,-6012.8"/>
<polygon fill="#000000" stroke="#000000" points="1089.41,-6016.3007 1099.6,-6013.4 1089.8252,-6009.3131 1089.41,-6016.3007"/>
</g>
<!-- ZcashFoundation/zebra#4117 -->
<g id="node48" class="node open">
<title>ZcashFoundation/zebra#4117</title>
<g id="a_node48"><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="1044,-6088 812,-6088 812,-6020 1044,-6020 1044,-6088"/>
<text text-anchor="middle" x="928" y="-6072.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4117</text>
<text text-anchor="middle" x="928" y="-6057.8" font-family="Times,serif" font-size="14.00" fill="#000000">Set the minimum network</text>
<text text-anchor="middle" x="928" y="-6042.8" font-family="Times,serif" font-size="14.00" fill="#000000">protocol version to</text>
<text text-anchor="middle" x="928" y="-6027.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="edge2" class="edge">
<title>ZcashFoundation/zebra#3948&#45;&gt;ZcashFoundation/zebra#4117</title>
<path fill="none" stroke="#000000" d="M776.38,-6036.5C784.71,-6037.4 793.14,-6038.4 801.53,-6039.4"/>
<polygon fill="#000000" stroke="#000000" points="801.3998,-6042.9087 811.74,-6040.6 802.2169,-6035.9566 801.3998,-6042.9087"/>
</g>
<!-- ZcashFoundation/zebra#4117&#45;&gt;ZcashFoundation/zebra#3050 -->
<g id="edge32" class="edge">
<title>ZcashFoundation/zebra#4117&#45;&gt;ZcashFoundation/zebra#3050</title>
<path fill="none" stroke="#000000" d="M1044.3,-6041.5C1059.2,-6039.9 1074.4,-6038.2 1089.4,-6036.6"/>
<polygon fill="#000000" stroke="#000000" points="1090.1282,-6040.0422 1099.7,-6035.5 1089.3848,-6033.0818 1090.1282,-6040.0422"/>
</g>
<!-- ZcashFoundation/zebra#2372 -->
<g id="node49" class="node open">
<title>ZcashFoundation/zebra#2372</title>
<g id="a_node49"><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="508,-6057 276,-6057 276,-5989 508,-5989 508,-6057"/>
<text text-anchor="middle" x="392" y="-6041.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2372</text>
<text text-anchor="middle" x="392" y="-6026.8" font-family="Times,serif" font-size="14.00" fill="#000000"> Update the README goals</text>
<text text-anchor="middle" x="392" y="-6011.8" font-family="Times,serif" font-size="14.00" fill="#000000">and scope for NU5 mainnet</text>
<text text-anchor="middle" x="392" y="-5996.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="edge3" class="edge">
<title>ZcashFoundation/zebra#2372&#45;&gt;ZcashFoundation/zebra#3948</title>
<path fill="none" stroke="#000000" d="M508.38,-6023C516.71,-6023 525.14,-6023 533.53,-6023"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-6026.5001 543.74,-6023 533.74,-6019.5001 533.74,-6026.5001"/>
</g>
<!-- ZcashFoundation/zebra#4115 -->
<g id="node50" class="node open">
<title>ZcashFoundation/zebra#4115</title>
<g id="a_node50"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4115" xlink:title="ZcashFoundation/zebra#4115&#10;Set the NU5 mainnet&#10;activation height and&#10;network protocol version" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-5971 276,-5971 276,-5903 508,-5903 508,-5971"/>
<text text-anchor="middle" x="392" y="-5955.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4115</text>
<text text-anchor="middle" x="392" y="-5940.8" font-family="Times,serif" font-size="14.00" fill="#000000">Set the NU5 mainnet</text>
<text text-anchor="middle" x="392" y="-5925.8" font-family="Times,serif" font-size="14.00" fill="#000000">activation height and</text>
<text text-anchor="middle" x="392" y="-5910.8" font-family="Times,serif" font-size="14.00" fill="#000000">network protocol version</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4115&#45;&gt;ZcashFoundation/zebra#3948 -->
<g id="edge4" class="edge">
<title>ZcashFoundation/zebra#4115&#45;&gt;ZcashFoundation/zebra#3948</title>
<path fill="none" stroke="#000000" d="M498.31,-5971.1C521.22,-5978.5 545.26,-5986.2 567.6,-5993.3"/>
<polygon fill="#000000" stroke="#000000" points="566.7974,-5996.7198 577.39,-5996.5 568.9723,-5990.0663 566.7974,-5996.7198"/>
</g>
<!-- ZcashFoundation/zebra#4335 -->
<g id="node51" class="node open">
<title>ZcashFoundation/zebra#4335</title>
<g id="a_node51"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4335" xlink:title="ZcashFoundation/zebra#4335&#10; Upgrade librustzcash&#45;&#10;related crypto&#10;dependencies (Season 2)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6143 8,-6143 8,-6075 240,-6075 240,-6143"/>
<text text-anchor="middle" x="124" y="-6127.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4335</text>
<text text-anchor="middle" x="124" y="-6112.8" font-family="Times,serif" font-size="14.00" fill="#000000"> Upgrade librustzcash&#45;</text>
<text text-anchor="middle" x="124" y="-6097.8" font-family="Times,serif" font-size="14.00" fill="#000000">related crypto</text>
<text text-anchor="middle" x="124" y="-6082.8" font-family="Times,serif" font-size="14.00" fill="#000000">dependencies (Season 2)</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4335&#45;&gt;ZcashFoundation/zebra#3414 -->
<g id="edge5" class="edge">
<title>ZcashFoundation/zebra#4335&#45;&gt;ZcashFoundation/zebra#3414</title>
<path fill="none" stroke="#000000" d="M240.38,-6109C248.71,-6109 257.14,-6109 265.53,-6109"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-6112.5001 275.74,-6109 265.74,-6105.5001 265.74,-6112.5001"/>
</g>
<!-- ZcashFoundation/zebra#271 -->
<g id="node52" class="node open">
<title>ZcashFoundation/zebra#271</title>
<g id="a_node52"><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,-2254.5 12.5,-2254.5 12.5,-2201.5 235.5,-2201.5 235.5,-2254.5"/>
<text text-anchor="middle" x="124" y="-2239.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#271</text>
<text text-anchor="middle" x="124" y="-2224.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Key Agreement and</text>
<text text-anchor="middle" x="124" y="-2209.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#269 -->
<g id="node53" class="node open">
<title>ZcashFoundation/zebra#269</title>
<g id="a_node53"><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="503.5,-2254.5 280.5,-2254.5 280.5,-2201.5 503.5,-2201.5 503.5,-2254.5"/>
<text text-anchor="middle" x="392" y="-2239.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#269</text>
<text text-anchor="middle" x="392" y="-2224.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note encryption</text>
<text text-anchor="middle" x="392" y="-2209.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="edge6" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#269</title>
<path fill="none" stroke="#000000" d="M235.72,-2228C247.16,-2228 258.82,-2228 270.36,-2228"/>
<polygon fill="#000000" stroke="#000000" points="270.47,-2231.5001 280.47,-2228 270.47,-2224.5001 270.47,-2231.5001"/>
</g>
<!-- ZcashFoundation/zebra#3002 -->
<g id="node54" class="node open">
<title>ZcashFoundation/zebra#3002</title>
<g id="a_node54"><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="508,-2183.5 276,-2183.5 276,-2130.5 508,-2130.5 508,-2183.5"/>
<text text-anchor="middle" x="392" y="-2168.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3002</text>
<text text-anchor="middle" x="392" y="-2153.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling note decryption</text>
<text text-anchor="middle" x="392" y="-2138.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="edge7" class="edge">
<title>ZcashFoundation/zebra#271&#45;&gt;ZcashFoundation/zebra#3002</title>
<path fill="none" stroke="#000000" d="M224.17,-2201.5C243.13,-2196.4 263.04,-2191.2 282.27,-2186.1"/>
<polygon fill="#000000" stroke="#000000" points="283.2002,-2189.4743 291.95,-2183.5 281.3844,-2182.7139 283.2002,-2189.4743"/>
</g>
<!-- ZcashFoundation/zebra#325 -->
<g id="node55" class="node open">
<title>ZcashFoundation/zebra#325</title>
<g id="a_node55"><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,-2183 12.5,-2183 12.5,-2145 235.5,-2145 235.5,-2183"/>
<text text-anchor="middle" x="124" y="-2167.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#325</text>
<text text-anchor="middle" x="124" y="-2152.8" font-family="Times,serif" font-size="14.00" fill="#000000">Block Chain Scanning</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="235.5,-2126.5 12.5,-2126.5 12.5,-2073.5 235.5,-2073.5 235.5,-2126.5"/>
<text text-anchor="middle" x="124" y="-2111.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#483</text>
<text text-anchor="middle" x="124" y="-2096.3" font-family="Times,serif" font-size="14.00" fill="#000000">Limit generated block and</text>
<text text-anchor="middle" x="124" y="-2081.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction size</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#267 -->
<g id="node57" class="node open">
<title>ZcashFoundation/zebra#267</title>
<g id="a_node57"><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,-2055 12.5,-2055 12.5,-1987 235.5,-1987 235.5,-2055"/>
<text text-anchor="middle" x="124" y="-2039.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#267</text>
<text text-anchor="middle" x="124" y="-2024.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;32 Sapling</text>
<text text-anchor="middle" x="124" y="-2009.8" font-family="Times,serif" font-size="14.00" fill="#000000">and Orchard key</text>
<text text-anchor="middle" x="124" y="-1994.8" font-family="Times,serif" font-size="14.00" fill="#000000">derivation</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2064 -->
<g id="node58" class="node open">
<title>ZcashFoundation/zebra#2064</title>
<g id="a_node58"><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,-1968.5 8,-1968.5 8,-1915.5 240,-1915.5 240,-1968.5"/>
<text text-anchor="middle" x="124" y="-1953.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2064</text>
<text text-anchor="middle" x="124" y="-1938.3" font-family="Times,serif" font-size="14.00" fill="#000000">Import Poseidon hash into</text>
<text text-anchor="middle" x="124" y="-1923.3" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2192 -->
<g id="node59" class="node open">
<title>ZcashFoundation/zebra#2192</title>
<g id="a_node59"><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,-1897.5 8,-1897.5 8,-1814.5 240,-1814.5 240,-1897.5"/>
<text text-anchor="middle" x="124" y="-1882.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2192</text>
<text text-anchor="middle" x="124" y="-1867.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement</text>
<text text-anchor="middle" x="124" y="-1852.3" font-family="Times,serif" font-size="14.00" fill="#000000">`EphemeralPrivateKey`&#39;s</text>
<text text-anchor="middle" x="124" y="-1837.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard, Sapling,</text>
<text text-anchor="middle" x="124" y="-1822.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#181 -->
<g id="node60" class="node open">
<title>ZcashFoundation/zebra#181</title>
<g id="a_node60"><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,-1796 12.5,-1796 12.5,-1728 235.5,-1728 235.5,-1796"/>
<text text-anchor="middle" x="124" y="-1780.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#181</text>
<text text-anchor="middle" x="124" y="-1765.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout note</text>
<text text-anchor="middle" x="124" y="-1750.8" font-family="Times,serif" font-size="14.00" fill="#000000">encryption/decryption</text>
<text text-anchor="middle" x="124" y="-1735.8" font-family="Times,serif" font-size="14.00" fill="#000000">implementation.</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#785 -->
<g id="node61" class="node open">
<title>ZcashFoundation/zebra#785</title>
<g id="a_node61"><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,-1709.5 12.5,-1709.5 12.5,-1626.5 235.5,-1626.5 235.5,-1709.5"/>
<text text-anchor="middle" x="124" y="-1694.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#785</text>
<text text-anchor="middle" x="124" y="-1679.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 212: Allow</text>
<text text-anchor="middle" x="124" y="-1664.3" font-family="Times,serif" font-size="14.00" fill="#000000">Recipient to Derive</text>
<text text-anchor="middle" x="124" y="-1649.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Ephemeral Secret</text>
<text text-anchor="middle" x="124" y="-1634.3" font-family="Times,serif" font-size="14.00" fill="#000000">from Note Plaintext</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#321 -->
<g id="node62" class="node open">
<title>ZcashFoundation/zebra#321</title>
<g id="a_node62"><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,-1608 12.5,-1608 12.5,-1570 235.5,-1570 235.5,-1608"/>
<text text-anchor="middle" x="124" y="-1592.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#321</text>
<text text-anchor="middle" x="124" y="-1577.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create Output Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#272 -->
<g id="node63" class="node open">
<title>ZcashFoundation/zebra#272</title>
<g id="a_node63"><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,-1551.5 12.5,-1551.5 12.5,-1498.5 235.5,-1498.5 235.5,-1551.5"/>
<text text-anchor="middle" x="124" y="-1536.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#272</text>
<text text-anchor="middle" x="124" y="-1521.3" font-family="Times,serif" font-size="14.00" fill="#000000">Sprout Key Agreement and</text>
<text text-anchor="middle" x="124" y="-1506.3" font-family="Times,serif" font-size="14.00" fill="#000000">KDF</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2496 -->
<g id="node64" class="node open">
<title>ZcashFoundation/zebra#2496</title>
<g id="a_node64"><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,-1480.5 8,-1480.5 8,-1397.5 240,-1397.5 240,-1480.5"/>
<text text-anchor="middle" x="124" y="-1465.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2496</text>
<text text-anchor="middle" x="124" y="-1450.3" font-family="Times,serif" font-size="14.00" fill="#000000">Handle a ivk == ⊥</text>
<text text-anchor="middle" x="124" y="-1435.3" font-family="Times,serif" font-size="14.00" fill="#000000">(KA^Orchard private key)</text>
<text text-anchor="middle" x="124" y="-1420.3" font-family="Times,serif" font-size="14.00" fill="#000000">when generating an</text>
<text text-anchor="middle" x="124" y="-1405.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Spending Key</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3869 -->
<g id="node65" class="node open">
<title>ZcashFoundation/zebra#3869</title>
<g id="a_node65"><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,-1379 8,-1379 8,-1311 240,-1311 240,-1379"/>
<text text-anchor="middle" x="124" y="-1363.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3869</text>
<text text-anchor="middle" x="124" y="-1348.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: ensure that ivk</text>
<text text-anchor="middle" x="124" y="-1333.8" font-family="Times,serif" font-size="14.00" fill="#000000">= 0 is rejected if that</text>
<text text-anchor="middle" x="124" y="-1318.8" font-family="Times,serif" font-size="14.00" fill="#000000">negligible case occurs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#278 -->
<g id="node66" class="node open">
<title>ZcashFoundation/zebra#278</title>
<g id="a_node66"><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,-1293 12.5,-1293 12.5,-1255 235.5,-1255 235.5,-1293"/>
<text text-anchor="middle" x="124" y="-1277.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#278</text>
<text text-anchor="middle" x="124" y="-1262.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sapling Note Builder</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2447 -->
<g id="node67" class="node open">
<title>ZcashFoundation/zebra#2447</title>
<g id="a_node67"><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,-1236.5 8,-1236.5 8,-1153.5 240,-1153.5 240,-1236.5"/>
<text text-anchor="middle" x="124" y="-1221.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2447</text>
<text text-anchor="middle" x="124" y="-1206.3" font-family="Times,serif" font-size="14.00" fill="#000000">Define a new `Amount`</text>
<text text-anchor="middle" x="124" y="-1191.3" font-family="Times,serif" font-size="14.00" fill="#000000">`Constraint` for Note</text>
<text text-anchor="middle" x="124" y="-1176.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="-1161.3" font-family="Times,serif" font-size="14.00" fill="#000000">`valid_range()`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2041 -->
<g id="node68" class="node open">
<title>ZcashFoundation/zebra#2041</title>
<g id="a_node68"><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,-1135.5 8,-1135.5 8,-1082.5 240,-1082.5 240,-1135.5"/>
<text text-anchor="middle" x="124" y="-1120.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2041</text>
<text text-anchor="middle" x="124" y="-1105.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: derive</text>
<text text-anchor="middle" x="124" y="-1090.3" font-family="Times,serif" font-size="14.00" fill="#000000">OutgoingCipherKey</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#320 -->
<g id="node69" class="node open">
<title>ZcashFoundation/zebra#320</title>
<g id="a_node69"><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,-1064 12.5,-1064 12.5,-1026 235.5,-1026 235.5,-1064"/>
<text text-anchor="middle" x="124" y="-1048.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#320</text>
<text text-anchor="middle" x="124" y="-1033.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create a Spend Proof</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2080 -->
<g id="node70" class="node open">
<title>ZcashFoundation/zebra#2080</title>
<g id="a_node70"><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,-1008 8,-1008 8,-940 240,-940 240,-1008"/>
<text text-anchor="middle" x="124" y="-992.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2080</text>
<text text-anchor="middle" x="124" y="-977.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace`redpallas` module</text>
<text text-anchor="middle" x="124" y="-962.8" font-family="Times,serif" font-size="14.00" fill="#000000">with `reddsa`/`redpallas`</text>
<text text-anchor="middle" x="124" y="-947.8" font-family="Times,serif" font-size="14.00" fill="#000000">crate</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#2095 -->
<g id="node71" class="node open">
<title>ZcashFoundation/zebra#2095</title>
<g id="a_node71"><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,-922 8,-922 8,-824 240,-824 240,-922"/>
<text text-anchor="middle" x="124" y="-906.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2095</text>
<text text-anchor="middle" x="124" y="-891.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard: update</text>
<text text-anchor="middle" x="124" y="-876.8" font-family="Times,serif" font-size="14.00" fill="#000000">note/action generation to</text>
<text text-anchor="middle" x="124" y="-861.8" font-family="Times,serif" font-size="14.00" fill="#000000">include input note</text>
<text text-anchor="middle" x="124" y="-846.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier in the</text>
<text text-anchor="middle" x="124" y="-831.8" font-family="Times,serif" font-size="14.00" fill="#000000">PRF^expand invocations</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1894 -->
<g id="node72" class="node open">
<title>ZcashFoundation/zebra#1894</title>
<g id="a_node72"><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,-5856 8,-5856 8,-5788 240,-5788 240,-5856"/>
<text text-anchor="middle" x="124" y="-5840.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1894</text>
<text text-anchor="middle" x="124" y="-5825.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra should follow OS</text>
<text text-anchor="middle" x="124" y="-5810.8" font-family="Times,serif" font-size="14.00" fill="#000000">directory conventions</text>
<text text-anchor="middle" x="124" y="-5795.8" font-family="Times,serif" font-size="14.00" fill="#000000">better</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3432 -->
<g id="node73" class="node open">
<title>ZcashFoundation/zebra#3432</title>
<g id="a_node73"><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="508,-5855.5 276,-5855.5 276,-5772.5 508,-5772.5 508,-5855.5"/>
<text text-anchor="middle" x="392" y="-5840.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3432</text>
<text text-anchor="middle" x="392" y="-5825.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use the Filesystem</text>
<text text-anchor="middle" x="392" y="-5810.3" font-family="Times,serif" font-size="14.00" fill="#000000">Hierarchy Standard (FHS)</text>
<text text-anchor="middle" x="392" y="-5795.3" font-family="Times,serif" font-size="14.00" fill="#000000">for deployments and</text>
<text text-anchor="middle" x="392" y="-5780.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="edge8" class="edge">
<title>ZcashFoundation/zebra#1894&#45;&gt;ZcashFoundation/zebra#3432</title>
<path fill="none" stroke="#000000" d="M240.38,-5818.5C248.71,-5818.3 257.14,-5818 265.53,-5817.8"/>
<polygon fill="#000000" stroke="#000000" points="265.8471,-5821.2923 275.74,-5817.5 265.6415,-5814.2953 265.8471,-5821.2923"/>
</g>
<!-- ZcashFoundation/zebra#2631 -->
<g id="node74" class="node open">
<title>ZcashFoundation/zebra#2631</title>
<g id="a_node74"><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,-5770 8,-5770 8,-5702 240,-5702 240,-5770"/>
<text text-anchor="middle" x="124" y="-5754.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#2631</text>
<text text-anchor="middle" x="124" y="-5739.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send committed spent</text>
<text text-anchor="middle" x="124" y="-5724.8" font-family="Times,serif" font-size="14.00" fill="#000000">OutPoints &amp; nullifiers to</text>
<text text-anchor="middle" x="124" y="-5709.8" font-family="Times,serif" font-size="14.00" fill="#000000">the mempool for rejection</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#950 -->
<g id="node75" class="node open">
<title>ZcashFoundation/zebra#950</title>
<g id="a_node75"><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,-5684 12.5,-5684 12.5,-5616 235.5,-5616 235.5,-5684"/>
<text text-anchor="middle" x="124" y="-5668.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#950</text>
<text text-anchor="middle" x="124" y="-5653.8" font-family="Times,serif" font-size="14.00" fill="#000000">Demo: compare zcashd vs</text>
<text text-anchor="middle" x="124" y="-5638.8" font-family="Times,serif" font-size="14.00" fill="#000000">zebrad ludicrous speed on</text>
<text text-anchor="middle" x="124" y="-5623.8" font-family="Times,serif" font-size="14.00" fill="#000000">syncing</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1904 -->
<g id="node76" class="node open">
<title>ZcashFoundation/zebra#1904</title>
<g id="a_node76"><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,-5598 8,-5598 8,-5530 240,-5530 240,-5598"/>
<text text-anchor="middle" x="124" y="-5582.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1904</text>
<text text-anchor="middle" x="124" y="-5567.8" font-family="Times,serif" font-size="14.00" fill="#000000">Some DNS seeders and</text>
<text text-anchor="middle" x="124" y="-5552.8" font-family="Times,serif" font-size="14.00" fill="#000000">block explorers don&#39;t</text>
<text text-anchor="middle" x="124" y="-5537.8" font-family="Times,serif" font-size="14.00" fill="#000000">show Zebra nodes</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791 -->
<g id="edge20" class="edge">
<title>ZcashFoundation/zebra#1904&#45;&gt;ZcashFoundation/zebra#1791</title>
<path fill="none" stroke="#000000" d="M240.46,-5529.7C243.19,-5527 245.72,-5524.1 248,-5521 304.39,-5443.7 209.37,-4735.6 268,-4660 268.22,-4659.7 268.44,-4659.4 268.66,-4659.2"/>
<polygon fill="#000000" stroke="#000000" points="271.3955,-4661.3987 275.66,-4651.7 266.2781,-4656.6225 271.3955,-4661.3987"/>
</g>
<!-- ZcashFoundation/zebra#1615 -->
<g id="node77" class="node open">
<title>ZcashFoundation/zebra#1615</title>
<g id="a_node77"><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,-5512 8,-5512 8,-5444 240,-5444 240,-5512"/>
<text text-anchor="middle" x="124" y="-5496.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1615</text>
<text text-anchor="middle" x="124" y="-5481.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zebra stable download</text>
<text text-anchor="middle" x="124" y="-5466.8" font-family="Times,serif" font-size="14.00" fill="#000000">should be linked from</text>
<text text-anchor="middle" x="124" y="-5451.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZFND website</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1213 -->
<g id="node78" class="node open">
<title>ZcashFoundation/zebra#1213</title>
<g id="a_node78"><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,-5426 8,-5426 8,-5358 240,-5358 240,-5426"/>
<text text-anchor="middle" x="124" y="-5410.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1213</text>
<text text-anchor="middle" x="124" y="-5395.8" font-family="Times,serif" font-size="14.00" fill="#000000">Detect when an older</text>
<text text-anchor="middle" x="124" y="-5380.8" font-family="Times,serif" font-size="14.00" fill="#000000">state version is present,</text>
<text text-anchor="middle" x="124" y="-5365.8" font-family="Times,serif" font-size="14.00" fill="#000000">and delete it</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1621 -->
<g id="node79" class="node open">
<title>ZcashFoundation/zebra#1621</title>
<g id="a_node79"><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,-5340 8,-5340 8,-5272 240,-5272 240,-5340"/>
<text text-anchor="middle" x="124" y="-5324.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1621</text>
<text text-anchor="middle" x="124" y="-5309.8" font-family="Times,serif" font-size="14.00" fill="#000000">Run `zebrad start` by</text>
<text text-anchor="middle" x="124" y="-5294.8" font-family="Times,serif" font-size="14.00" fill="#000000">default, and add `start`</text>
<text text-anchor="middle" x="124" y="-5279.8" font-family="Times,serif" font-size="14.00" fill="#000000">to `zebrad help`</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1617 -->
<g id="node80" class="node open">
<title>ZcashFoundation/zebra#1617</title>
<g id="a_node80"><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,-5253.5 8,-5253.5 8,-5170.5 240,-5170.5 240,-5253.5"/>
<text text-anchor="middle" x="124" y="-5238.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1617</text>
<text text-anchor="middle" x="124" y="-5223.3" font-family="Times,serif" font-size="14.00" fill="#000000">Restructure and clean up</text>
<text text-anchor="middle" x="124" y="-5208.3" font-family="Times,serif" font-size="14.00" fill="#000000">README to make it easier</text>
<text text-anchor="middle" x="124" y="-5193.3" font-family="Times,serif" font-size="14.00" fill="#000000">for new users to get</text>
<text text-anchor="middle" x="124" y="-5178.3" font-family="Times,serif" font-size="14.00" fill="#000000">started with Zebra</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1638 -->
<g id="node81" class="node open">
<title>ZcashFoundation/zebra#1638</title>
<g id="a_node81"><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,-5152.5 8,-5152.5 8,-5099.5 240,-5099.5 240,-5152.5"/>
<text text-anchor="middle" x="124" y="-5137.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1638</text>
<text text-anchor="middle" x="124" y="-5122.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create PGP keys amongst</text>
<text text-anchor="middle" x="124" y="-5107.3" font-family="Times,serif" font-size="14.00" fill="#000000">security@zfnd.org</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1870 -->
<g id="node82" class="node open">
<title>ZcashFoundation/zebra#1870</title>
<g id="a_node82"><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,-5081 8,-5081 8,-5013 240,-5013 240,-5081"/>
<text text-anchor="middle" x="124" y="-5065.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1870</text>
<text text-anchor="middle" x="124" y="-5050.8" font-family="Times,serif" font-size="14.00" fill="#000000">Decide if old Zebra</text>
<text text-anchor="middle" x="124" y="-5035.8" font-family="Times,serif" font-size="14.00" fill="#000000">versions should</text>
<text text-anchor="middle" x="124" y="-5020.8" font-family="Times,serif" font-size="14.00" fill="#000000">eventually refuse to run</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3512 -->
<g id="node83" class="node closed">
<title>ZcashFoundation/zebra#3512</title>
<g id="a_node83"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3512" xlink:title="ZcashFoundation/zebra#3512&#10;Send transactions in&#10;lightwalletd integration&#10;tests" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="776,-6484 544,-6484 544,-6416 776,-6416 776,-6484"/>
<text text-anchor="middle" x="660" y="-6468.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3512</text>
<text text-anchor="middle" x="660" y="-6453.8" font-family="Times,serif" font-size="14.00" fill="#000000">Send transactions in</text>
<text text-anchor="middle" x="660" y="-6438.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd integration</text>
<text text-anchor="middle" x="660" y="-6423.8" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4168 -->
<g id="node84" class="node closed">
<title>ZcashFoundation/zebra#4168</title>
<g id="a_node84"><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="#fad8c7" stroke="#000000" points="1044,-6538.5 812,-6538.5 812,-6485.5 1044,-6485.5 1044,-6538.5"/>
<text text-anchor="middle" x="928" y="-6523.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4168</text>
<text text-anchor="middle" x="928" y="-6508.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: call lightwalletd</text>
<text text-anchor="middle" x="928" y="-6493.3" font-family="Times,serif" font-size="14.00" fill="#000000">wallet queries</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3512&#45;&gt;ZcashFoundation/zebra#4168 -->
<g id="edge9" class="edge">
<title>ZcashFoundation/zebra#3512&#45;&gt;ZcashFoundation/zebra#4168</title>
<path fill="none" stroke="#000000" d="M776.38,-6476.9C785.4,-6479 794.54,-6481.1 803.61,-6483.2"/>
<polygon fill="#000000" stroke="#000000" points="802.8953,-6486.6273 813.43,-6485.5 804.4917,-6479.8117 802.8953,-6486.6273"/>
</g>
<!-- ZcashFoundation/zebra#4150 -->
<g id="node96" class="node open">
<title>ZcashFoundation/zebra#4150</title>
<g id="a_node96"><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="1332,-6369 1100,-6369 1100,-6301 1332,-6301 1332,-6369"/>
<text text-anchor="middle" x="1216" y="-6353.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4150</text>
<text text-anchor="middle" x="1216" y="-6338.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update column family</text>
<text text-anchor="middle" x="1216" y="-6323.8" font-family="Times,serif" font-size="14.00" fill="#000000">names to match Zebra&#39;s</text>
<text text-anchor="middle" x="1216" y="-6308.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="edge21" class="edge">
<title>ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M978.63,-6485.5C1001.3,-6473.3 1028.3,-6458.4 1052,-6444 1088.1,-6422.2 1127.5,-6396.1 1158.6,-6374.9"/>
<polygon fill="#000000" stroke="#000000" points="1160.934,-6377.5433 1167.2,-6369 1156.974,-6371.7711 1160.934,-6377.5433"/>
</g>
<!-- ZcashFoundation/zebra#4153 -->
<g id="node97" class="node open">
<title>ZcashFoundation/zebra#4153</title>
<g id="a_node97"><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="1332,-6735 1100,-6735 1100,-6667 1332,-6667 1332,-6735"/>
<text text-anchor="middle" x="1216" y="-6719.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4153</text>
<text text-anchor="middle" x="1216" y="-6704.8" font-family="Times,serif" font-size="14.00" fill="#000000">Re&#45;use cached state with</text>
<text text-anchor="middle" x="1216" y="-6689.8" font-family="Times,serif" font-size="14.00" fill="#000000">the same version from any</text>
<text text-anchor="middle" x="1216" y="-6674.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="edge22" class="edge">
<title>ZcashFoundation/zebra#4168&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M968.65,-6538.7C1017.4,-6570.7 1099.5,-6624.6 1155.7,-6661.4"/>
<polygon fill="#000000" stroke="#000000" points="1153.8165,-6664.3503 1164.1,-6666.9 1157.6511,-6658.4939 1153.8165,-6664.3503"/>
</g>
<!-- ZcashFoundation/zebra#3156 -->
<g id="node85" class="node open">
<title>ZcashFoundation/zebra#3156</title>
<g id="a_node85"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3156" xlink:title="ZcashFoundation/zebra#3156&#10;z_gettreestate JSON&#45;RPC&#10;method" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-6656.5 276,-6656.5 276,-6603.5 508,-6603.5 508,-6656.5"/>
<text text-anchor="middle" x="392" y="-6641.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3156</text>
<text text-anchor="middle" x="392" y="-6626.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_gettreestate JSON&#45;RPC</text>
<text text-anchor="middle" x="392" y="-6611.3" font-family="Times,serif" font-size="14.00" fill="#000000">method</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3655 -->
<g id="node86" class="node closed">
<title>ZcashFoundation/zebra#3655</title>
<g id="a_node86"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3655" xlink:title="ZcashFoundation/zebra#3655&#10;Integration tests for&#10;lightwalletd RPCs that&#10;are only used when a&#10;wallet connects" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="776,-6585.5 544,-6585.5 544,-6502.5 776,-6502.5 776,-6585.5"/>
<text text-anchor="middle" x="660" y="-6570.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3655</text>
<text text-anchor="middle" x="660" y="-6555.3" font-family="Times,serif" font-size="14.00" fill="#000000">Integration tests for</text>
<text text-anchor="middle" x="660" y="-6540.3" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd RPCs that</text>
<text text-anchor="middle" x="660" y="-6525.3" font-family="Times,serif" font-size="14.00" fill="#000000">are only used when a</text>
<text text-anchor="middle" x="660" y="-6510.3" font-family="Times,serif" font-size="14.00" fill="#000000">wallet connects</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#3655 -->
<g id="edge10" class="edge">
<title>ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#3655</title>
<path fill="none" stroke="#000000" d="M474.6,-6603.5C493.45,-6597.4 513.9,-6590.9 534.11,-6584.4"/>
<polygon fill="#000000" stroke="#000000" points="535.2453,-6587.7114 543.68,-6581.3 533.0881,-6581.052 535.2453,-6587.7114"/>
</g>
<!-- ZcashFoundation/zebra#4278 -->
<g id="node87" class="node open">
<title>ZcashFoundation/zebra#4278</title>
<g id="a_node87"><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" points="776,-6727.5 544,-6727.5 544,-6674.5 776,-6674.5 776,-6727.5"/>
<text text-anchor="middle" x="660" y="-6712.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4278</text>
<text text-anchor="middle" x="660" y="-6697.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add missing wallet grpc</text>
<text text-anchor="middle" x="660" y="-6682.3" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4278 -->
<g id="edge11" class="edge">
<title>ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4278</title>
<path fill="none" stroke="#000000" d="M492.17,-6656.5C511.13,-6661.6 531.04,-6666.8 550.27,-6671.9"/>
<polygon fill="#000000" stroke="#000000" points="549.3844,-6675.2861 559.95,-6674.5 551.2002,-6668.5257 549.3844,-6675.2861"/>
</g>
<!-- ZcashFoundation/zebra#4351 -->
<g id="node88" class="node open">
<title>ZcashFoundation/zebra#4351</title>
<g id="a_node88"><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" points="776,-6656.5 544,-6656.5 544,-6603.5 776,-6603.5 776,-6656.5"/>
<text text-anchor="middle" x="660" y="-6641.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4351</text>
<text text-anchor="middle" x="660" y="-6626.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetTreeState gRPC</text>
<text text-anchor="middle" x="660" y="-6611.3" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4351 -->
<g id="edge12" class="edge">
<title>ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4351</title>
<path fill="none" stroke="#000000" d="M508.38,-6630C516.71,-6630 525.14,-6630 533.53,-6630"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-6633.5001 543.74,-6630 533.74,-6626.5001 533.74,-6633.5001"/>
</g>
<!-- ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge23" class="edge">
<title>ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M498.27,-6603.3C504.92,-6598.7 510.95,-6593.3 516,-6587 551.16,-6543 502.37,-6373 544,-6335 583.23,-6299.2 906.42,-6314.3 1089.9,-6326"/>
<polygon fill="#000000" stroke="#000000" points="1089.68,-6329.4931 1099.9,-6326.7 1090.1688,-6322.5102 1089.68,-6329.4931"/>
</g>
<!-- ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge24" class="edge">
<title>ZcashFoundation/zebra#3156&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M410.68,-6656.6C436.24,-6690.5 485.68,-6747.2 544,-6770 754.32,-6852.1 830.68,-6814.7 1052,-6770 1082.7,-6763.8 1114.9,-6751.7 1142.5,-6739.3"/>
<polygon fill="#000000" stroke="#000000" points="1144.0567,-6742.4369 1151.7,-6735.1 1141.1496,-6736.0691 1144.0567,-6742.4369"/>
</g>
<!-- ZcashFoundation/zebra#3655&#45;&gt;ZcashFoundation/zebra#4168 -->
<g id="edge13" class="edge">
<title>ZcashFoundation/zebra#3655&#45;&gt;ZcashFoundation/zebra#4168</title>
<path fill="none" stroke="#000000" d="M776.38,-6530.1C784.71,-6529.1 793.14,-6528.1 801.53,-6527.1"/>
<polygon fill="#000000" stroke="#000000" points="802.2169,-6530.5434 811.74,-6525.9 801.3998,-6523.5913 802.2169,-6530.5434"/>
</g>
<!-- ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge25" class="edge">
<title>ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M766.61,-6674.3C770.01,-6671.5 773.16,-6668.4 776,-6665 859.86,-6564.7 718.21,-6464.1 812,-6373 850.45,-6335.6 985.95,-6329.3 1089.5,-6330.3"/>
<polygon fill="#000000" stroke="#000000" points="1089.7665,-6333.8027 1099.8,-6330.4 1089.8345,-6326.803 1089.7665,-6333.8027"/>
</g>
<!-- ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge26" class="edge">
<title>ZcashFoundation/zebra#4278&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M776.22,-6701C867.9,-6701 995.6,-6701 1089.8,-6701"/>
<polygon fill="#000000" stroke="#000000" points="1089.9,-6704.5001 1099.9,-6701 1089.9,-6697.5001 1089.9,-6704.5001"/>
</g>
<!-- ZcashFoundation/zebra#3926 -->
<g id="node89" class="node open">
<title>ZcashFoundation/zebra#3926</title>
<g id="a_node89"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/3926" xlink:title="ZcashFoundation/zebra#3926&#10;ci: run a full&#10;lightwalletd sync from a&#10;close&#45;to&#45;tip zebrad" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6570 8,-6570 8,-6502 240,-6502 240,-6570"/>
<text text-anchor="middle" x="124" y="-6554.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3926</text>
<text text-anchor="middle" x="124" y="-6539.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: run a full</text>
<text text-anchor="middle" x="124" y="-6524.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd sync from a</text>
<text text-anchor="middle" x="124" y="-6509.8" font-family="Times,serif" font-size="14.00" fill="#000000">close&#45;to&#45;tip zebrad</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4165 -->
<g id="node90" class="node open">
<title>ZcashFoundation/zebra#4165</title>
<g id="a_node90"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4165" xlink:title="ZcashFoundation/zebra#4165&#10;Store lightwalletd state&#10;after lightwalletd full&#10;sync test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-6488 276,-6488 276,-6420 508,-6420 508,-6488"/>
<text text-anchor="middle" x="392" y="-6472.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4165</text>
<text text-anchor="middle" x="392" y="-6457.8" font-family="Times,serif" font-size="14.00" fill="#000000">Store lightwalletd state</text>
<text text-anchor="middle" x="392" y="-6442.8" font-family="Times,serif" font-size="14.00" fill="#000000">after lightwalletd full</text>
<text text-anchor="middle" x="392" y="-6427.8" font-family="Times,serif" font-size="14.00" fill="#000000">sync test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3926&#45;&gt;ZcashFoundation/zebra#4165 -->
<g id="edge14" class="edge">
<title>ZcashFoundation/zebra#3926&#45;&gt;ZcashFoundation/zebra#4165</title>
<path fill="none" stroke="#000000" d="M235.33,-6501.9C247.01,-6498.4 258.93,-6494.7 270.72,-6491.1"/>
<polygon fill="#000000" stroke="#000000" points="272.0401,-6494.3569 280.59,-6488.1 270.0043,-6487.6595 272.0401,-6494.3569"/>
</g>
<!-- ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#3512 -->
<g id="edge15" class="edge">
<title>ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#3512</title>
<path fill="none" stroke="#000000" d="M508.38,-6452.3C516.71,-6452.1 525.14,-6452 533.53,-6451.9"/>
<polygon fill="#000000" stroke="#000000" points="533.8105,-6455.3953 543.74,-6451.7 533.6733,-6448.3966 533.8105,-6455.3953"/>
</g>
<!-- ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#3655 -->
<g id="edge16" class="edge">
<title>ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#3655</title>
<path fill="none" stroke="#000000" d="M493.32,-6488C506.56,-6492.5 520.25,-6497.1 533.84,-6501.6"/>
<polygon fill="#000000" stroke="#000000" points="533.1062,-6505.0452 543.7,-6504.9 535.3279,-6498.4071 533.1062,-6505.0452"/>
</g>
<!-- ZcashFoundation/zebra#4166 -->
<g id="node91" class="node closed">
<title>ZcashFoundation/zebra#4166</title>
<g id="a_node91"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4166" xlink:title="ZcashFoundation/zebra#4166&#10;Add lightwalletd quick&#10;tip sync test" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="776,-6397.5 544,-6397.5 544,-6344.5 776,-6344.5 776,-6397.5"/>
<text text-anchor="middle" x="660" y="-6382.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4166</text>
<text text-anchor="middle" x="660" y="-6367.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add lightwalletd quick</text>
<text text-anchor="middle" x="660" y="-6352.3" font-family="Times,serif" font-size="14.00" fill="#000000">tip sync test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#4166 -->
<g id="edge17" class="edge">
<title>ZcashFoundation/zebra#4165&#45;&gt;ZcashFoundation/zebra#4166</title>
<path fill="none" stroke="#000000" d="M502.17,-6419.9C522.89,-6413.5 544.39,-6406.8 564.61,-6400.5"/>
<polygon fill="#000000" stroke="#000000" points="565.8889,-6403.769 574.43,-6397.5 563.8437,-6397.0745 565.8889,-6403.769"/>
</g>
<!-- ZcashFoundation/zebra#4167 -->
<g id="node92" class="node open">
<title>ZcashFoundation/zebra#4167</title>
<g id="a_node92"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4167" xlink:title="ZcashFoundation/zebra#4167&#10;ci: call lightwalletd&#10;quick tip sync test" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1044,-6435.5 812,-6435.5 812,-6382.5 1044,-6382.5 1044,-6435.5"/>
<text text-anchor="middle" x="928" y="-6420.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4167</text>
<text text-anchor="middle" x="928" y="-6405.3" font-family="Times,serif" font-size="14.00" fill="#000000">ci: call lightwalletd</text>
<text text-anchor="middle" x="928" y="-6390.3" font-family="Times,serif" font-size="14.00" fill="#000000">quick tip sync test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4166&#45;&gt;ZcashFoundation/zebra#4167 -->
<g id="edge18" class="edge">
<title>ZcashFoundation/zebra#4166&#45;&gt;ZcashFoundation/zebra#4167</title>
<path fill="none" stroke="#000000" d="M776.38,-6387.5C784.81,-6388.7 793.33,-6389.9 801.81,-6391.1"/>
<polygon fill="#000000" stroke="#000000" points="801.3493,-6394.5696 811.74,-6392.5 802.3266,-6387.6381 801.3493,-6394.5696"/>
</g>
<!-- ZcashFoundation/zebra#4167&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge27" class="edge">
<title>ZcashFoundation/zebra#4167&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M1031.2,-6382.5C1050.2,-6377.6 1070.3,-6372.4 1090,-6367.4"/>
<polygon fill="#000000" stroke="#000000" points="1091.1171,-6370.7254 1099.9,-6364.8 1089.3389,-6363.955 1091.1171,-6370.7254"/>
</g>
<!-- ZcashFoundation/zebra#4167&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge28" class="edge">
<title>ZcashFoundation/zebra#4167&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M989.81,-6435.5C1010.9,-6446.3 1033.7,-6460 1052,-6476 1113,-6529.3 1164.4,-6609.2 1192.6,-6658.1"/>
<polygon fill="#000000" stroke="#000000" points="1189.5826,-6659.8739 1197.6,-6666.8 1195.6517,-6656.3858 1189.5826,-6659.8739"/>
</g>
<!-- ZcashFoundation/zebra#4220 -->
<g id="node93" class="node open">
<title>ZcashFoundation/zebra#4220</title>
<g id="a_node93"><a xlink:href="https://github.com/ZcashFoundation/zebra/issues/4220" xlink:title="ZcashFoundation/zebra#4220&#10;getaddressutxos RPC is&#10;missing non&#45;finalized&#10;UTXOs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="508,-6578 276,-6578 276,-6510 508,-6510 508,-6578"/>
<text text-anchor="middle" x="392" y="-6562.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4220</text>
<text text-anchor="middle" x="392" y="-6547.8" font-family="Times,serif" font-size="14.00" fill="#000000">getaddressutxos RPC is</text>
<text text-anchor="middle" x="392" y="-6532.8" font-family="Times,serif" font-size="14.00" fill="#000000">missing non&#45;finalized</text>
<text text-anchor="middle" x="392" y="-6517.8" font-family="Times,serif" font-size="14.00" fill="#000000">UTXOs</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#3655 -->
<g id="edge19" class="edge">
<title>ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#3655</title>
<path fill="none" stroke="#000000" d="M508.38,-6544C516.71,-6544 525.14,-6544 533.53,-6544"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-6547.5001 543.74,-6544 533.74,-6540.5001 533.74,-6547.5001"/>
</g>
<!-- ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#4150 -->
<g id="edge29" class="edge">
<title>ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M503.09,-6509.9C507.83,-6506 512.18,-6501.8 516,-6497 570.75,-6428.7 477.84,-6359.3 544,-6302 629.31,-6228.1 939.67,-6290.8 1052,-6302 1064.3,-6303.2 1077.1,-6305 1089.8,-6307"/>
<polygon fill="#000000" stroke="#000000" points="1089.5606,-6310.5083 1100,-6308.7 1090.7115,-6303.6036 1089.5606,-6310.5083"/>
</g>
<!-- ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#4153 -->
<g id="edge30" class="edge">
<title>ZcashFoundation/zebra#4220&#45;&gt;ZcashFoundation/zebra#4153</title>
<path fill="none" stroke="#000000" d="M498.95,-6578.1C505.26,-6582.7 511.04,-6588 516,-6594 557,-6643.6 494.31,-6695.2 544,-6736 585.04,-6769.7 907.05,-6737.9 1090,-6716.6"/>
<polygon fill="#000000" stroke="#000000" points="1090.4883,-6720.0666 1100,-6715.4 1089.6542,-6713.1165 1090.4883,-6720.0666"/>
</g>
<!-- ZcashFoundation/zebra#4350 -->
<g id="node94" class="node open">
<title>ZcashFoundation/zebra#4350</title>
<g id="a_node94"><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="240,-6483.5 8,-6483.5 8,-6430.5 240,-6430.5 240,-6483.5"/>
<text text-anchor="middle" x="124" y="-6468.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4350</text>
<text text-anchor="middle" x="124" y="-6453.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add GetMempoolTx gRPC</text>
<text text-anchor="middle" x="124" y="-6438.3" font-family="Times,serif" font-size="14.00" fill="#000000">test</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4060 -->
<g id="node95" class="node open">
<title>ZcashFoundation/zebra#4060</title>
<g id="a_node95"><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="240,-6412 8,-6412 8,-6344 240,-6344 240,-6412"/>
<text text-anchor="middle" x="124" y="-6396.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4060</text>
<text text-anchor="middle" x="124" y="-6381.8" font-family="Times,serif" font-size="14.00" fill="#000000">Report better</text>
<text text-anchor="middle" x="124" y="-6366.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions errors to</text>
<text text-anchor="middle" x="124" y="-6351.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3247 -->
<g id="node98" class="node open">
<title>ZcashFoundation/zebra#3247</title>
<g id="a_node98"><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,-6820.5 8,-6820.5 8,-6767.5 240,-6767.5 240,-6820.5"/>
<text text-anchor="middle" x="124" y="-6805.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3247</text>
<text text-anchor="middle" x="124" y="-6790.3" font-family="Times,serif" font-size="14.00" fill="#000000">Tracking: Questions for</text>
<text text-anchor="middle" x="124" y="-6775.3" font-family="Times,serif" font-size="14.00" fill="#000000">Network Audit</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#1841 -->
<g id="node99" class="node open">
<title>ZcashFoundation/zebra#1841</title>
<g id="a_node99"><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,-6877 8,-6877 8,-6839 240,-6839 240,-6877"/>
<text text-anchor="middle" x="124" y="-6861.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#1841</text>
<text text-anchor="middle" x="124" y="-6846.8" font-family="Times,serif" font-size="14.00" fill="#000000">NU5 Tracking Epic</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#3990 -->
<g id="node100" class="node open">
<title>ZcashFoundation/zebra#3990</title>
<g id="a_node100"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/3990" xlink:title="ZcashFoundation/zebra#3990&#10;feat(rpc): Implement&#10;`z_gettreestate` RPC" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-6948.5 8,-6948.5 8,-6944.5 4,-6944.5 4,-6940.5 8,-6940.5 8,-6903.5 4,-6903.5 4,-6899.5 8,-6899.5 8,-6895.5 240,-6895.5 240,-6948.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-6944.5 12,-6944.5 12,-6940.5 8,-6940.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-6903.5 12,-6903.5 12,-6899.5 8,-6899.5 "/>
<text text-anchor="middle" x="124" y="-6933.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#3990</text>
<text text-anchor="middle" x="124" y="-6918.3" font-family="Times,serif" font-size="14.00" fill="#000000">feat(rpc): Implement</text>
<text text-anchor="middle" x="124" y="-6903.3" font-family="Times,serif" font-size="14.00" fill="#000000">`z_gettreestate` RPC</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4303 -->
<g id="node101" class="node open">
<title>ZcashFoundation/zebra#4303</title>
<g id="a_node101"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4303" xlink:title="ZcashFoundation/zebra#4303&#10;change(test): Require&#10;cached lightwalletd state&#10;for the send transaction&#10;tests" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="508,-7042.5 276,-7042.5 276,-7038.5 272,-7038.5 272,-7034.5 276,-7034.5 276,-6967.5 272,-6967.5 272,-6963.5 276,-6963.5 276,-6959.5 508,-6959.5 508,-7042.5"/>
<polyline fill="none" stroke="#000000" points="276,-7038.5 280,-7038.5 280,-7034.5 276,-7034.5 "/>
<polyline fill="none" stroke="#000000" points="276,-6967.5 280,-6967.5 280,-6963.5 276,-6963.5 "/>
<text text-anchor="middle" x="392" y="-7027.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4303</text>
<text text-anchor="middle" x="392" y="-7012.3" font-family="Times,serif" font-size="14.00" fill="#000000">change(test): Require</text>
<text text-anchor="middle" x="392" y="-6997.3" font-family="Times,serif" font-size="14.00" fill="#000000">cached lightwalletd state</text>
<text text-anchor="middle" x="392" y="-6982.3" font-family="Times,serif" font-size="14.00" fill="#000000">for the send transaction</text>
<text text-anchor="middle" x="392" y="-6967.3" font-family="Times,serif" font-size="14.00" fill="#000000">tests</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4340 -->
<g id="node102" class="node open">
<title>ZcashFoundation/zebra#4340</title>
<g id="a_node102"><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" points="776,-7035 544,-7035 544,-6967 776,-6967 776,-7035"/>
<text text-anchor="middle" x="660" y="-7019.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4340</text>
<text text-anchor="middle" x="660" y="-7004.8" font-family="Times,serif" font-size="14.00" fill="#000000">ci: Require successful</text>
<text text-anchor="middle" x="660" y="-6989.8" font-family="Times,serif" font-size="14.00" fill="#000000">lightwalletd integration</text>
<text text-anchor="middle" x="660" y="-6974.8" font-family="Times,serif" font-size="14.00" fill="#000000">tests for PRs to merge</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4303&#45;&gt;ZcashFoundation/zebra#4340 -->
<g id="edge33" class="edge">
<title>ZcashFoundation/zebra#4303&#45;&gt;ZcashFoundation/zebra#4340</title>
<path fill="none" stroke="#000000" d="M508.38,-7001C516.71,-7001 525.14,-7001 533.53,-7001"/>
<polygon fill="#000000" stroke="#000000" points="533.74,-7004.5001 543.74,-7001 533.74,-6997.5001 533.74,-7004.5001"/>
</g>
<!-- ZcashFoundation/zebra#4268 -->
<g id="node103" class="node open">
<title>ZcashFoundation/zebra#4268</title>
<g id="a_node103"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4268" xlink:title="ZcashFoundation/zebra#4268&#10;feat(ci): add&#10;`lightwalletd_full_sync`&#10;test to CI" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="240,-7035 8,-7035 8,-7031 4,-7031 4,-7027 8,-7027 8,-6975 4,-6975 4,-6971 8,-6971 8,-6967 240,-6967 240,-7035"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-7031 12,-7031 12,-7027 8,-7027 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="8,-6975 12,-6975 12,-6971 8,-6971 "/>
<text text-anchor="middle" x="124" y="-7019.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4268</text>
<text text-anchor="middle" x="124" y="-7004.8" font-family="Times,serif" font-size="14.00" fill="#000000">feat(ci): add</text>
<text text-anchor="middle" x="124" y="-6989.8" font-family="Times,serif" font-size="14.00" fill="#000000">`lightwalletd_full_sync`</text>
<text text-anchor="middle" x="124" y="-6974.8" font-family="Times,serif" font-size="14.00" fill="#000000">test to CI</text>
</a>
</g>
</g>
<!-- ZcashFoundation/zebra#4268&#45;&gt;ZcashFoundation/zebra#4303 -->
<g id="edge34" class="edge">
<title>ZcashFoundation/zebra#4268&#45;&gt;ZcashFoundation/zebra#4303</title>
<path fill="none" stroke="#000000" d="M240.38,-7001C248.71,-7001 257.14,-7001 265.53,-7001"/>
<polygon fill="#000000" stroke="#000000" points="265.74,-7004.5001 275.74,-7001 265.74,-6997.5001 265.74,-7004.5001"/>
</g>
<!-- ZcashFoundation/zebra#4355 -->
<g id="node104" class="node open">
<title>ZcashFoundation/zebra#4355</title>
<g id="a_node104"><a xlink:href="https://github.com/ZcashFoundation/zebra/pull/4355" xlink:title="ZcashFoundation/zebra#4355&#10;fix(state): index&#10;spending transaction IDs&#10;for each address" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1044,-6250 812,-6250 812,-6246 808,-6246 808,-6242 812,-6242 812,-6190 808,-6190 808,-6186 812,-6186 812,-6182 1044,-6182 1044,-6250"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="812,-6246 816,-6246 816,-6242 812,-6242 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="812,-6190 816,-6190 816,-6186 812,-6186 "/>
<text text-anchor="middle" x="928" y="-6234.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZcashFoundation/zebra#4355</text>
<text text-anchor="middle" x="928" y="-6219.8" font-family="Times,serif" font-size="14.00" fill="#000000">fix(state): index</text>
<text text-anchor="middle" x="928" y="-6204.8" font-family="Times,serif" font-size="14.00" fill="#000000">spending transaction IDs</text>
<text text-anchor="middle" x="928" y="-6189.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="edge35" class="edge">
<title>ZcashFoundation/zebra#4355&#45;&gt;ZcashFoundation/zebra#4150</title>
<path fill="none" stroke="#000000" d="M1017.2,-6250.1C1029,-6254.7 1040.8,-6259.4 1052,-6264 1077.3,-6274.4 1104.7,-6286 1129.6,-6296.9"/>
<polygon fill="#000000" stroke="#000000" points="1128.5317,-6300.2509 1139.1,-6301 1131.3055,-6293.8239 1128.5317,-6300.2509"/>
</g>
</g>
</svg>
</div>
<script>
svgPanZoom('#dag > svg', {
zoomScaleSensitivity: 0.4
});
</script>
</body>
</html>