developers/zcash-core-dag.svg

2438 lines
173 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
-->
<!-- Pages: 1 -->
<svg width="2924pt" height="2961pt"
viewBox="0.00 0.00 2924.00 2960.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 2956.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2956.5 2920,-2956.5 2920,4 -4,4"/>
<!-- zcash/zcash#4506 -->
<g id="node1" class="node">
<title>zcash/zcash#4506</title>
<g id="a_node1"><a xlink:href="https://github.com/zcash/zcash/issues/4506" xlink:title="zcash/zcash#4506&#10;TZE: Add transaction&#10;builder support to&#10;librustzcash" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="194,-282 24,-282 24,-214 194,-214 194,-282"/>
<text text-anchor="middle" x="109" y="-266.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4506</text>
<text text-anchor="middle" x="109" y="-251.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: Add transaction</text>
<text text-anchor="middle" x="109" y="-236.8" font-family="Times,serif" font-size="14.00" fill="#000000">builder support to</text>
<text text-anchor="middle" x="109" y="-221.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#226 -->
<g id="node2" class="node">
<title>zcash/librustzcash#226</title>
<g id="a_node2"><a xlink:href="https://github.com/zcash/librustzcash/issues/226" xlink:title="zcash/librustzcash#226&#10;Bring in Bolt TZE" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="448,-188 260,-188 260,-150 448,-150 448,-188"/>
<text text-anchor="middle" x="354" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="354" y="-157.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bring in Bolt TZE</text>
</a>
</g>
</g>
<!-- zcash/zcash#4506&#45;&gt;zcash/librustzcash#226 -->
<g id="edge1" class="edge">
<title>zcash/zcash#4506&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M194,-220.59C223.8,-210.98 256.87,-200.32 285.17,-191.19"/>
<polygon fill="#000000" stroke="#000000" points="286.5267,-194.4301 294.97,-188.03 284.3784,-187.7679 286.5267,-194.4301"/>
</g>
<!-- zcash/librustzcash#225 -->
<g id="node3" class="node">
<title>zcash/librustzcash#225</title>
<g id="a_node3"><a xlink:href="https://github.com/zcash/librustzcash/issues/225" xlink:title="zcash/librustzcash#225&#10;Add Bolt TZE support to&#10;the transaction builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="738.5,-195.5 546.5,-195.5 546.5,-142.5 738.5,-142.5 738.5,-195.5"/>
<text text-anchor="middle" x="642.5" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="642.5" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="642.5" y="-150.3" font-family="Times,serif" font-size="14.00" fill="#000000">the transaction builder</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225 -->
<g id="edge2" class="edge">
<title>zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225</title>
<path fill="none" stroke="#000000" d="M448.07,-169C476.16,-169 507.16,-169 535.99,-169"/>
<polygon fill="#000000" stroke="#000000" points="536.09,-172.5001 546.09,-169 536.09,-165.5001 536.09,-172.5001"/>
</g>
<!-- zcash/librustzcash#224 -->
<g id="node4" class="node">
<title>zcash/librustzcash#224</title>
<g id="a_node4"><a xlink:href="https://github.com/zcash/librustzcash/issues/224" xlink:title="zcash/librustzcash#224&#10;Refactor TZE Rust logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="203.5,-124 14.5,-124 14.5,-86 203.5,-86 203.5,-124"/>
<text text-anchor="middle" x="109" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#224</text>
<text text-anchor="middle" x="109" y="-93.8" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor TZE Rust logic</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#224&#45;&gt;zcash/librustzcash#226 -->
<g id="edge3" class="edge">
<title>zcash/librustzcash#224&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M183.48,-124.06C195.04,-127.04 206.85,-130.09 218,-133 235.65,-137.6 254.57,-142.58 272.53,-147.33"/>
<polygon fill="#000000" stroke="#000000" points="271.8273,-150.7645 282.39,-149.94 273.6186,-143.9975 271.8273,-150.7645"/>
</g>
<!-- zcash/zcash#4190 -->
<g id="node5" class="node">
<title>zcash/zcash#4190</title>
<g id="a_node5"><a xlink:href="https://github.com/zcash/zcash/issues/4190" xlink:title="zcash/zcash#4190&#10;TZE: implement zcashd&#10;&#39;host&#39; logic." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="447,-96.5 261,-96.5 261,-43.5 447,-43.5 447,-96.5"/>
<text text-anchor="middle" x="354" y="-81.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="354" y="-66.3" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="354" y="-51.3" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#224&#45;&gt;zcash/zcash#4190 -->
<g id="edge4" class="edge">
<title>zcash/librustzcash#224&#45;&gt;zcash/zcash#4190</title>
<path fill="none" stroke="#000000" d="M203.72,-91.468C219.08,-89.275 235.05,-86.994 250.59,-84.772"/>
<polygon fill="#000000" stroke="#000000" points="251.335,-88.2012 260.74,-83.323 250.3457,-81.2715 251.335,-88.2012"/>
</g>
<!-- zcash/zcash#4877 -->
<g id="node6" class="node">
<title>zcash/zcash#4877</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/zcash/pull/4877" xlink:title="zcash/zcash#4877&#10;Backport Boost removal&#10;PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="204,-353.5 14,-353.5 14,-349.5 10,-349.5 10,-345.5 14,-345.5 14,-308.5 10,-308.5 10,-304.5 14,-304.5 14,-300.5 204,-300.5 204,-353.5"/>
<polyline fill="none" stroke="#000000" points="14,-349.5 18,-349.5 18,-345.5 14,-345.5 "/>
<polyline fill="none" stroke="#000000" points="14,-308.5 18,-308.5 18,-304.5 14,-304.5 "/>
<text text-anchor="middle" x="109" y="-338.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4877</text>
<text text-anchor="middle" x="109" y="-323.3" font-family="Times,serif" font-size="14.00" fill="#000000">Backport Boost removal</text>
<text text-anchor="middle" x="109" y="-308.3" font-family="Times,serif" font-size="14.00" fill="#000000">PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821 -->
<g id="node7" class="node">
<title>zcash/zcash#4821</title>
<g id="a_node7"><a xlink:href="https://github.com/zcash/zcash/issues/4821" xlink:title="zcash/zcash#4821&#10;Replace boost::variant&#10;with std::variant" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="442.5,-388.5 265.5,-388.5 265.5,-335.5 442.5,-335.5 442.5,-388.5"/>
<text text-anchor="middle" x="354" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4821</text>
<text text-anchor="middle" x="354" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace boost::variant</text>
<text text-anchor="middle" x="354" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">with std::variant</text>
</a>
</g>
</g>
<!-- zcash/zcash#4877&#45;&gt;zcash/zcash#4821 -->
<g id="edge5" class="edge">
<title>zcash/zcash#4877&#45;&gt;zcash/zcash#4821</title>
<path fill="none" stroke="#000000" d="M204.07,-340.58C220.94,-342.99 238.54,-345.51 255.5,-347.93"/>
<polygon fill="#000000" stroke="#000000" points="255.0064,-351.3949 265.4,-349.34 255.9934,-344.4649 255.0064,-351.3949"/>
</g>
<!-- zcash/zcash#4822 -->
<g id="node8" class="node">
<title>zcash/zcash#4822</title>
<g id="a_node8"><a xlink:href="https://github.com/zcash/zcash/issues/4822" xlink:title="zcash/zcash#4822&#10;Replace boost::optional&#10;with std::optional" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="446,-317.5 262,-317.5 262,-264.5 446,-264.5 446,-317.5"/>
<text text-anchor="middle" x="354" y="-302.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4822</text>
<text text-anchor="middle" x="354" y="-287.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace boost::optional</text>
<text text-anchor="middle" x="354" y="-272.3" font-family="Times,serif" font-size="14.00" fill="#000000">with std::optional</text>
</a>
</g>
</g>
<!-- zcash/zcash#4877&#45;&gt;zcash/zcash#4822 -->
<g id="edge6" class="edge">
<title>zcash/zcash#4877&#45;&gt;zcash/zcash#4822</title>
<path fill="none" stroke="#000000" d="M204.07,-313.03C219.63,-310.74 235.81,-308.37 251.54,-306.06"/>
<polygon fill="#000000" stroke="#000000" points="252.4162,-309.4688 261.8,-304.55 251.3969,-302.5434 252.4162,-309.4688"/>
</g>
<!-- zcash/zcash#4879 -->
<g id="node9" class="node">
<title>zcash/zcash#4879</title>
<g id="a_node9"><a xlink:href="https://github.com/zcash/zcash/issues/4879" xlink:title="zcash/zcash#4879&#10;Refactor zcashconsensus&#10;library into zcash_script" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="741,-388.5 544,-388.5 544,-335.5 741,-335.5 741,-388.5"/>
<text text-anchor="middle" x="642.5" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4879</text>
<text text-anchor="middle" x="642.5" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor zcashconsensus</text>
<text text-anchor="middle" x="642.5" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">library into zcash_script</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821&#45;&gt;zcash/zcash#4879 -->
<g id="edge7" class="edge">
<title>zcash/zcash#4821&#45;&gt;zcash/zcash#4879</title>
<path fill="none" stroke="#000000" d="M442.52,-362C471.32,-362 503.61,-362 533.71,-362"/>
<polygon fill="#000000" stroke="#000000" points="533.83,-365.5001 543.83,-362 533.83,-358.5001 533.83,-365.5001"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node10" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node10"><a xlink:href="https://github.com/zcash/zcash/issues/4819" xlink:title="zcash/zcash#4819&#10;Backport upstream PRs&#10;that remove Boost usage" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="740,-317.5 545,-317.5 545,-264.5 740,-264.5 740,-317.5"/>
<text text-anchor="middle" x="642.5" y="-302.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="642.5" y="-287.3" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="642.5" y="-272.3" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821&#45;&gt;zcash/zcash#4819 -->
<g id="edge8" class="edge">
<title>zcash/zcash#4821&#45;&gt;zcash/zcash#4819</title>
<path fill="none" stroke="#000000" d="M442.78,-338.05C458.49,-333.94 474.71,-329.78 490,-326 504.49,-322.42 519.79,-318.76 534.88,-315.23"/>
<polygon fill="#000000" stroke="#000000" points="535.814,-318.6062 544.76,-312.93 534.2268,-311.7885 535.814,-318.6062"/>
</g>
<!-- zcash/zcash#4822&#45;&gt;zcash/zcash#4879 -->
<g id="edge9" class="edge">
<title>zcash/zcash#4822&#45;&gt;zcash/zcash#4879</title>
<path fill="none" stroke="#000000" d="M446.11,-314.97C460.78,-318.71 475.8,-322.5 490,-326 504.3,-329.53 519.37,-333.17 534.25,-336.73"/>
<polygon fill="#000000" stroke="#000000" points="533.4511,-340.1376 543.99,-339.05 535.0732,-333.3281 533.4511,-340.1376"/>
</g>
<!-- zcash/zcash#4822&#45;&gt;zcash/zcash#4819 -->
<g id="edge10" class="edge">
<title>zcash/zcash#4822&#45;&gt;zcash/zcash#4819</title>
<path fill="none" stroke="#000000" d="M446.08,-291C474.25,-291 505.5,-291 534.62,-291"/>
<polygon fill="#000000" stroke="#000000" points="534.83,-294.5001 544.83,-291 534.83,-287.5001 534.83,-294.5001"/>
</g>
<!-- zcash/zcash#4876 -->
<g id="node11" class="node">
<title>zcash/zcash#4876</title>
<g id="a_node11"><a xlink:href="https://github.com/zcash/zcash/issues/4876" xlink:title="zcash/zcash#4876&#10;libzcash_script: Expose&#10;precomputation APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1076,-388.5 891,-388.5 891,-335.5 1076,-335.5 1076,-388.5"/>
<text text-anchor="middle" x="983.5" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4876</text>
<text text-anchor="middle" x="983.5" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">libzcash_script: Expose</text>
<text text-anchor="middle" x="983.5" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">precomputation APIs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4879&#45;&gt;zcash/zcash#4876 -->
<g id="edge11" class="edge">
<title>zcash/zcash#4879&#45;&gt;zcash/zcash#4876</title>
<path fill="none" stroke="#000000" d="M741.13,-362C784.93,-362 836.47,-362 880.73,-362"/>
<polygon fill="#000000" stroke="#000000" points="880.94,-365.5001 890.94,-362 880.94,-358.5001 880.94,-365.5001"/>
</g>
<!-- zcash/zcash#4786 -->
<g id="node12" class="node">
<title>zcash/zcash#4786</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/zcash/issues/4786" xlink:title="zcash/zcash#4786&#10;[Orchard] Document&#10;Sinsemilla hash function&#10;and commitment scheme" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1082,-1502 885,-1502 885,-1434 1082,-1434 1082,-1502"/>
<text text-anchor="middle" x="983.5" y="-1486.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4786</text>
<text text-anchor="middle" x="983.5" y="-1471.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Document</text>
<text text-anchor="middle" x="983.5" y="-1456.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sinsemilla hash function</text>
<text text-anchor="middle" x="983.5" y="-1441.8" font-family="Times,serif" font-size="14.00" fill="#000000">and commitment scheme</text>
</a>
</g>
</g>
<!-- zcash/halo2#73 -->
<g id="node13" class="node">
<title>zcash/halo2#73</title>
<g id="a_node13"><a xlink:href="https://github.com/zcash/halo2/issues/73" xlink:title="zcash/halo2#73&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1752,-1494.5 1579,-1494.5 1579,-1441.5 1752,-1441.5 1752,-1494.5"/>
<text text-anchor="middle" x="1665.5" y="-1479.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="1665.5" y="-1464.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1665.5" y="-1449.3" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/halo2#73 -->
<g id="edge12" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M1082.3,-1468C1212.3,-1468 1439.4,-1468 1568.5,-1468"/>
<polygon fill="#000000" stroke="#000000" points="1568.8,-1471.5001 1578.8,-1468 1568.8,-1464.5001 1568.8,-1471.5001"/>
</g>
<!-- zcash/zcash#4707 -->
<g id="node14" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node14"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2091,-1729.5 1922,-1729.5 1922,-1676.5 2091,-1676.5 2091,-1729.5"/>
<text text-anchor="middle" x="2006.5" y="-1714.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="2006.5" y="-1699.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="2006.5" y="-1684.3" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/zcash#4707 -->
<g id="edge13" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1042.9,-1502.2C1074.8,-1523.4 1112.3,-1553.4 1136,-1589 1168.7,-1638.2 1129.1,-1676.4 1172,-1717 1277,-1816.4 1677,-1824.9 1818,-1793 1867.4,-1781.8 1919,-1756 1955.7,-1734.9"/>
<polygon fill="#000000" stroke="#000000" points="1957.7923,-1737.7334 1964.7,-1729.7 1954.2903,-1731.6723 1957.7923,-1737.7334"/>
</g>
<!-- zcash/orchard#21 -->
<g id="node15" class="node">
<title>zcash/orchard#21</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/orchard/pull/21" xlink:title="zcash/orchard#21&#10;Implement Sinsemilla&#10;primitives" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1411,-1309.5 1238,-1309.5 1238,-1305.5 1234,-1305.5 1234,-1301.5 1238,-1301.5 1238,-1264.5 1234,-1264.5 1234,-1260.5 1238,-1260.5 1238,-1256.5 1411,-1256.5 1411,-1309.5"/>
<polyline fill="none" stroke="#000000" points="1238,-1305.5 1242,-1305.5 1242,-1301.5 1238,-1301.5 "/>
<polyline fill="none" stroke="#000000" points="1238,-1264.5 1242,-1264.5 1242,-1260.5 1238,-1260.5 "/>
<text text-anchor="middle" x="1324.5" y="-1294.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#21</text>
<text text-anchor="middle" x="1324.5" y="-1279.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1324.5" y="-1264.3" font-family="Times,serif" font-size="14.00" fill="#000000">primitives</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/orchard#21 -->
<g id="edge14" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/orchard#21</title>
<path fill="none" stroke="#000000" d="M1082.3,-1448.6C1101.9,-1441 1121.1,-1430.5 1136,-1416 1168.9,-1383.9 1137.5,-1349.4 1172,-1319 1187.6,-1305.2 1207.5,-1296.5 1227.7,-1291"/>
<polygon fill="#000000" stroke="#000000" points="1228.7613,-1294.3419 1237.6,-1288.5 1227.0474,-1287.555 1228.7613,-1294.3419"/>
</g>
<!-- zcash/orchard#4 -->
<g id="node16" class="node">
<title>zcash/orchard#4</title>
<g id="a_node16"><a xlink:href="https://github.com/zcash/orchard/issues/4" xlink:title="zcash/orchard#4&#10;Implement the Action&#10;circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2093,-1494.5 1920,-1494.5 1920,-1441.5 2093,-1441.5 2093,-1494.5"/>
<text text-anchor="middle" x="2006.5" y="-1479.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="2006.5" y="-1464.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="2006.5" y="-1449.3" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#73&#45;&gt;zcash/orchard#4 -->
<g id="edge15" class="edge">
<title>zcash/halo2#73&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1752.4,-1468C1800.4,-1468 1860.2,-1468 1909.7,-1468"/>
<polygon fill="#000000" stroke="#000000" points="1909.7,-1471.5001 1919.7,-1468 1909.7,-1464.5001 1909.7,-1471.5001"/>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node17" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard as a&#10;future NU feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2398.5,-1741.5 2206.5,-1741.5 2206.5,-1688.5 2398.5,-1688.5 2398.5,-1741.5"/>
<text text-anchor="middle" x="2302.5" y="-1726.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="2302.5" y="-1711.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard as a</text>
<text text-anchor="middle" x="2302.5" y="-1696.3" font-family="Times,serif" font-size="14.00" fill="#000000">future NU feature</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge16" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2091.3,-1706.4C2124.1,-1707.8 2161.9,-1709.3 2196.4,-1710.7"/>
<polygon fill="#000000" stroke="#000000" points="2196.3693,-1714.2014 2206.5,-1711.1 2196.6464,-1707.2069 2196.3693,-1714.2014"/>
</g>
<!-- zcash/zcash#5024 -->
<g id="node18" class="node">
<title>zcash/zcash#5024</title>
<g id="a_node18"><a xlink:href="https://github.com/zcash/zcash/issues/5024" xlink:title="zcash/zcash#5024&#10;Implement Orchard&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2633,-1620.5 2474,-1620.5 2474,-1567.5 2633,-1567.5 2633,-1620.5"/>
<text text-anchor="middle" x="2553.5" y="-1605.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="2553.5" y="-1590.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="2553.5" y="-1575.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/zcash#5024 -->
<g id="edge17" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2034.7,-1676.4C2069.3,-1645.8 2131.3,-1597.2 2195,-1578 2283.4,-1551.3 2389.7,-1560.9 2463.5,-1573.7"/>
<polygon fill="#000000" stroke="#000000" points="2463.2439,-1577.2088 2473.7,-1575.5 2464.4604,-1570.3153 2463.2439,-1577.2088"/>
</g>
<!-- zcash/orchard#31 -->
<g id="node19" class="node">
<title>zcash/orchard#31</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/orchard/issues/31" xlink:title="zcash/orchard#31&#10;Implement Orchard note&#10;structure" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1763,-1164.5 1568,-1164.5 1568,-1111.5 1763,-1111.5 1763,-1164.5"/>
<text text-anchor="middle" x="1665.5" y="-1149.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#31</text>
<text text-anchor="middle" x="1665.5" y="-1134.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard note</text>
<text text-anchor="middle" x="1665.5" y="-1119.3" font-family="Times,serif" font-size="14.00" fill="#000000">structure</text>
</a>
</g>
</g>
<!-- zcash/orchard#21&#45;&gt;zcash/orchard#31 -->
<g id="edge18" class="edge">
<title>zcash/orchard#21&#45;&gt;zcash/orchard#31</title>
<path fill="none" stroke="#000000" d="M1362.1,-1256.4C1399,-1231.5 1457.5,-1195 1513,-1173 1527.2,-1167.4 1542.5,-1162.5 1557.8,-1158.4"/>
<polygon fill="#000000" stroke="#000000" points="1559.0025,-1161.7038 1567.8,-1155.8 1557.241,-1154.929 1559.0025,-1161.7038"/>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge19" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2023.5,-1494.7C2053.1,-1539.2 2118.3,-1628.5 2195,-1679 2197.4,-1680.6 2199.9,-1682.1 2202.5,-1683.6"/>
<polygon fill="#000000" stroke="#000000" points="2200.937,-1686.7336 2211.4,-1688.4 2204.2599,-1680.5725 2200.937,-1686.7336"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node20" class="node">
<title>zcash/orchard#35</title>
<g id="a_node20"><a xlink:href="https://github.com/zcash/orchard/issues/35" xlink:title="zcash/orchard#35&#10;Transaction building&#10;support" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2385,-925.5 2220,-925.5 2220,-872.5 2385,-872.5 2385,-925.5"/>
<text text-anchor="middle" x="2302.5" y="-910.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="2302.5" y="-895.3" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="2302.5" y="-880.3" font-family="Times,serif" font-size="14.00" fill="#000000">support</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/orchard#35 -->
<g id="edge20" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2093.3,-1448.7C2117.4,-1439.6 2141.6,-1426.3 2159,-1407 2175.3,-1388.9 2263.9,-1048.9 2293.1,-935.49"/>
<polygon fill="#000000" stroke="#000000" points="2296.5555,-936.1102 2295.7,-925.55 2289.7833,-934.3388 2296.5555,-936.1102"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node21" class="node">
<title>zcash/orchard#32</title>
<g id="a_node21"><a xlink:href="https://github.com/zcash/orchard/issues/32" xlink:title="zcash/orchard#32&#10;Implement note encryption&#10;for Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2112.5,-998.5 1900.5,-998.5 1900.5,-945.5 2112.5,-945.5 2112.5,-998.5"/>
<text text-anchor="middle" x="2006.5" y="-983.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="2006.5" y="-968.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="2006.5" y="-953.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#31&#45;&gt;zcash/orchard#32 -->
<g id="edge21" class="edge">
<title>zcash/orchard#31&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1763.3,-1120.6C1781.9,-1115.7 1800.8,-1109.6 1818,-1102 1874.2,-1077 1931.4,-1034.7 1967.8,-1005.2"/>
<polygon fill="#000000" stroke="#000000" points="1970.1948,-1007.7623 1975.7,-998.71 1965.7513,-1002.3534 1970.1948,-1007.7623"/>
</g>
<!-- zcash/orchard#33 -->
<g id="node22" class="node">
<title>zcash/orchard#33</title>
<g id="a_node22"><a xlink:href="https://github.com/zcash/orchard/issues/33" xlink:title="zcash/orchard#33&#10;Implement note commitment&#10;tree logic for Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2119.5,-1890.5 1893.5,-1890.5 1893.5,-1837.5 2119.5,-1837.5 2119.5,-1890.5"/>
<text text-anchor="middle" x="2006.5" y="-1875.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="2006.5" y="-1860.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="2006.5" y="-1845.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#31&#45;&gt;zcash/orchard#33 -->
<g id="edge22" class="edge">
<title>zcash/orchard#31&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1763.1,-1141.5C1784,-1146.9 1804,-1156.5 1818,-1173 1899.5,-1268.9 1796.8,-1625.9 1854,-1738 1874.4,-1778 1913.8,-1810 1947.4,-1831.8"/>
<polygon fill="#000000" stroke="#000000" points="1945.9721,-1835.0367 1956.3,-1837.4 1949.7,-1829.112 1945.9721,-1835.0367"/>
</g>
<!-- zcash/zcash#5021 -->
<g id="node23" class="node">
<title>zcash/zcash#5021</title>
<g id="a_node23"><a xlink:href="https://github.com/zcash/zcash/issues/5021" xlink:title="zcash/zcash#5021&#10;Add Orchard support to&#10;transaction builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2647.5,-925.5 2459.5,-925.5 2459.5,-872.5 2647.5,-872.5 2647.5,-925.5"/>
<text text-anchor="middle" x="2553.5" y="-910.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="2553.5" y="-895.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="2553.5" y="-880.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction builder</text>
</a>
</g>
</g>
<!-- zcash/orchard#35&#45;&gt;zcash/zcash#5021 -->
<g id="edge23" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M2385,-899C2405.5,-899 2427.7,-899 2449.1,-899"/>
<polygon fill="#000000" stroke="#000000" points="2449.2,-902.5001 2459.2,-899 2449.2,-895.5001 2449.2,-902.5001"/>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/orchard#35 -->
<g id="edge39" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2112.5,-945.85C2144.4,-937.99 2179.1,-929.43 2210.1,-921.8"/>
<polygon fill="#000000" stroke="#000000" points="2211.1281,-925.1514 2220,-919.36 2209.453,-918.3548 2211.1281,-925.1514"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node36" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node36"><a xlink:href="https://github.com/zcash/zcash/issues/5020" xlink:title="zcash/zcash#5020&#10;Add Orchard note&#10;detection and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2649.5,-849 2457.5,-849 2457.5,-781 2649.5,-781 2649.5,-849"/>
<text text-anchor="middle" x="2553.5" y="-833.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="2553.5" y="-818.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2553.5" y="-803.8" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="2553.5" y="-788.8" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/zcash#5020 -->
<g id="edge40" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M2112.7,-988.48C2200,-996.21 2323,-993.2 2410,-934 2439.2,-914.09 2420.4,-887.39 2446,-863 2449,-860.11 2452.3,-857.37 2455.7,-854.78"/>
<polygon fill="#000000" stroke="#000000" points="2457.7359,-857.6271 2463.9,-849.01 2453.7076,-851.9023 2457.7359,-857.6271"/>
</g>
<!-- zcash/zcash#5018 -->
<g id="node38" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node38"><a xlink:href="https://github.com/zcash/zcash/issues/5018" xlink:title="zcash/zcash#5018&#10;Add Orchard note&#10;commitment tree and&#10;nullifier set to&#10;CCoinsView" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2388.5,-1905.5 2216.5,-1905.5 2216.5,-1822.5 2388.5,-1822.5 2388.5,-1905.5"/>
<text text-anchor="middle" x="2302.5" y="-1890.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="2302.5" y="-1875.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2302.5" y="-1860.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="2302.5" y="-1845.3" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="2302.5" y="-1830.3" font-family="Times,serif" font-size="14.00" fill="#000000">CCoinsView</text>
</a>
</g>
</g>
<!-- zcash/orchard#33&#45;&gt;zcash/zcash#5018 -->
<g id="edge43" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M2119.7,-1864C2148.2,-1864 2178.5,-1864 2206.1,-1864"/>
<polygon fill="#000000" stroke="#000000" points="2206.1,-1867.5001 2216.1,-1864 2206.1,-1860.5001 2206.1,-1867.5001"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node34" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/zcash/issues/5023" xlink:title="zcash/zcash#5023&#10;Implement support for&#10;Orchard shielded coinbase&#10;output" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2911,-855 2702,-855 2702,-787 2911,-787 2911,-855"/>
<text text-anchor="middle" x="2806.5" y="-839.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="2806.5" y="-824.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2806.5" y="-809.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="2806.5" y="-794.8" font-family="Times,serif" font-size="14.00" fill="#000000">output</text>
</a>
</g>
</g>
<!-- zcash/zcash#5021&#45;&gt;zcash/zcash#5023 -->
<g id="edge36" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M2639.5,-872.48C2656.4,-867.27 2674.4,-861.72 2692.1,-856.26"/>
<polygon fill="#000000" stroke="#000000" points="2693.3684,-859.5319 2701.9,-853.25 2691.3131,-852.8404 2693.3684,-859.5319"/>
</g>
<!-- zcash/zcash#4883 -->
<g id="node24" class="node">
<title>zcash/zcash#4883</title>
<g id="a_node24"><a xlink:href="https://github.com/zcash/zcash/issues/4883" xlink:title="zcash/zcash#4883&#10;Find optimized addition&#10;chains for the Pasta&#10;fields (x^{1/α} used in&#10;Rescue, and x^{(m&#45;1)/2}&#10;used in square root)" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="452.5,-1462 255.5,-1462 255.5,-1364 452.5,-1364 452.5,-1462"/>
<text text-anchor="middle" x="354" y="-1446.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4883</text>
<text text-anchor="middle" x="354" y="-1431.8" font-family="Times,serif" font-size="14.00" fill="#000000">Find optimized addition</text>
<text text-anchor="middle" x="354" y="-1416.8" font-family="Times,serif" font-size="14.00" fill="#000000">chains for the Pasta</text>
<text text-anchor="middle" x="354" y="-1401.8" font-family="Times,serif" font-size="14.00" fill="#000000">fields (x^{1/α} used in</text>
<text text-anchor="middle" x="354" y="-1386.8" font-family="Times,serif" font-size="14.00" fill="#000000">Rescue, and x^{(m&#45;1)/2}</text>
<text text-anchor="middle" x="354" y="-1371.8" font-family="Times,serif" font-size="14.00" fill="#000000">used in square root)</text>
</a>
</g>
</g>
<!-- zcash/halo2#72 -->
<g id="node25" class="node">
<title>zcash/halo2#72</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/halo2/issues/72" xlink:title="zcash/halo2#72&#10;Implement table&#45;based&#10;variant of Sarkar&#39;s&#10;square root algorithm" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="733.5,-1400 551.5,-1400 551.5,-1332 733.5,-1332 733.5,-1400"/>
<text text-anchor="middle" x="642.5" y="-1384.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#72</text>
<text text-anchor="middle" x="642.5" y="-1369.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement table&#45;based</text>
<text text-anchor="middle" x="642.5" y="-1354.8" font-family="Times,serif" font-size="14.00" fill="#000000">variant of Sarkar&#39;s</text>
<text text-anchor="middle" x="642.5" y="-1339.8" font-family="Times,serif" font-size="14.00" fill="#000000">square root algorithm</text>
</a>
</g>
</g>
<!-- zcash/zcash#4883&#45;&gt;zcash/halo2#72 -->
<g id="edge24" class="edge">
<title>zcash/zcash#4883&#45;&gt;zcash/halo2#72</title>
<path fill="none" stroke="#000000" d="M452.88,-1396.9C481.33,-1392.3 512.41,-1387.2 541.02,-1382.5"/>
<polygon fill="#000000" stroke="#000000" points="541.6986,-1385.936 551.02,-1380.9 540.5926,-1379.0239 541.6986,-1385.936"/>
</g>
<!-- zcash/zcash#4710 -->
<g id="node26" class="node">
<title>zcash/zcash#4710</title>
<g id="a_node26"><a xlink:href="https://github.com/zcash/zcash/issues/4710" xlink:title="zcash/zcash#4710&#10;[Orchard]&#10;Specify/implement&#10;GroupHash into&#10;Pallas/Vesta" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1059,-1407.5 908,-1407.5 908,-1324.5 1059,-1324.5 1059,-1407.5"/>
<text text-anchor="middle" x="983.5" y="-1392.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4710</text>
<text text-anchor="middle" x="983.5" y="-1377.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard]</text>
<text text-anchor="middle" x="983.5" y="-1362.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify/implement</text>
<text text-anchor="middle" x="983.5" y="-1347.3" font-family="Times,serif" font-size="14.00" fill="#000000">GroupHash into</text>
<text text-anchor="middle" x="983.5" y="-1332.3" font-family="Times,serif" font-size="14.00" fill="#000000">Pallas/Vesta</text>
</a>
</g>
</g>
<!-- zcash/halo2#72&#45;&gt;zcash/zcash#4710 -->
<g id="edge25" class="edge">
<title>zcash/halo2#72&#45;&gt;zcash/zcash#4710</title>
<path fill="none" stroke="#000000" d="M733.88,-1366C784.82,-1366 847.87,-1366 897.86,-1366"/>
<polygon fill="#000000" stroke="#000000" points="897.99,-1369.5001 907.99,-1366 897.99,-1362.5001 897.99,-1369.5001"/>
</g>
<!-- zcash/zcash#4710&#45;&gt;zcash/zcash#4707 -->
<g id="edge26" class="edge">
<title>zcash/zcash#4710&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1059.1,-1378.5C1087.4,-1387 1117.1,-1401.2 1136,-1425 1206.9,-1514.3 1087,-1603 1172,-1679 1226,-1727.3 1704.4,-1714.8 1911.5,-1707"/>
<polygon fill="#000000" stroke="#000000" points="1911.9434,-1710.4855 1921.8,-1706.6 1911.6717,-1703.4908 1911.9434,-1710.4855"/>
</g>
<!-- zcash/zcash#4710&#45;&gt;zcash/orchard#21 -->
<g id="edge27" class="edge">
<title>zcash/zcash#4710&#45;&gt;zcash/orchard#21</title>
<path fill="none" stroke="#000000" d="M1059.1,-1346.9C1093.5,-1338.3 1134.8,-1328 1172,-1319 1190,-1314.6 1209.3,-1310 1227.8,-1305.6"/>
<polygon fill="#000000" stroke="#000000" points="1228.839,-1308.9525 1237.8,-1303.3 1227.2699,-1302.1306 1228.839,-1308.9525"/>
</g>
<!-- zcash/halo2#66 -->
<g id="node27" class="node">
<title>zcash/halo2#66</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/halo2/issues/66" xlink:title="zcash/halo2#66&#10;Refactor proofs to not&#10;require length encodings" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1423,-2109.5 1226,-2109.5 1226,-2056.5 1423,-2056.5 1423,-2109.5"/>
<text text-anchor="middle" x="1324.5" y="-2094.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#66</text>
<text text-anchor="middle" x="1324.5" y="-2079.3" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor proofs to not</text>
<text text-anchor="middle" x="1324.5" y="-2064.3" font-family="Times,serif" font-size="14.00" fill="#000000">require length encodings</text>
</a>
</g>
</g>
<!-- zcash/zcash#4714 -->
<g id="node28" class="node">
<title>zcash/zcash#4714</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/zcash/issues/4714" xlink:title="zcash/zcash#4714&#10;[Orchard] Encoding of&#10;Halo 2 proofs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1754,-1894.5 1577,-1894.5 1577,-1841.5 1754,-1841.5 1754,-1894.5"/>
<text text-anchor="middle" x="1665.5" y="-1879.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="1665.5" y="-1864.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="1665.5" y="-1849.3" font-family="Times,serif" font-size="14.00" fill="#000000">Halo 2 proofs</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/zcash#4714 -->
<g id="edge28" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M1423.2,-2076.1C1443.1,-2070.5 1462.4,-2061.4 1477,-2047 1524,-2000.7 1465.9,-1949.2 1513,-1903 1527.7,-1888.6 1547,-1879.7 1566.9,-1874.2"/>
<polygon fill="#000000" stroke="#000000" points="1567.8196,-1877.5783 1576.7,-1871.8 1566.1545,-1870.7792 1567.8196,-1877.5783"/>
</g>
<!-- zcash/halo2#67 -->
<g id="node29" class="node">
<title>zcash/halo2#67</title>
<g id="a_node29"><a xlink:href="https://github.com/zcash/halo2/issues/67" xlink:title="zcash/halo2#67&#10;Multi&#45;proof prover" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1740,-2146 1591,-2146 1591,-2108 1740,-2108 1740,-2146"/>
<text text-anchor="middle" x="1665.5" y="-2130.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#67</text>
<text text-anchor="middle" x="1665.5" y="-2115.8" font-family="Times,serif" font-size="14.00" fill="#000000">Multi&#45;proof prover</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/halo2#67 -->
<g id="edge29" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/halo2#67</title>
<path fill="none" stroke="#000000" d="M1423.1,-2095.7C1473.1,-2102.2 1533.1,-2109.9 1580.9,-2116.1"/>
<polygon fill="#000000" stroke="#000000" points="1580.5322,-2119.5816 1590.9,-2117.4 1581.4347,-2112.64 1580.5322,-2119.5816"/>
</g>
<!-- zcash/halo2#74 -->
<g id="node30" class="node">
<title>zcash/halo2#74</title>
<g id="a_node30"><a xlink:href="https://github.com/zcash/halo2/issues/74" xlink:title="zcash/halo2#74&#10;Implement plumbing for&#10;recursion" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1761,-2217.5 1570,-2217.5 1570,-2164.5 1761,-2164.5 1761,-2217.5"/>
<text text-anchor="middle" x="1665.5" y="-2202.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#74</text>
<text text-anchor="middle" x="1665.5" y="-2187.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement plumbing for</text>
<text text-anchor="middle" x="1665.5" y="-2172.3" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/halo2#74 -->
<g id="edge30" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/halo2#74</title>
<path fill="none" stroke="#000000" d="M1423.1,-2097.8C1441.7,-2102.9 1460.5,-2109.8 1477,-2119 1496.8,-2130 1493.2,-2144 1513,-2155 1527.4,-2163 1543.4,-2169.2 1559.6,-2174.1"/>
<polygon fill="#000000" stroke="#000000" points="1559.1284,-2177.6012 1569.7,-2176.9 1560.9985,-2170.8556 1559.1284,-2177.6012"/>
</g>
<!-- zcash/zcash#4714&#45;&gt;zcash/zcash#4707 -->
<g id="edge31" class="edge">
<title>zcash/zcash#4714&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1754.3,-1849.3C1775.6,-1843.4 1798,-1836 1818,-1827 1872.3,-1802.6 1928.6,-1763.5 1965.3,-1735.7"/>
<polygon fill="#000000" stroke="#000000" points="1967.4702,-1738.4467 1973.3,-1729.6 1963.2257,-1732.8802 1967.4702,-1738.4467"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node31" class="node">
<title>zcash/halo2#75</title>
<g id="a_node31"><a xlink:href="https://github.com/zcash/halo2/issues/75" xlink:title="zcash/halo2#75&#10;Implement support for&#10;recursion" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2096,-2272.5 1917,-2272.5 1917,-2219.5 2096,-2219.5 2096,-2272.5"/>
<text text-anchor="middle" x="2006.5" y="-2257.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="2006.5" y="-2242.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2006.5" y="-2227.3" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#74&#45;&gt;zcash/halo2#75 -->
<g id="edge32" class="edge">
<title>zcash/halo2#74&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1761.4,-2206.5C1806.8,-2213.8 1861,-2222.5 1906.9,-2229.9"/>
<polygon fill="#000000" stroke="#000000" points="1906.4726,-2233.3761 1916.9,-2231.5 1907.5786,-2226.464 1906.4726,-2233.3761"/>
</g>
<!-- zcash/halo2#251 -->
<g id="node32" class="node">
<title>zcash/halo2#251</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/halo2/issues/251" xlink:title="zcash/halo2#251&#10;Implement user&#45;facing API&#10;for recursive proving" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2407.5,-2272.5 2197.5,-2272.5 2197.5,-2219.5 2407.5,-2219.5 2407.5,-2272.5"/>
<text text-anchor="middle" x="2302.5" y="-2257.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="2302.5" y="-2242.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="2302.5" y="-2227.3" font-family="Times,serif" font-size="14.00" fill="#000000">for recursive proving</text>
</a>
</g>
</g>
<!-- zcash/halo2#75&#45;&gt;zcash/halo2#251 -->
<g id="edge33" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M2096.1,-2246C2124.8,-2246 2156.9,-2246 2187.2,-2246"/>
<polygon fill="#000000" stroke="#000000" points="2187.3,-2249.5001 2197.3,-2246 2187.3,-2242.5001 2187.3,-2249.5001"/>
</g>
<!-- zcash/zcash#4711 -->
<g id="node33" class="node">
<title>zcash/zcash#4711</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/zcash/issues/4711" xlink:title="zcash/zcash#4711&#10;[Orchard] Shielded&#10;protocol changes" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1742.5,-1636.5 1588.5,-1636.5 1588.5,-1583.5 1742.5,-1583.5 1742.5,-1636.5"/>
<text text-anchor="middle" x="1665.5" y="-1621.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4711</text>
<text text-anchor="middle" x="1665.5" y="-1606.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Shielded</text>
<text text-anchor="middle" x="1665.5" y="-1591.3" font-family="Times,serif" font-size="14.00" fill="#000000">protocol changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#4711&#45;&gt;zcash/zcash#4707 -->
<g id="edge34" class="edge">
<title>zcash/zcash#4711&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1742.7,-1630.7C1766.8,-1637.1 1793.5,-1644.3 1818,-1651 1848.5,-1659.3 1881.7,-1668.4 1911.6,-1676.7"/>
<polygon fill="#000000" stroke="#000000" points="1911.0266,-1680.174 1921.6,-1679.5 1912.9141,-1673.4333 1911.0266,-1680.174"/>
</g>
<!-- zcash/zcash#4711&#45;&gt;zcash/orchard#4 -->
<g id="edge35" class="edge">
<title>zcash/zcash#4711&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1742.8,-1596.2C1767.3,-1590.6 1794.2,-1583.3 1818,-1574 1868.2,-1554.4 1921.3,-1523.5 1958.4,-1500.1"/>
<polygon fill="#000000" stroke="#000000" points="1960.4057,-1502.9711 1966.9,-1494.6 1956.6029,-1497.0941 1960.4057,-1502.9711"/>
</g>
<!-- zcash/zcash#4712 -->
<g id="node35" class="node">
<title>zcash/zcash#4712</title>
<g id="a_node35"><a xlink:href="https://github.com/zcash/zcash/issues/4712" xlink:title="zcash/zcash#4712&#10;[Orchard] Note encryption" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1770,-1093 1561,-1093 1561,-1055 1770,-1055 1770,-1093"/>
<text text-anchor="middle" x="1665.5" y="-1077.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4712</text>
<text text-anchor="middle" x="1665.5" y="-1062.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Note encryption</text>
</a>
</g>
</g>
<!-- zcash/zcash#4712&#45;&gt;zcash/zcash#4707 -->
<g id="edge37" class="edge">
<title>zcash/zcash#4712&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1770.3,-1074.9C1788.4,-1079.8 1805.4,-1088.2 1818,-1102 1878.3,-1168.1 1821.6,-1419.6 1854,-1503 1879.7,-1569.1 1934.2,-1631.9 1970.6,-1668.9"/>
<polygon fill="#000000" stroke="#000000" points="1968.554,-1671.8038 1978.1,-1676.4 1973.5038,-1666.854 1968.554,-1671.8038"/>
</g>
<!-- zcash/zcash#4712&#45;&gt;zcash/orchard#32 -->
<g id="edge38" class="edge">
<title>zcash/zcash#4712&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1729.2,-1054.9C1779.4,-1039.9 1850.3,-1018.7 1907.8,-1001.5"/>
<polygon fill="#000000" stroke="#000000" points="1909.1044,-1004.7641 1917.7,-998.57 1907.1178,-998.0519 1909.1044,-1004.7641"/>
</g>
<!-- zcash/zcash#4713 -->
<g id="node37" class="node">
<title>zcash/zcash#4713</title>
<g id="a_node37"><a xlink:href="https://github.com/zcash/zcash/issues/4713" xlink:title="zcash/zcash#4713&#10;[Orchard] Commitment&#10;Merkle tree design" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1758,-1965.5 1573,-1965.5 1573,-1912.5 1758,-1912.5 1758,-1965.5"/>
<text text-anchor="middle" x="1665.5" y="-1950.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4713</text>
<text text-anchor="middle" x="1665.5" y="-1935.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Commitment</text>
<text text-anchor="middle" x="1665.5" y="-1920.3" font-family="Times,serif" font-size="14.00" fill="#000000">Merkle tree design</text>
</a>
</g>
</g>
<!-- zcash/zcash#4713&#45;&gt;zcash/zcash#4707 -->
<g id="edge41" class="edge">
<title>zcash/zcash#4713&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1758.2,-1930.8C1779.5,-1925.4 1800.9,-1916.7 1818,-1903 1846.8,-1879.8 1831.2,-1857.1 1854,-1828 1882.7,-1791.4 1923.9,-1758.5 1956.2,-1735.6"/>
<polygon fill="#000000" stroke="#000000" points="1958.4808,-1738.2774 1964.7,-1729.7 1954.4893,-1732.5269 1958.4808,-1738.2774"/>
</g>
<!-- zcash/zcash#4713&#45;&gt;zcash/orchard#33 -->
<g id="edge42" class="edge">
<title>zcash/zcash#4713&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1758.2,-1918.6C1796.8,-1910.1 1842.2,-1900.1 1883.6,-1891"/>
<polygon fill="#000000" stroke="#000000" points="1884.3554,-1894.4177 1893.4,-1888.9 1882.8886,-1887.5731 1884.3554,-1894.4177"/>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5024 -->
<g id="edge44" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2341.9,-1822.4C2362.3,-1800.9 2387.6,-1774.1 2410,-1750 2448.8,-1708.3 2493.2,-1660 2522.2,-1628.3"/>
<polygon fill="#000000" stroke="#000000" points="2525.063,-1630.3538 2529.2,-1620.6 2519.8834,-1625.6451 2525.063,-1630.3538"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node39" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node39"><a xlink:href="https://github.com/zcash/zcash/issues/5037" xlink:title="zcash/zcash#5037&#10;Add Orchard metadata to&#10;history trees" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2653.5,-1947.5 2453.5,-1947.5 2453.5,-1894.5 2653.5,-1894.5 2653.5,-1947.5"/>
<text text-anchor="middle" x="2553.5" y="-1932.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="2553.5" y="-1917.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="2553.5" y="-1902.3" font-family="Times,serif" font-size="14.00" fill="#000000">history trees</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5037 -->
<g id="edge45" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M2388.5,-1883.5C2406.2,-1887.6 2425.1,-1891.8 2443.5,-1896"/>
<polygon fill="#000000" stroke="#000000" points="2442.7648,-1899.4225 2453.3,-1898.3 2444.3643,-1892.6077 2442.7648,-1899.4225"/>
</g>
<!-- zcash/zcash#4716 -->
<g id="node40" class="node">
<title>zcash/zcash#4716</title>
<g id="a_node40"><a xlink:href="https://github.com/zcash/zcash/issues/4716" xlink:title="zcash/zcash#4716&#10;[Orchard] Specify&#10;transaction format and&#10;hashing changes" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1756.5,-1423 1574.5,-1423 1574.5,-1355 1756.5,-1355 1756.5,-1423"/>
<text text-anchor="middle" x="1665.5" y="-1407.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4716</text>
<text text-anchor="middle" x="1665.5" y="-1392.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-1377.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format and</text>
<text text-anchor="middle" x="1665.5" y="-1362.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#4716&#45;&gt;zcash/zcash#4707 -->
<g id="edge46" class="edge">
<title>zcash/zcash#4716&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1756.5,-1401.6C1778.4,-1408 1800.5,-1417.6 1818,-1432 1845.3,-1454.5 1835.2,-1473 1854,-1503 1892.3,-1564.1 1944.7,-1629.7 1977.1,-1668.5"/>
<polygon fill="#000000" stroke="#000000" points="1974.5093,-1670.8584 1983.6,-1676.3 1979.8869,-1666.3771 1974.5093,-1670.8584"/>
</g>
<!-- zcash/orchard#34 -->
<g id="node41" class="node">
<title>zcash/orchard#34</title>
<g id="a_node41"><a xlink:href="https://github.com/zcash/orchard/issues/34" xlink:title="zcash/orchard#34&#10;Add parsing and&#10;serialization support for&#10;Orchard bundles" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2101,-1398 1912,-1398 1912,-1330 2101,-1330 2101,-1398"/>
<text text-anchor="middle" x="2006.5" y="-1382.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#34</text>
<text text-anchor="middle" x="2006.5" y="-1367.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add parsing and</text>
<text text-anchor="middle" x="2006.5" y="-1352.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization support for</text>
<text text-anchor="middle" x="2006.5" y="-1337.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard bundles</text>
</a>
</g>
</g>
<!-- zcash/zcash#4716&#45;&gt;zcash/orchard#34 -->
<g id="edge47" class="edge">
<title>zcash/zcash#4716&#45;&gt;zcash/orchard#34</title>
<path fill="none" stroke="#000000" d="M1756.9,-1382.3C1801.5,-1379 1855.5,-1375.1 1901.8,-1371.7"/>
<polygon fill="#000000" stroke="#000000" points="1902.2076,-1375.1788 1911.9,-1370.9 1901.6548,-1368.2006 1902.2076,-1375.1788"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node42" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node42"><a xlink:href="https://github.com/zcash/zcash/issues/5022" xlink:title="zcash/zcash#5022&#10;Implement ZIP&#45;225&#10;transaction format&#10;changes in zcashd." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2380,-1385 2225,-1385 2225,-1317 2380,-1317 2380,-1385"/>
<text text-anchor="middle" x="2302.5" y="-1369.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="2302.5" y="-1354.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1339.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="2302.5" y="-1324.8" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/orchard#34&#45;&gt;zcash/zcash#5022 -->
<g id="edge48" class="edge">
<title>zcash/orchard#34&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M2101.4,-1359.8C2137.7,-1358.2 2178.9,-1356.4 2214.6,-1354.9"/>
<polygon fill="#000000" stroke="#000000" points="2215.1796,-1358.3763 2225,-1354.4 2214.8434,-1351.3843 2215.1796,-1358.3763"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node43" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node43"><a xlink:href="https://github.com/zcash/librustzcash/issues/350" xlink:title="zcash/librustzcash#350&#10;Implement ZIP&#45;225&#10;transaction format &amp;&#10;hashing changes in&#10;librustzcash." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2396.5,-1486.5 2208.5,-1486.5 2208.5,-1403.5 2396.5,-1403.5 2396.5,-1486.5"/>
<text text-anchor="middle" x="2302.5" y="-1471.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="2302.5" y="-1456.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1441.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="2302.5" y="-1426.3" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="2302.5" y="-1411.3" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash.</text>
</a>
</g>
</g>
<!-- zcash/orchard#34&#45;&gt;zcash/librustzcash#350 -->
<g id="edge49" class="edge">
<title>zcash/orchard#34&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M2101.4,-1390C2132.4,-1398.5 2167,-1407.9 2198.7,-1416.6"/>
<polygon fill="#000000" stroke="#000000" points="2197.8277,-1419.9902 2208.4,-1419.3 2199.7048,-1413.2466 2197.8277,-1419.9902"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5024 -->
<g id="edge50" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2380,-1375.7C2390.6,-1380.9 2401,-1386.9 2410,-1394 2467.9,-1439.4 2512.9,-1514.2 2536.1,-1558.4"/>
<polygon fill="#000000" stroke="#000000" points="2532.9992,-1560.0235 2540.7,-1567.3 2539.2177,-1556.8094 2532.9992,-1560.0235"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5021 -->
<g id="edge51" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M2321.6,-1316.7C2368,-1233.1 2486.5,-1019.6 2533.7,-934.67"/>
<polygon fill="#000000" stroke="#000000" points="2536.9031,-936.1114 2538.7,-925.67 2530.784,-932.7118 2536.9031,-936.1114"/>
</g>
<!-- zcash/zcash#4708 -->
<g id="node44" class="node">
<title>zcash/zcash#4708</title>
<g id="a_node44"><a xlink:href="https://github.com/zcash/zcash/issues/4708" xlink:title="zcash/zcash#4708&#10;Specify Poseidon&#10;instantiation" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1058.5,-1132.5 908.5,-1132.5 908.5,-1079.5 1058.5,-1079.5 1058.5,-1132.5"/>
<text text-anchor="middle" x="983.5" y="-1117.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4708</text>
<text text-anchor="middle" x="983.5" y="-1102.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify Poseidon</text>
<text text-anchor="middle" x="983.5" y="-1087.3" font-family="Times,serif" font-size="14.00" fill="#000000">instantiation</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/zcash#4707 -->
<g id="edge52" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1009.9,-1132.7C1045.1,-1170 1106.3,-1241.5 1136,-1315 1179.6,-1422.7 1092.6,-1489.1 1172,-1574 1271,-1679.8 1714.7,-1699.1 1911.7,-1702.4"/>
<polygon fill="#000000" stroke="#000000" points="1911.7326,-1705.9012 1921.8,-1702.6 1911.8713,-1698.9026 1911.7326,-1705.9012"/>
</g>
<!-- zcash/orchard#37 -->
<g id="node45" class="node">
<title>zcash/orchard#37</title>
<g id="a_node45"><a xlink:href="https://github.com/zcash/orchard/issues/37" xlink:title="zcash/orchard#37&#10;Implement Poseidon&#10;outside the circuit" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1406,-1164.5 1243,-1164.5 1243,-1111.5 1406,-1111.5 1406,-1164.5"/>
<text text-anchor="middle" x="1324.5" y="-1149.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#37</text>
<text text-anchor="middle" x="1324.5" y="-1134.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon</text>
<text text-anchor="middle" x="1324.5" y="-1119.3" font-family="Times,serif" font-size="14.00" fill="#000000">outside the circuit</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/orchard#37 -->
<g id="edge53" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/orchard#37</title>
<path fill="none" stroke="#000000" d="M1058.8,-1113.1C1110.1,-1117.9 1178.4,-1124.3 1232.9,-1129.4"/>
<polygon fill="#000000" stroke="#000000" points="1232.6265,-1132.8894 1242.9,-1130.3 1233.254,-1125.9176 1232.6265,-1132.8894"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node46" class="node">
<title>zcash/orchard#45</title>
<g id="a_node46"><a xlink:href="https://github.com/zcash/orchard/issues/45" xlink:title="zcash/orchard#45&#10;Implement Poseidon gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1433,-1093 1216,-1093 1216,-1055 1433,-1055 1433,-1093"/>
<text text-anchor="middle" x="1324.5" y="-1077.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="1324.5" y="-1062.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon gadget</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/orchard#45 -->
<g id="edge54" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/orchard#45</title>
<path fill="none" stroke="#000000" d="M1058.8,-1098.9C1101.9,-1094.9 1157,-1089.7 1205.8,-1085.1"/>
<polygon fill="#000000" stroke="#000000" points="1206.154,-1088.5824 1215.8,-1084.2 1205.5265,-1081.6106 1206.154,-1088.5824"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#22 -->
<g id="node47" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</title>
<g id="a_node47"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/22" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#10;Implement Poseidon test&#10;vectors" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1477,-475.5 1172,-475.5 1172,-422.5 1477,-422.5 1477,-475.5"/>
<text text-anchor="middle" x="1324.5" y="-460.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</text>
<text text-anchor="middle" x="1324.5" y="-445.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon test</text>
<text text-anchor="middle" x="1324.5" y="-430.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#22 -->
<g id="edge55" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</title>
<path fill="none" stroke="#000000" d="M984.91,-1079.2C990.97,-989.49 1021.9,-695.56 1172,-523 1187.8,-504.83 1209.1,-490.72 1230.7,-479.93"/>
<polygon fill="#000000" stroke="#000000" points="1232.4771,-482.9603 1240,-475.5 1229.4667,-476.6407 1232.4771,-482.9603"/>
</g>
<!-- zcash/orchard#37&#45;&gt;zcash/orchard#31 -->
<g id="edge56" class="edge">
<title>zcash/orchard#37&#45;&gt;zcash/orchard#31</title>
<path fill="none" stroke="#000000" d="M1406.2,-1138C1451.6,-1138 1508.7,-1138 1557.8,-1138"/>
<polygon fill="#000000" stroke="#000000" points="1557.8,-1141.5001 1567.8,-1138 1557.8,-1134.5001 1557.8,-1141.5001"/>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/orchard#4 -->
<g id="edge57" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1410.9,-1055C1536.3,-1029.7 1760.3,-993.74 1818,-1046 1877.8,-1100.1 1805.5,-1342.6 1854,-1407 1868.1,-1425.7 1888.9,-1438.7 1910.6,-1447.7"/>
<polygon fill="#000000" stroke="#000000" points="1909.3145,-1450.9553 1919.9,-1451.4 1911.9022,-1444.4512 1909.3145,-1450.9553"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node48" class="node">
<title>zcash/halo2#79</title>
<g id="a_node48"><a xlink:href="https://github.com/zcash/halo2/issues/79" xlink:title="zcash/halo2#79&#10;Migrate Rescue and&#10;Poseidon gadgets to&#10;algebraic hash&#10;abstraction" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1746,-1265.5 1585,-1265.5 1585,-1182.5 1746,-1182.5 1746,-1265.5"/>
<text text-anchor="middle" x="1665.5" y="-1250.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="1665.5" y="-1235.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="1665.5" y="-1220.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="1665.5" y="-1205.3" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="1665.5" y="-1190.3" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/halo2#79 -->
<g id="edge58" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1433,-1081.1C1448.8,-1085.7 1464.1,-1092.3 1477,-1102 1505.3,-1123.2 1486.2,-1149.9 1513,-1173 1530.6,-1188.2 1552.8,-1198.9 1574.9,-1206.4"/>
<polygon fill="#000000" stroke="#000000" points="1574.0091,-1209.7896 1584.6,-1209.5 1576.1401,-1203.1219 1574.0091,-1209.7896"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="node49" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<g id="a_node49"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/24" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#10;Implement Orchard key&#10;components test vectors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1818,-333.5 1513,-333.5 1513,-280.5 1818,-280.5 1818,-333.5"/>
<text text-anchor="middle" x="1665.5" y="-318.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</text>
<text text-anchor="middle" x="1665.5" y="-303.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-288.3" font-family="Times,serif" font-size="14.00" fill="#000000">components test vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="edge59" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<path fill="none" stroke="#000000" d="M1364.1,-422.4C1401.1,-398.55 1458.8,-364.15 1513,-343 1518.7,-340.76 1524.7,-338.64 1530.7,-336.62"/>
<polygon fill="#000000" stroke="#000000" points="1531.7608,-339.9555 1540.2,-333.55 1529.6082,-333.2947 1531.7608,-339.9555"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node50" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node50"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2159,-333.5 1854,-333.5 1854,-280.5 2159,-280.5 2159,-333.5"/>
<text text-anchor="middle" x="2006.5" y="-318.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</text>
<text text-anchor="middle" x="2006.5" y="-303.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2006.5" y="-288.3" font-family="Times,serif" font-size="14.00" fill="#000000">encodings</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge60" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M1818,-307C1826.6,-307 1835.2,-307 1843.8,-307"/>
<polygon fill="#000000" stroke="#000000" points="1843.8,-310.5001 1853.8,-307 1843.8,-303.5001 1843.8,-310.5001"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node60" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node60"><a xlink:href="https://github.com/zcash/librustzcash/issues/371" xlink:title="zcash/librustzcash#371&#10;Implement parsing and&#10;serialization of Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2396.5,-455 2208.5,-455 2208.5,-387 2396.5,-387 2396.5,-455"/>
<text text-anchor="middle" x="2302.5" y="-439.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="2302.5" y="-424.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="2302.5" y="-409.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="2302.5" y="-394.8" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371 -->
<g id="edge93" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2131.3,-333.57C2140.8,-336.46 2150.1,-339.6 2159,-343 2186.2,-353.41 2214.8,-368.05 2239.1,-381.83"/>
<polygon fill="#000000" stroke="#000000" points="2237.4829,-384.9372 2247.9,-386.87 2240.9619,-378.8629 2237.4829,-384.9372"/>
</g>
<!-- zcash/halo2#144 -->
<g id="node51" class="node">
<title>zcash/halo2#144</title>
<g id="a_node51"><a xlink:href="https://github.com/zcash/halo2/issues/144" xlink:title="zcash/halo2#144&#10;book: Specify proof&#10;encoding" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1402,-1894.5 1247,-1894.5 1247,-1841.5 1402,-1841.5 1402,-1894.5"/>
<text text-anchor="middle" x="1324.5" y="-1879.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="1324.5" y="-1864.3" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="1324.5" y="-1849.3" font-family="Times,serif" font-size="14.00" fill="#000000">encoding</text>
</a>
</g>
</g>
<!-- zcash/halo2#144&#45;&gt;zcash/zcash#4714 -->
<g id="edge61" class="edge">
<title>zcash/halo2#144&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M1402.3,-1868C1451,-1868 1514.3,-1868 1566.6,-1868"/>
<polygon fill="#000000" stroke="#000000" points="1566.9,-1871.5001 1576.9,-1868 1566.9,-1864.5001 1566.9,-1871.5001"/>
</g>
<!-- zcash/zcash#4709 -->
<g id="node52" class="node">
<title>zcash/zcash#4709</title>
<g id="a_node52"><a xlink:href="https://github.com/zcash/zcash/issues/4709" xlink:title="zcash/zcash#4709&#10;[Orchard] Specify&#10;RedPallas" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1740.5,-1784.5 1590.5,-1784.5 1590.5,-1731.5 1740.5,-1731.5 1740.5,-1784.5"/>
<text text-anchor="middle" x="1665.5" y="-1769.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4709</text>
<text text-anchor="middle" x="1665.5" y="-1754.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-1739.3" font-family="Times,serif" font-size="14.00" fill="#000000">RedPallas</text>
</a>
</g>
</g>
<!-- zcash/zcash#4709&#45;&gt;zcash/zcash#4707 -->
<g id="edge62" class="edge">
<title>zcash/zcash#4709&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1740.8,-1745.9C1791.2,-1737.7 1857.9,-1727 1911.9,-1718.3"/>
<polygon fill="#000000" stroke="#000000" points="1912.4865,-1721.7507 1921.8,-1716.7 1911.3697,-1714.8404 1912.4865,-1721.7507"/>
</g>
<!-- zcash/zips#454 -->
<g id="node53" class="node">
<title>zcash/zips#454</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash/zips/issues/454" xlink:title="zcash/zips#454&#10;Poseidon: copy parameter&#10;generation script to&#10;zcash/pasta and settle on&#10;parameters" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="744,-1147.5 541,-1147.5 541,-1064.5 744,-1064.5 744,-1147.5"/>
<text text-anchor="middle" x="642.5" y="-1132.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#454</text>
<text text-anchor="middle" x="642.5" y="-1117.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon: copy parameter</text>
<text text-anchor="middle" x="642.5" y="-1102.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation script to</text>
<text text-anchor="middle" x="642.5" y="-1087.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/pasta and settle on</text>
<text text-anchor="middle" x="642.5" y="-1072.3" font-family="Times,serif" font-size="14.00" fill="#000000">parameters</text>
</a>
</g>
</g>
<!-- zcash/zips#454&#45;&gt;zcash/zcash#4708 -->
<g id="edge63" class="edge">
<title>zcash/zips#454&#45;&gt;zcash/zcash#4708</title>
<path fill="none" stroke="#000000" d="M744.35,-1106C793.44,-1106 851.65,-1106 898.35,-1106"/>
<polygon fill="#000000" stroke="#000000" points="898.43,-1109.5001 908.43,-1106 898.43,-1102.5001 898.43,-1109.5001"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node54" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node54"><a xlink:href="https://github.com/zcash/zcash/issues/5019" xlink:title="zcash/zcash#5019&#10;Add Orchard keys and&#10;addresses to the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2394,-698.5 2211,-698.5 2211,-645.5 2394,-645.5 2394,-698.5"/>
<text text-anchor="middle" x="2302.5" y="-683.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="2302.5" y="-668.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="2302.5" y="-653.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses to the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5023 -->
<g id="edge65" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M2394.2,-696.16C2466.9,-715.64 2570.8,-744.26 2661,-772 2673.1,-775.72 2685.7,-779.74 2698.2,-783.82"/>
<polygon fill="#000000" stroke="#000000" points="2697.107,-787.1449 2707.7,-786.95 2699.2975,-780.4964 2697.107,-787.1449"/>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5020 -->
<g id="edge64" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M2394.3,-697.27C2399.8,-700.18 2405.1,-703.41 2410,-707 2432.1,-723.15 2425.4,-738.93 2446,-757 2453.6,-763.68 2462.1,-769.89 2470.9,-775.57"/>
<polygon fill="#000000" stroke="#000000" points="2469.0567,-778.5452 2479.4,-780.84 2472.7453,-772.5959 2469.0567,-778.5452"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node55" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/zcash/issues/5179" xlink:title="zcash/zcash#5179&#10;Add Unified Address key&#10;generation and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2654.5,-624 2452.5,-624 2452.5,-556 2654.5,-556 2654.5,-624"/>
<text text-anchor="middle" x="2553.5" y="-608.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="2553.5" y="-593.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="2553.5" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="2553.5" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5179 -->
<g id="edge66" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2383.6,-645.49C2402.5,-639.34 2422.8,-632.69 2442.7,-626.2"/>
<polygon fill="#000000" stroke="#000000" points="2443.982,-629.4633 2452.4,-623.03 2441.8075,-622.8096 2443.982,-629.4633"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node56" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node56"><a xlink:href="https://github.com/zcash/zcash/issues/5178" xlink:title="zcash/zcash#5178&#10;New RPC: z_getnewaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2916,-537 2697,-537 2697,-499 2916,-499 2916,-537"/>
<text text-anchor="middle" x="2806.5" y="-521.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="2806.5" y="-506.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC: z_getnewaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5178 -->
<g id="edge67" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2654.6,-561.23C2679.7,-554.07 2706.3,-546.51 2730.1,-539.75"/>
<polygon fill="#000000" stroke="#000000" points="2731.0446,-543.1202 2739.7,-537.01 2729.1234,-536.389 2731.0446,-543.1202"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node57" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node57"><a xlink:href="https://github.com/zcash/zcash/issues/5180" xlink:title="zcash/zcash#5180&#10;New RPC:&#10;z_getaddressforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2900.5,-684.5 2712.5,-684.5 2712.5,-631.5 2900.5,-631.5 2900.5,-684.5"/>
<text text-anchor="middle" x="2806.5" y="-669.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="2806.5" y="-654.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-639.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_getaddressforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5180 -->
<g id="edge68" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M2654.6,-617.17C2670.3,-621.4 2686.6,-625.77 2702.4,-630.02"/>
<polygon fill="#000000" stroke="#000000" points="2701.5333,-633.4113 2712.1,-632.64 2703.3586,-626.6534 2701.5333,-633.4113"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node58" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash/zcash/issues/5182" xlink:title="zcash/zcash#5182&#10;New RPC:&#10;z_getbalanceforaddress" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2900,-613.5 2713,-613.5 2713,-560.5 2900,-560.5 2900,-613.5"/>
<text text-anchor="middle" x="2806.5" y="-598.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="2806.5" y="-583.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-568.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaddress</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5182 -->
<g id="edge69" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M2654.6,-588.8C2670.4,-588.61 2686.7,-588.42 2702.6,-588.23"/>
<polygon fill="#000000" stroke="#000000" points="2703.0411,-591.7252 2713,-588.11 2702.9603,-584.7257 2703.0411,-591.7252"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node59" class="node">
<title>zcash/orchard#36</title>
<g id="a_node59"><a xlink:href="https://github.com/zcash/orchard/issues/36" xlink:title="zcash/orchard#36&#10;Parsing and serialization&#10;of Orchard keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2103.5,-548 1909.5,-548 1909.5,-480 2103.5,-480 2103.5,-548"/>
<text text-anchor="middle" x="2006.5" y="-532.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="2006.5" y="-517.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="2006.5" y="-502.8" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="2006.5" y="-487.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/zcash#5019 -->
<g id="edge70" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2103.5,-527.82C2123.5,-534.19 2143.2,-543.48 2159,-557 2188.3,-582.12 2166.3,-610.18 2195,-636 2197.3,-638.04 2199.6,-639.96 2202.1,-641.77"/>
<polygon fill="#000000" stroke="#000000" points="2200.6182,-644.9837 2210.9,-647.54 2204.4565,-639.1298 2200.6182,-644.9837"/>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge71" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2103.5,-486.77C2122,-481.37 2141.1,-475.63 2159,-470 2171.8,-465.96 2185.3,-461.58 2198.5,-457.16"/>
<polygon fill="#000000" stroke="#000000" points="2199.812,-460.4124 2208.2,-453.94 2197.6065,-453.7688 2199.812,-460.4124"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node61" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node61"><a xlink:href="https://github.com/zcash/zcash/issues/5133" xlink:title="zcash/zcash#5133&#10;Implement Unified Address&#10;parsing and serialization&#10;to KeyIO" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2661,-477 2446,-477 2446,-409 2661,-409 2661,-477"/>
<text text-anchor="middle" x="2553.5" y="-461.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="2553.5" y="-446.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2553.5" y="-431.8" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="2553.5" y="-416.8" font-family="Times,serif" font-size="14.00" fill="#000000">to KeyIO</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#371&#45;&gt;zcash/zcash#5133 -->
<g id="edge72" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M2396.7,-429.25C2409.4,-430.37 2422.6,-431.53 2435.7,-432.68"/>
<polygon fill="#000000" stroke="#000000" points="2435.4342,-436.17 2445.7,-433.55 2436.041,-429.1964 2435.4342,-436.17"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge73" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2661.2,-474.92C2685.2,-482.04 2710.1,-489.43 2732.4,-496.04"/>
<polygon fill="#000000" stroke="#000000" points="2731.5174,-499.4289 2742.1,-498.92 2733.5098,-492.7184 2731.5174,-499.4289"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node62" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node62"><a xlink:href="https://github.com/zcash/zcash/issues/5181" xlink:title="zcash/zcash#5181&#10;New RPC:&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2891.5,-469.5 2721.5,-469.5 2721.5,-416.5 2891.5,-416.5 2891.5,-469.5"/>
<text text-anchor="middle" x="2806.5" y="-454.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="2806.5" y="-439.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-424.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5181 -->
<g id="edge74" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M2661.2,-443C2677.8,-443 2694.8,-443 2711.1,-443"/>
<polygon fill="#000000" stroke="#000000" points="2711.1,-446.5001 2721.1,-443 2711.1,-439.5001 2711.1,-446.5001"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node63" class="node">
<title>zcash/orchard#30</title>
<g id="a_node63"><a xlink:href="https://github.com/zcash/orchard/issues/30" xlink:title="zcash/orchard#30&#10;Implement ZIP 32 for&#10;Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2092.5,-690.5 1920.5,-690.5 1920.5,-637.5 2092.5,-637.5 2092.5,-690.5"/>
<text text-anchor="middle" x="2006.5" y="-675.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="2006.5" y="-660.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="2006.5" y="-645.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#30&#45;&gt;zcash/zcash#5019 -->
<g id="edge75" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2092.5,-666.32C2126.3,-667.24 2165.4,-668.29 2200.5,-669.24"/>
<polygon fill="#000000" stroke="#000000" points="2200.7085,-672.7469 2210.8,-669.52 2200.8988,-665.7495 2200.7085,-672.7469"/>
</g>
<!-- zcash/zcash#4999 -->
<g id="node64" class="node">
<title>zcash/zcash#4999</title>
<g id="a_node64"><a xlink:href="https://github.com/zcash/zcash/pull/4999" xlink:title="zcash/zcash#4999&#10;Bitcoin 0.13 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="205.5,-2740 12.5,-2740 12.5,-2736 8.5,-2736 8.5,-2732 12.5,-2732 12.5,-2710 8.5,-2710 8.5,-2706 12.5,-2706 12.5,-2702 205.5,-2702 205.5,-2740"/>
<polyline fill="none" stroke="#000000" points="12.5,-2736 16.5,-2736 16.5,-2732 12.5,-2732 "/>
<polyline fill="none" stroke="#000000" points="12.5,-2710 16.5,-2710 16.5,-2706 12.5,-2706 "/>
<text text-anchor="middle" x="109" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4999</text>
<text text-anchor="middle" x="109" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.13 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5009 -->
<g id="node65" class="node">
<title>zcash/zcash#5009</title>
<g id="a_node65"><a xlink:href="https://github.com/zcash/zcash/pull/5009" xlink:title="zcash/zcash#5009&#10;Bitcoin 0.14 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="450.5,-2740 257.5,-2740 257.5,-2736 253.5,-2736 253.5,-2732 257.5,-2732 257.5,-2710 253.5,-2710 253.5,-2706 257.5,-2706 257.5,-2702 450.5,-2702 450.5,-2740"/>
<polyline fill="none" stroke="#000000" points="257.5,-2736 261.5,-2736 261.5,-2732 257.5,-2732 "/>
<polyline fill="none" stroke="#000000" points="257.5,-2710 261.5,-2710 261.5,-2706 257.5,-2706 "/>
<text text-anchor="middle" x="354" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5009</text>
<text text-anchor="middle" x="354" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.14 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4999&#45;&gt;zcash/zcash#5009 -->
<g id="edge76" class="edge">
<title>zcash/zcash#4999&#45;&gt;zcash/zcash#5009</title>
<path fill="none" stroke="#000000" d="M205.83,-2721C219.5,-2721 233.61,-2721 247.45,-2721"/>
<polygon fill="#000000" stroke="#000000" points="247.47,-2724.5001 257.47,-2721 247.47,-2717.5001 247.47,-2724.5001"/>
</g>
<!-- zcash/zcash#5012 -->
<g id="node66" class="node">
<title>zcash/zcash#5012</title>
<g id="a_node66"><a xlink:href="https://github.com/zcash/zcash/pull/5012" xlink:title="zcash/zcash#5012&#10;Bitcoin 0.15 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="739,-2740 546,-2740 546,-2736 542,-2736 542,-2732 546,-2732 546,-2710 542,-2710 542,-2706 546,-2706 546,-2702 739,-2702 739,-2740"/>
<polyline fill="none" stroke="#000000" points="546,-2736 550,-2736 550,-2732 546,-2732 "/>
<polyline fill="none" stroke="#000000" points="546,-2710 550,-2710 550,-2706 546,-2706 "/>
<text text-anchor="middle" x="642.5" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5012</text>
<text text-anchor="middle" x="642.5" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.15 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5009&#45;&gt;zcash/zcash#5012 -->
<g id="edge77" class="edge">
<title>zcash/zcash#5009&#45;&gt;zcash/zcash#5012</title>
<path fill="none" stroke="#000000" d="M450.87,-2721C478.13,-2721 507.94,-2721 535.74,-2721"/>
<polygon fill="#000000" stroke="#000000" points="535.89,-2724.5001 545.89,-2721 535.89,-2717.5001 535.89,-2724.5001"/>
</g>
<!-- zcash/zcash#5017 -->
<g id="node67" class="node">
<title>zcash/zcash#5017</title>
<g id="a_node67"><a xlink:href="https://github.com/zcash/zcash/pull/5017" xlink:title="zcash/zcash#5017&#10;Bitcoin 0.16 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1080,-2740 887,-2740 887,-2736 883,-2736 883,-2732 887,-2732 887,-2710 883,-2710 883,-2706 887,-2706 887,-2702 1080,-2702 1080,-2740"/>
<polyline fill="none" stroke="#000000" points="887,-2736 891,-2736 891,-2732 887,-2732 "/>
<polyline fill="none" stroke="#000000" points="887,-2710 891,-2710 891,-2706 887,-2706 "/>
<text text-anchor="middle" x="983.5" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5017</text>
<text text-anchor="middle" x="983.5" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.16 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5012&#45;&gt;zcash/zcash#5017 -->
<g id="edge78" class="edge">
<title>zcash/zcash#5012&#45;&gt;zcash/zcash#5017</title>
<path fill="none" stroke="#000000" d="M739.3,-2721C782.14,-2721 832.66,-2721 876.61,-2721"/>
<polygon fill="#000000" stroke="#000000" points="876.75,-2724.5001 886.75,-2721 876.75,-2717.5001 876.75,-2724.5001"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node68" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node68"><a xlink:href="https://github.com/zcash/zcash/pull/5034" xlink:title="zcash/zcash#5034&#10;Bitcoin 0.17 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1421,-2740 1228,-2740 1228,-2736 1224,-2736 1224,-2732 1228,-2732 1228,-2710 1224,-2710 1224,-2706 1228,-2706 1228,-2702 1421,-2702 1421,-2740"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2736 1232,-2736 1232,-2732 1228,-2732 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2710 1232,-2710 1232,-2706 1228,-2706 "/>
<text text-anchor="middle" x="1324.5" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="1324.5" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.17 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5017&#45;&gt;zcash/zcash#5034 -->
<g id="edge79" class="edge">
<title>zcash/zcash#5017&#45;&gt;zcash/zcash#5034</title>
<path fill="none" stroke="#000000" d="M1080.3,-2721C1123.1,-2721 1173.7,-2721 1217.6,-2721"/>
<polygon fill="#000000" stroke="#000000" points="1217.7,-2724.5001 1227.7,-2721 1217.7,-2717.5001 1217.7,-2724.5001"/>
</g>
<!-- zcash/zcash#5050 -->
<g id="node69" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node69"><a xlink:href="https://github.com/zcash/zcash/pull/5050" xlink:title="zcash/zcash#5050&#10;Bitcoin 0.18 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1762,-2740 1569,-2740 1569,-2736 1565,-2736 1565,-2732 1569,-2732 1569,-2710 1565,-2710 1565,-2706 1569,-2706 1569,-2702 1762,-2702 1762,-2740"/>
<polyline fill="none" stroke="#000000" points="1569,-2736 1573,-2736 1573,-2732 1569,-2732 "/>
<polyline fill="none" stroke="#000000" points="1569,-2710 1573,-2710 1573,-2706 1569,-2706 "/>
<text text-anchor="middle" x="1665.5" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="1665.5" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.18 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5034&#45;&gt;zcash/zcash#5050 -->
<g id="edge80" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M1421.3,-2721C1464.1,-2721 1514.7,-2721 1558.6,-2721"/>
<polygon fill="#000000" stroke="#000000" points="1558.7,-2724.5001 1568.7,-2721 1558.7,-2717.5001 1558.7,-2724.5001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node70" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node70"><a xlink:href="https://github.com/zcash/zcash/pull/5163" xlink:title="zcash/zcash#5163&#10;Bitcoin 0.19 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2103,-2740 1910,-2740 1910,-2736 1906,-2736 1906,-2732 1910,-2732 1910,-2710 1906,-2710 1906,-2706 1910,-2706 1910,-2702 2103,-2702 2103,-2740"/>
<polyline fill="none" stroke="#000000" points="1910,-2736 1914,-2736 1914,-2732 1910,-2732 "/>
<polyline fill="none" stroke="#000000" points="1910,-2710 1914,-2710 1914,-2706 1910,-2706 "/>
<text text-anchor="middle" x="2006.5" y="-2724.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="2006.5" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.19 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050&#45;&gt;zcash/zcash#5163 -->
<g id="edge81" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M1762.3,-2721C1805.1,-2721 1855.7,-2721 1899.6,-2721"/>
<polygon fill="#000000" stroke="#000000" points="1899.7,-2724.5001 1909.7,-2721 1899.7,-2717.5001 1899.7,-2724.5001"/>
</g>
<!-- zcash/zcash#4997 -->
<g id="node71" class="node">
<title>zcash/zcash#4997</title>
<g id="a_node71"><a xlink:href="https://github.com/zcash/zcash/pull/4997" xlink:title="zcash/zcash#4997&#10;Replace setInventoryKnown&#10;with a rolling bloom&#10;filter" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="218,-2904 0,-2904 0,-2900 -4,-2900 -4,-2896 0,-2896 0,-2844 -4,-2844 -4,-2840 0,-2840 0,-2836 218,-2836 218,-2904"/>
<polyline fill="none" stroke="#000000" points="0,-2900 4,-2900 4,-2896 0,-2896 "/>
<polyline fill="none" stroke="#000000" points="0,-2844 4,-2844 4,-2840 0,-2840 "/>
<text text-anchor="middle" x="109" y="-2888.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4997</text>
<text text-anchor="middle" x="109" y="-2873.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace setInventoryKnown</text>
<text text-anchor="middle" x="109" y="-2858.8" font-family="Times,serif" font-size="14.00" fill="#000000">with a rolling bloom</text>
<text text-anchor="middle" x="109" y="-2843.8" font-family="Times,serif" font-size="14.00" fill="#000000">filter</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534 -->
<g id="node72" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node72"><a xlink:href="https://github.com/zcash/zcash/pull/2534" xlink:title="zcash/zcash#2534&#10;Bitcoin 0.12 P2P/Net PRs&#10;1" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="454,-2896.5 254,-2896.5 254,-2892.5 250,-2892.5 250,-2888.5 254,-2888.5 254,-2851.5 250,-2851.5 250,-2847.5 254,-2847.5 254,-2843.5 454,-2843.5 454,-2896.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2892.5 258,-2892.5 258,-2888.5 254,-2888.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2851.5 258,-2851.5 258,-2847.5 254,-2847.5 "/>
<text text-anchor="middle" x="354" y="-2881.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="354" y="-2866.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.12 P2P/Net PRs</text>
<text text-anchor="middle" x="354" y="-2851.3" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#4997&#45;&gt;zcash/zcash#2534 -->
<g id="edge82" class="edge">
<title>zcash/zcash#4997&#45;&gt;zcash/zcash#2534</title>
<path fill="none" stroke="#000000" d="M218.24,-2870C226.68,-2870 235.2,-2870 243.65,-2870"/>
<polygon fill="#000000" stroke="#000000" points="243.9,-2873.5001 253.9,-2870 243.9,-2866.5001 243.9,-2873.5001"/>
</g>
<!-- zcash/zcash#5003 -->
<g id="node73" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node73"><a xlink:href="https://github.com/zcash/zcash/pull/5003" xlink:title="zcash/zcash#5003&#10;net: prerequisites for&#10;p2p encapsulation changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="748.5,-2952.5 536.5,-2952.5 536.5,-2948.5 532.5,-2948.5 532.5,-2944.5 536.5,-2944.5 536.5,-2907.5 532.5,-2907.5 532.5,-2903.5 536.5,-2903.5 536.5,-2899.5 748.5,-2899.5 748.5,-2952.5"/>
<polyline fill="none" stroke="#000000" points="536.5,-2948.5 540.5,-2948.5 540.5,-2944.5 536.5,-2944.5 "/>
<polyline fill="none" stroke="#000000" points="536.5,-2907.5 540.5,-2907.5 540.5,-2903.5 536.5,-2903.5 "/>
<text text-anchor="middle" x="642.5" y="-2937.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="642.5" y="-2922.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="642.5" y="-2907.3" font-family="Times,serif" font-size="14.00" fill="#000000">p2p encapsulation changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5003 -->
<g id="edge83" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M454.09,-2889.4C477.41,-2894 502.43,-2898.8 526.37,-2903.5"/>
<polygon fill="#000000" stroke="#000000" points="525.7175,-2906.9386 536.2,-2905.4 527.046,-2900.0658 525.7175,-2906.9386"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node74" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node74"><a xlink:href="https://github.com/zcash/zcash/pull/5005" xlink:title="zcash/zcash#5005&#10;net: Split DNS resolving&#10;functionality out of net&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1079,-2849 888,-2849 888,-2845 884,-2845 884,-2841 888,-2841 888,-2789 884,-2789 884,-2785 888,-2785 888,-2781 1079,-2781 1079,-2849"/>
<polyline fill="none" stroke="#000000" points="888,-2845 892,-2845 892,-2841 888,-2841 "/>
<polyline fill="none" stroke="#000000" points="888,-2789 892,-2789 892,-2785 888,-2785 "/>
<text text-anchor="middle" x="983.5" y="-2833.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="983.5" y="-2818.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="983.5" y="-2803.8" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="983.5" y="-2788.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5005 -->
<g id="edge84" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M443.03,-2843.4C458.56,-2839.7 474.66,-2836.3 490,-2834 622.6,-2814.1 777.35,-2811.5 877.71,-2812.4"/>
<polygon fill="#000000" stroke="#000000" points="877.8159,-2815.9011 887.85,-2812.5 877.885,-2808.9015 877.8159,-2815.9011"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node75" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node75"><a xlink:href="https://github.com/zcash/zcash/pull/5004" xlink:title="zcash/zcash#5004&#10;Verify that expected&#10;services are available&#10;from peer nodes &amp;&#10;disconnect otherwise." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1070.5,-2950.5 896.5,-2950.5 896.5,-2946.5 892.5,-2946.5 892.5,-2942.5 896.5,-2942.5 896.5,-2875.5 892.5,-2875.5 892.5,-2871.5 896.5,-2871.5 896.5,-2867.5 1070.5,-2867.5 1070.5,-2950.5"/>
<polyline fill="none" stroke="#000000" points="896.5,-2946.5 900.5,-2946.5 900.5,-2942.5 896.5,-2942.5 "/>
<polyline fill="none" stroke="#000000" points="896.5,-2875.5 900.5,-2875.5 900.5,-2871.5 896.5,-2871.5 "/>
<text text-anchor="middle" x="983.5" y="-2935.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="983.5" y="-2920.3" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="983.5" y="-2905.3" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="983.5" y="-2890.3" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="983.5" y="-2875.3" font-family="Times,serif" font-size="14.00" fill="#000000">disconnect otherwise.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003&#45;&gt;zcash/zcash#5004 -->
<g id="edge85" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M748.53,-2920.7C792.51,-2918.5 843.2,-2916 886.22,-2913.8"/>
<polygon fill="#000000" stroke="#000000" points="886.5936,-2917.286 896.41,-2913.3 886.2505,-2910.2944 886.5936,-2917.286"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node76" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node76"><a xlink:href="https://github.com/zcash/zcash/pull/5006" xlink:title="zcash/zcash#5006&#10;Rework AddNode behaviour" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1433.5,-2858 1215.5,-2858 1215.5,-2854 1211.5,-2854 1211.5,-2850 1215.5,-2850 1215.5,-2828 1211.5,-2828 1211.5,-2824 1215.5,-2824 1215.5,-2820 1433.5,-2820 1433.5,-2858"/>
<polyline fill="none" stroke="#000000" points="1215.5,-2854 1219.5,-2854 1219.5,-2850 1215.5,-2850 "/>
<polyline fill="none" stroke="#000000" points="1215.5,-2828 1219.5,-2828 1219.5,-2824 1215.5,-2824 "/>
<text text-anchor="middle" x="1324.5" y="-2842.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1324.5" y="-2827.8" font-family="Times,serif" font-size="14.00" fill="#000000">Rework AddNode behaviour</text>
</a>
</g>
</g>
<!-- zcash/zcash#5005&#45;&gt;zcash/zcash#5006 -->
<g id="edge86" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1079.4,-2821.7C1118.4,-2824.5 1164,-2827.7 1205.1,-2830.6"/>
<polygon fill="#000000" stroke="#000000" points="1204.9819,-2834.1001 1215.2,-2831.3 1205.466,-2827.1169 1204.9819,-2834.1001"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge87" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1070.9,-2891.1C1116.9,-2881.6 1173.7,-2870 1221.9,-2860.1"/>
<polygon fill="#000000" stroke="#000000" points="1222.6018,-2863.529 1231.7,-2858.1 1221.2021,-2856.6704 1222.6018,-2863.529"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node77" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node77"><a xlink:href="https://github.com/zcash/zcash/pull/5008" xlink:title="zcash/zcash#5008&#10;net: Feeler connections&#10;to increase online addrs&#10;in the tried table." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1760,-2873 1571,-2873 1571,-2869 1567,-2869 1567,-2865 1571,-2865 1571,-2813 1567,-2813 1567,-2809 1571,-2809 1571,-2805 1760,-2805 1760,-2873"/>
<polyline fill="none" stroke="#000000" points="1571,-2869 1575,-2869 1575,-2865 1571,-2865 "/>
<polyline fill="none" stroke="#000000" points="1571,-2813 1575,-2813 1575,-2809 1571,-2809 "/>
<text text-anchor="middle" x="1665.5" y="-2857.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1665.5" y="-2842.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1665.5" y="-2827.8" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1665.5" y="-2812.8" font-family="Times,serif" font-size="14.00" fill="#000000">in the tried table.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5006&#45;&gt;zcash/zcash#5008 -->
<g id="edge88" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1433.8,-2839C1474.5,-2839 1520.5,-2839 1560.8,-2839"/>
<polygon fill="#000000" stroke="#000000" points="1560.9,-2842.5001 1570.9,-2839 1560.9,-2835.5001 1560.9,-2842.5001"/>
</g>
<!-- zcash/zcash#4996 -->
<g id="node78" class="node">
<title>zcash/zcash#4996</title>
<g id="a_node78"><a xlink:href="https://github.com/zcash/zcash/pull/4996" xlink:title="zcash/zcash#4996&#10;Add &#45;blocksonly option" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="732.5,-2881 552.5,-2881 552.5,-2877 548.5,-2877 548.5,-2873 552.5,-2873 552.5,-2851 548.5,-2851 548.5,-2847 552.5,-2847 552.5,-2843 732.5,-2843 732.5,-2881"/>
<polyline fill="none" stroke="#000000" points="552.5,-2877 556.5,-2877 556.5,-2873 552.5,-2873 "/>
<polyline fill="none" stroke="#000000" points="552.5,-2851 556.5,-2851 556.5,-2847 552.5,-2847 "/>
<text text-anchor="middle" x="642.5" y="-2865.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4996</text>
<text text-anchor="middle" x="642.5" y="-2850.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add &#45;blocksonly option</text>
</a>
</g>
</g>
<!-- zcash/zcash#4996&#45;&gt;zcash/zcash#5004 -->
<g id="edge89" class="edge">
<title>zcash/zcash#4996&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M732.54,-2874.4C779.88,-2880.9 837.97,-2888.9 886.33,-2895.6"/>
<polygon fill="#000000" stroke="#000000" points="886.1058,-2899.1021 896.49,-2897 887.0614,-2892.1676 886.1058,-2899.1021"/>
</g>
<!-- zcash/zcash#4988 -->
<g id="node79" class="node">
<title>zcash/zcash#4988</title>
<g id="a_node79"><a xlink:href="https://github.com/zcash/zcash/pull/4988" xlink:title="zcash/zcash#4988&#10;Add feature flagging&#10;infrastructure to&#10;consensus parameters." target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="200,-68 18,-68 18,-64 14,-64 14,-60 18,-60 18,-8 14,-8 14,-4 18,-4 18,0 200,0 200,-68"/>
<polyline fill="none" stroke="#000000" points="18,-64 22,-64 22,-60 18,-60 "/>
<polyline fill="none" stroke="#000000" points="18,-8 22,-8 22,-4 18,-4 "/>
<text text-anchor="middle" x="109" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4988</text>
<text text-anchor="middle" x="109" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add feature flagging</text>
<text text-anchor="middle" x="109" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">infrastructure to</text>
<text text-anchor="middle" x="109" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus parameters.</text>
</a>
</g>
</g>
<!-- zcash/zcash#4988&#45;&gt;zcash/zcash#4190 -->
<g id="edge90" class="edge">
<title>zcash/zcash#4988&#45;&gt;zcash/zcash#4190</title>
<path fill="none" stroke="#000000" d="M200.23,-47.405C216.57,-49.806 233.7,-52.323 250.35,-54.77"/>
<polygon fill="#000000" stroke="#000000" points="250.2475,-58.2924 260.65,-56.283 251.2649,-51.3667 250.2475,-58.2924"/>
</g>
<!-- zcash/zcash#3722 -->
<g id="node80" class="node">
<title>zcash/zcash#3722</title>
<g id="a_node80"><a xlink:href="https://github.com/zcash/zcash/issues/3722" xlink:title="zcash/zcash#3722&#10;Decouple consensus&#10;changes from Network&#10;Upgrades in the zcashd&#10;code" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2395.5,-1670.5 2209.5,-1670.5 2209.5,-1587.5 2395.5,-1587.5 2395.5,-1670.5"/>
<text text-anchor="middle" x="2302.5" y="-1655.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#3722</text>
<text text-anchor="middle" x="2302.5" y="-1640.3" font-family="Times,serif" font-size="14.00" fill="#000000">Decouple consensus</text>
<text text-anchor="middle" x="2302.5" y="-1625.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes from Network</text>
<text text-anchor="middle" x="2302.5" y="-1610.3" font-family="Times,serif" font-size="14.00" fill="#000000">Upgrades in the zcashd</text>
<text text-anchor="middle" x="2302.5" y="-1595.3" font-family="Times,serif" font-size="14.00" fill="#000000">code</text>
</a>
</g>
</g>
<!-- zcash/zcash#3722&#45;&gt;zcash/zcash#5024 -->
<g id="edge91" class="edge">
<title>zcash/zcash#3722&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2395.6,-1616C2417.9,-1612.9 2441.6,-1609.6 2463.7,-1606.5"/>
<polygon fill="#000000" stroke="#000000" points="2464.2819,-1609.9528 2473.7,-1605.1 2463.3113,-1603.0204 2464.2819,-1609.9528"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node81" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node81"><a xlink:href="https://github.com/zcash/librustzcash/issues/368" xlink:title="zcash/librustzcash#368&#10;zcash_history: Add&#10;Orchard support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2396.5,-2004.5 2208.5,-2004.5 2208.5,-1951.5 2396.5,-1951.5 2396.5,-2004.5"/>
<text text-anchor="middle" x="2302.5" y="-1989.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="2302.5" y="-1974.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="2302.5" y="-1959.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard support</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#368&#45;&gt;zcash/zcash#5037 -->
<g id="edge92" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M2396.7,-1956.6C2411.9,-1953.2 2427.7,-1949.6 2443.2,-1946"/>
<polygon fill="#000000" stroke="#000000" points="2444.3268,-1949.3331 2453.3,-1943.7 2442.7725,-1942.5078 2444.3268,-1949.3331"/>
</g>
<!-- zcash/zcash#5056 -->
<g id="node82" class="node">
<title>zcash/zcash#5056</title>
<g id="a_node82"><a xlink:href="https://github.com/zcash/zcash/issues/5056" xlink:title="zcash/zcash#5056&#10;Identify necessary RPC&#10;changes to support&#10;Unified Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2099,-777 1914,-777 1914,-709 2099,-709 2099,-777"/>
<text text-anchor="middle" x="2006.5" y="-761.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5056</text>
<text text-anchor="middle" x="2006.5" y="-746.8" font-family="Times,serif" font-size="14.00" fill="#000000">Identify necessary RPC</text>
<text text-anchor="middle" x="2006.5" y="-731.8" font-family="Times,serif" font-size="14.00" fill="#000000">changes to support</text>
<text text-anchor="middle" x="2006.5" y="-716.8" font-family="Times,serif" font-size="14.00" fill="#000000">Unified Addresses</text>
</a>
</g>
</g>
<!-- zcash/zcash#5056&#45;&gt;zcash/zcash#5019 -->
<g id="edge94" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2099.3,-720.73C2131.5,-713.01 2167.8,-704.31 2200.7,-696.43"/>
<polygon fill="#000000" stroke="#000000" points="2201.8038,-699.764 2210.7,-694.01 2200.1573,-692.9604 2201.8038,-699.764"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node83" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node83"><a xlink:href="https://github.com/zcash/zcash/issues/5177" xlink:title="zcash/zcash#5177&#10;Deprecate old address&#45;&#10;related RPCs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2393.5,-769.5 2211.5,-769.5 2211.5,-716.5 2393.5,-716.5 2393.5,-769.5"/>
<text text-anchor="middle" x="2302.5" y="-754.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="2302.5" y="-739.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="2302.5" y="-724.3" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5056&#45;&gt;zcash/zcash#5177 -->
<g id="edge95" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5177</title>
<path fill="none" stroke="#000000" d="M2099.3,-743C2131.7,-743 2168.1,-743 2201.1,-743"/>
<polygon fill="#000000" stroke="#000000" points="2201.3,-746.5001 2211.3,-743 2201.3,-739.5001 2201.3,-746.5001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node84" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node84"><a xlink:href="https://github.com/zcash/zcash/issues/5176" xlink:title="zcash/zcash#5176&#10;Implement BIP 39 seed&#10;phrase support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2099,-619.5 1914,-619.5 1914,-566.5 2099,-566.5 2099,-619.5"/>
<text text-anchor="middle" x="2006.5" y="-604.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="2006.5" y="-589.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="2006.5" y="-574.3" font-family="Times,serif" font-size="14.00" fill="#000000">phrase support</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#5019 -->
<g id="edge96" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2099.1,-613.13C2118.9,-617.75 2139.7,-622.84 2159,-628 2175.4,-632.39 2192.8,-637.4 2209.5,-642.43"/>
<polygon fill="#000000" stroke="#000000" points="2208.7151,-645.849 2219.3,-645.39 2210.7391,-639.148 2208.7151,-645.849"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node85" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node85"><a xlink:href="https://github.com/zcash/zcash/issues/2673" xlink:title="zcash/zcash#2673&#10;Support Hierarchical&#10;Deterministic t&#45;addresses&#10;(BIP 32)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2403.5,-627 2201.5,-627 2201.5,-559 2403.5,-559 2403.5,-627"/>
<text text-anchor="middle" x="2302.5" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="2302.5" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="2302.5" y="-581.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="2302.5" y="-566.8" font-family="Times,serif" font-size="14.00" fill="#000000">(BIP 32)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#2673 -->
<g id="edge97" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M2099.3,-593C2128.4,-593 2160.9,-593 2191.1,-593"/>
<polygon fill="#000000" stroke="#000000" points="2191.3,-596.5001 2201.3,-593 2191.3,-589.5001 2191.3,-596.5001"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge98" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2403.5,-591.79C2416.2,-591.64 2429.2,-591.49 2442.1,-591.33"/>
<polygon fill="#000000" stroke="#000000" points="2442.3419,-594.8275 2452.3,-591.21 2442.2595,-587.828 2442.3419,-594.8275"/>
</g>
<!-- zcash/zips#364 -->
<g id="node86" class="node">
<title>zcash/zips#364</title>
<g id="a_node86"><a xlink:href="https://github.com/zcash/zips/issues/364" xlink:title="zcash/zips#364&#10;[ZIP 339] Wallet Recovery&#10;Words (a la BIP 39)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1768,-500.5 1563,-500.5 1563,-447.5 1768,-447.5 1768,-500.5"/>
<text text-anchor="middle" x="1665.5" y="-485.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="1665.5" y="-470.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="1665.5" y="-455.3" font-family="Times,serif" font-size="14.00" fill="#000000">Words (a la BIP 39)</text>
</a>
</g>
</g>
<!-- zcash/zips#364&#45;&gt;zcash/zcash#5176 -->
<g id="edge99" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M1768.4,-487.19C1785.8,-492.28 1803.1,-499.3 1818,-509 1840.4,-523.53 1831.7,-542.4 1854,-557 1869.1,-566.87 1886.6,-574.04 1904.2,-579.25"/>
<polygon fill="#000000" stroke="#000000" points="1903.4295,-582.6681 1914,-581.95 1905.2889,-575.9195 1903.4295,-582.6681"/>
</g>
<!-- zcash/zips#511 -->
<g id="node87" class="node">
<title>zcash/zips#511</title>
<g id="a_node87"><a xlink:href="https://github.com/zcash/zips/issues/511" xlink:title="zcash/zips#511&#10;ZIP 32: Document standard&#10;key structure for Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2410,-541 2195,-541 2195,-473 2410,-473 2410,-541"/>
<text text-anchor="middle" x="2302.5" y="-525.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="2302.5" y="-510.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="2302.5" y="-495.8" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="2302.5" y="-480.8" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/zcash#5179 -->
<g id="edge100" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2405.7,-541.12C2417.8,-545.14 2430.3,-549.26 2442.6,-553.31"/>
<polygon fill="#000000" stroke="#000000" points="2441.7062,-556.7015 2452.3,-556.55 2443.924,-550.0621 2441.7062,-556.7015"/>
</g>
<!-- zcash/zips#475 -->
<g id="node88" class="node">
<title>zcash/zips#475</title>
<g id="a_node88"><a xlink:href="https://github.com/zcash/zips/issues/475" xlink:title="zcash/zips#475&#10;ZIP 221: Add Orchard&#10;commitment tree roots" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2097.5,-2032.5 1915.5,-2032.5 1915.5,-1979.5 2097.5,-1979.5 2097.5,-2032.5"/>
<text text-anchor="middle" x="2006.5" y="-2017.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#475</text>
<text text-anchor="middle" x="2006.5" y="-2002.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 221: Add Orchard</text>
<text text-anchor="middle" x="2006.5" y="-1987.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree roots</text>
</a>
</g>
</g>
<!-- zcash/zips#475&#45;&gt;zcash/librustzcash#368 -->
<g id="edge101" class="edge">
<title>zcash/zips#475&#45;&gt;zcash/librustzcash#368</title>
<path fill="none" stroke="#000000" d="M2097.7,-1997.4C2129.5,-1994.4 2165.4,-1991 2198.2,-1987.9"/>
<polygon fill="#000000" stroke="#000000" points="2198.6935,-1991.3683 2208.3,-1986.9 2198.0038,-1984.4024 2198.6935,-1991.3683"/>
</g>
<!-- zcash/zips#482 -->
<g id="node89" class="node">
<title>zcash/zips#482</title>
<g id="a_node89"><a xlink:href="https://github.com/zcash/zips/issues/482" xlink:title="zcash/zips#482&#10;[ZIP 316] Unified&#10;Addresses" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2077,-461.5 1936,-461.5 1936,-408.5 2077,-408.5 2077,-461.5"/>
<text text-anchor="middle" x="2006.5" y="-446.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#482</text>
<text text-anchor="middle" x="2006.5" y="-431.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 316] Unified</text>
<text text-anchor="middle" x="2006.5" y="-416.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zips#482&#45;&gt;zcash/librustzcash#371 -->
<g id="edge102" class="edge">
<title>zcash/zips#482&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2077,-431.66C2113.3,-429.95 2158.2,-427.83 2198.3,-425.93"/>
<polygon fill="#000000" stroke="#000000" points="2198.5775,-429.4209 2208.4,-425.45 2198.2451,-422.4288 2198.5775,-429.4209"/>
</g>
<!-- zcash/librustzcash#300 -->
<g id="node90" class="node">
<title>zcash/librustzcash#300</title>
<g id="a_node90"><a xlink:href="https://github.com/zcash/librustzcash/issues/300" xlink:title="zcash/librustzcash#300&#10;Use feature flags to gate&#10;access to ZIP&#45;222 code." target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="206,-195.5 12,-195.5 12,-142.5 206,-142.5 206,-195.5"/>
<text text-anchor="middle" x="109" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#300</text>
<text text-anchor="middle" x="109" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use feature flags to gate</text>
<text text-anchor="middle" x="109" y="-150.3" font-family="Times,serif" font-size="14.00" fill="#000000">access to ZIP&#45;222 code.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#300&#45;&gt;zcash/librustzcash#226 -->
<g id="edge103" class="edge">
<title>zcash/librustzcash#300&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M206.18,-169C220.37,-169 235.04,-169 249.37,-169"/>
<polygon fill="#000000" stroke="#000000" points="249.73,-172.5001 259.73,-169 249.73,-165.5001 249.73,-172.5001"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node91" class="node">
<title>zcash/halo2#63</title>
<g id="a_node91"><a xlink:href="https://github.com/zcash/halo2/issues/63" xlink:title="zcash/halo2#63&#10;Implement zero&#45;knowledge&#45;&#10;ness" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2114.5,-1961.5 1898.5,-1961.5 1898.5,-1908.5 2114.5,-1908.5 2114.5,-1961.5"/>
<text text-anchor="middle" x="2006.5" y="-1946.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="2006.5" y="-1931.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="2006.5" y="-1916.3" font-family="Times,serif" font-size="14.00" fill="#000000">ness</text>
</a>
</g>
</g>
<!-- zcash/halo2#63&#45;&gt;zcash/librustzcash#320 -->
<g id="edge104" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2114.7,-1923C2130.8,-1917.5 2146.2,-1909.8 2159,-1899 2190.6,-1872.2 2171.1,-1846.9 2195,-1813 2212.4,-1788.4 2236.9,-1765.4 2258.1,-1747.9"/>
<polygon fill="#000000" stroke="#000000" points="2260.4777,-1750.48 2266.1,-1741.5 2256.1048,-1745.0139 2260.4777,-1750.48"/>
</g>
<!-- zcash/librustzcash#349 -->
<g id="node92" class="node">
<title>zcash/librustzcash#349</title>
<g id="a_node92"><a xlink:href="https://github.com/zcash/librustzcash/issues/349" xlink:title="zcash/librustzcash#349&#10;Generalise note&#10;encryption logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1759.5,-998.5 1571.5,-998.5 1571.5,-945.5 1759.5,-945.5 1759.5,-998.5"/>
<text text-anchor="middle" x="1665.5" y="-983.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#349</text>
<text text-anchor="middle" x="1665.5" y="-968.3" font-family="Times,serif" font-size="14.00" fill="#000000">Generalise note</text>
<text text-anchor="middle" x="1665.5" y="-953.3" font-family="Times,serif" font-size="14.00" fill="#000000">encryption logic</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#349&#45;&gt;zcash/orchard#32 -->
<g id="edge105" class="edge">
<title>zcash/librustzcash#349&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1759.6,-972C1800,-972 1847.7,-972 1890.3,-972"/>
<polygon fill="#000000" stroke="#000000" points="1890.4,-975.5001 1900.4,-972 1890.4,-968.5001 1890.4,-975.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25 -->
<g id="node93" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25</title>
<g id="a_node93"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/25" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#10;Implement F4Jumble" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1818,-390 1513,-390 1513,-352 1818,-352 1818,-390"/>
<text text-anchor="middle" x="1665.5" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#25</text>
<text text-anchor="middle" x="1665.5" y="-359.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement F4Jumble</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge106" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M1766.9,-351.97C1794.6,-346.77 1825.2,-341.03 1855,-335.43"/>
<polygon fill="#000000" stroke="#000000" points="1855.9144,-338.8197 1865.1,-333.54 1854.6268,-331.9392 1855.9144,-338.8197"/>
</g>
<!-- zcash/librustzcash#378 -->
<g id="node94" class="node">
<title>zcash/librustzcash#378</title>
<g id="a_node94"><a xlink:href="https://github.com/zcash/librustzcash/issues/378" xlink:title="zcash/librustzcash#378&#10;Implement F4Jumble" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2100.5,-390 1912.5,-390 1912.5,-352 2100.5,-352 2100.5,-390"/>
<text text-anchor="middle" x="2006.5" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#378</text>
<text text-anchor="middle" x="2006.5" y="-359.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement F4Jumble</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash/librustzcash#378 -->
<g id="edge107" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash/librustzcash#378</title>
<path fill="none" stroke="#000000" d="M1818,-371C1846.5,-371 1875.6,-371 1902.2,-371"/>
<polygon fill="#000000" stroke="#000000" points="1902.3,-374.5001 1912.3,-371 1902.3,-367.5001 1902.3,-374.5001"/>
</g>
<!-- zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371 -->
<g id="edge108" class="edge">
<title>zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2100.6,-386.89C2131.6,-392.14 2166.4,-398.01 2198.2,-403.38"/>
<polygon fill="#000000" stroke="#000000" points="2197.9555,-406.8884 2208.4,-405.11 2199.1261,-399.987 2197.9555,-406.8884"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#14 -->
<g id="node95" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#14</title>
<g id="a_node95"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/14" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#10;Implementation of Pallas" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="795,-452 490,-452 490,-448 486,-448 486,-444 490,-444 490,-422 486,-422 486,-418 490,-418 490,-414 795,-414 795,-452"/>
<polyline fill="none" stroke="#000000" points="490,-448 494,-448 494,-444 490,-444 "/>
<polyline fill="none" stroke="#000000" points="490,-422 494,-422 494,-418 490,-418 "/>
<text text-anchor="middle" x="642.5" y="-436.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#14</text>
<text text-anchor="middle" x="642.5" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implementation of Pallas</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17 -->
<g id="node96" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</title>
<g id="a_node96"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/17" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#10;Add iso&#45;Pallas, SWU hash&#45;&#10;to&#45;curve, and Sinsemilla" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1136,-459.5 831,-459.5 831,-455.5 827,-455.5 827,-451.5 831,-451.5 831,-414.5 827,-414.5 827,-410.5 831,-410.5 831,-406.5 1136,-406.5 1136,-459.5"/>
<polyline fill="none" stroke="#000000" points="831,-455.5 835,-455.5 835,-451.5 831,-451.5 "/>
<polyline fill="none" stroke="#000000" points="831,-414.5 835,-414.5 835,-410.5 831,-410.5 "/>
<text text-anchor="middle" x="983.5" y="-444.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</text>
<text text-anchor="middle" x="983.5" y="-429.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add iso&#45;Pallas, SWU hash&#45;</text>
<text text-anchor="middle" x="983.5" y="-414.3" font-family="Times,serif" font-size="14.00" fill="#000000">to&#45;curve, and Sinsemilla</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#17 -->
<g id="edge109" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</title>
<path fill="none" stroke="#000000" d="M795.05,-433C803.59,-433 812.19,-433 820.76,-433"/>
<polygon fill="#000000" stroke="#000000" points="820.81,-436.5001 830.81,-433 820.81,-429.5001 820.81,-436.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18 -->
<g id="node97" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</title>
<g id="a_node97"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/18" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#10;Add Orchard generators" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1477,-326 1172,-326 1172,-322 1168,-322 1168,-318 1172,-318 1172,-296 1168,-296 1168,-292 1172,-292 1172,-288 1477,-288 1477,-326"/>
<polyline fill="none" stroke="#000000" points="1172,-322 1176,-322 1176,-318 1172,-318 "/>
<polyline fill="none" stroke="#000000" points="1172,-296 1176,-296 1176,-292 1172,-292 "/>
<text text-anchor="middle" x="1324.5" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</text>
<text text-anchor="middle" x="1324.5" y="-295.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard generators</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#18 -->
<g id="edge110" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</title>
<path fill="none" stroke="#000000" d="M1106.1,-406.5C1116.3,-403.56 1126.4,-400.39 1136,-397 1187.6,-378.84 1243.7,-350.87 1281.2,-330.93"/>
<polygon fill="#000000" stroke="#000000" points="1283.2125,-333.824 1290.4,-326.04 1279.9271,-327.6429 1283.2125,-333.824"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node98" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node98"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/15" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#10;Implement ZIP 225 test&#10;vectors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1477,-585.5 1172,-585.5 1172,-532.5 1477,-532.5 1477,-585.5"/>
<text text-anchor="middle" x="1324.5" y="-570.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</text>
<text text-anchor="middle" x="1324.5" y="-555.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="1324.5" y="-540.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="edge111" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<path fill="none" stroke="#000000" d="M1055.4,-459.57C1110.3,-479.84 1185.9,-507.78 1243,-528.88"/>
<polygon fill="#000000" stroke="#000000" points="1242.1068,-532.2814 1252.7,-532.47 1244.5365,-525.7166 1242.1068,-532.2814"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="edge112" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<path fill="none" stroke="#000000" d="M1477,-307C1485.6,-307 1494.2,-307 1502.8,-307"/>
<polygon fill="#000000" stroke="#000000" points="1502.8,-310.5001 1512.8,-307 1502.8,-303.5001 1502.8,-310.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#21 -->
<g id="node99" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</title>
<g id="a_node99"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/21" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#21&#10;Add Orchard MerkleCRH" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1818,-262 1513,-262 1513,-258 1509,-258 1509,-254 1513,-254 1513,-232 1509,-232 1509,-228 1513,-228 1513,-224 1818,-224 1818,-262"/>
<polyline fill="none" stroke="#000000" points="1513,-258 1517,-258 1517,-254 1513,-254 "/>
<polyline fill="none" stroke="#000000" points="1513,-232 1517,-232 1517,-228 1513,-228 "/>
<text text-anchor="middle" x="1665.5" y="-246.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</text>
<text text-anchor="middle" x="1665.5" y="-231.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard MerkleCRH</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#21 -->
<g id="edge113" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</title>
<path fill="none" stroke="#000000" d="M1423.3,-288C1452.2,-282.47 1483.9,-276.46 1513,-271 1525.4,-268.67 1538.5,-266.25 1551.4,-263.86"/>
<polygon fill="#000000" stroke="#000000" points="1552.1028,-267.2895 1561.3,-262.03 1550.8304,-260.4061 1552.1028,-267.2895"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node100" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node100"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/23" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#10;Implement ZIP 244 test&#10;vectors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1818,-642.5 1513,-642.5 1513,-589.5 1818,-589.5 1818,-642.5"/>
<text text-anchor="middle" x="1665.5" y="-627.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</text>
<text text-anchor="middle" x="1665.5" y="-612.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="1665.5" y="-597.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="edge114" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<path fill="none" stroke="#000000" d="M1477,-584.5C1485.6,-585.93 1494.2,-587.36 1502.8,-588.8"/>
<polygon fill="#000000" stroke="#000000" points="1502.3583,-592.2748 1512.8,-590.48 1503.5181,-585.3715 1502.3583,-592.2748"/>
</g>
<!-- zcash/halo2#39 -->
<g id="node101" class="node">
<title>zcash/halo2#39</title>
<g id="a_node101"><a xlink:href="https://github.com/zcash/halo2/issues/39" xlink:title="zcash/halo2#39&#10;Add support for&#10;coefficient blinding&#10;factors in&#10;poly::commitment" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1402,-2038.5 1247,-2038.5 1247,-1955.5 1402,-1955.5 1402,-2038.5"/>
<text text-anchor="middle" x="1324.5" y="-2023.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#39</text>
<text text-anchor="middle" x="1324.5" y="-2008.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="1324.5" y="-1993.3" font-family="Times,serif" font-size="14.00" fill="#000000">coefficient blinding</text>
<text text-anchor="middle" x="1324.5" y="-1978.3" font-family="Times,serif" font-size="14.00" fill="#000000">factors in</text>
<text text-anchor="middle" x="1324.5" y="-1963.3" font-family="Times,serif" font-size="14.00" fill="#000000">poly::commitment</text>
</a>
</g>
</g>
<!-- zcash/halo2#39&#45;&gt;zcash/halo2#63 -->
<g id="edge115" class="edge">
<title>zcash/halo2#39&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M1402.4,-2021.6C1426.4,-2029.5 1452.9,-2038.4 1477,-2047 1493.2,-2052.8 1496.1,-2057.8 1513,-2061 1579.6,-2073.5 1761.9,-2099.1 1818,-2061 1854,-2036.5 1821,-1998.3 1854,-1970 1864.1,-1961.3 1875.9,-1954.7 1888.4,-1949.6"/>
<polygon fill="#000000" stroke="#000000" points="1889.8815,-1952.7864 1898.1,-1946.1 1887.5057,-1946.2019 1889.8815,-1952.7864"/>
</g>
<!-- zcash/halo2#65 -->
<g id="node102" class="node">
<title>zcash/halo2#65</title>
<g id="a_node102"><a xlink:href="https://github.com/zcash/halo2/issues/65" xlink:title="zcash/halo2#65&#10;Implement SHA&#45;256 gadget" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1092.5,-1636 874.5,-1636 874.5,-1598 1092.5,-1598 1092.5,-1636"/>
<text text-anchor="middle" x="983.5" y="-1620.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#65</text>
<text text-anchor="middle" x="983.5" y="-1605.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement SHA&#45;256 gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#64 -->
<g id="node103" class="node">
<title>zcash/halo2#64</title>
<g id="a_node103"><a xlink:href="https://github.com/zcash/halo2/issues/64" xlink:title="zcash/halo2#64&#10;Design gadget API or&#10;interaction model" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1409.5,-1565.5 1239.5,-1565.5 1239.5,-1512.5 1409.5,-1512.5 1409.5,-1565.5"/>
<text text-anchor="middle" x="1324.5" y="-1550.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="1324.5" y="-1535.3" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="1324.5" y="-1520.3" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#65&#45;&gt;zcash/halo2#64 -->
<g id="edge116" class="edge">
<title>zcash/halo2#65&#45;&gt;zcash/halo2#64</title>
<path fill="none" stroke="#000000" d="M1066.9,-1597.9C1116,-1586.7 1178.2,-1572.5 1229.2,-1560.8"/>
<polygon fill="#000000" stroke="#000000" points="1230.3268,-1564.1331 1239.3,-1558.5 1228.7725,-1557.3078 1230.3268,-1564.1331"/>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#73 -->
<g id="edge117" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M1409.7,-1521.3C1458,-1511.2 1518.7,-1498.6 1568.9,-1488.1"/>
<polygon fill="#000000" stroke="#000000" points="1569.6911,-1491.511 1578.8,-1486.1 1568.3049,-1484.6496 1569.6911,-1491.511"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node104" class="node">
<title>zcash/halo2#235</title>
<g id="a_node104"><a xlink:href="https://github.com/zcash/halo2/issues/235" xlink:title="zcash/halo2#235&#10;[Circuit] Implement&#10;Core/Chip abstraction" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1753.5,-1565.5 1577.5,-1565.5 1577.5,-1512.5 1753.5,-1512.5 1753.5,-1565.5"/>
<text text-anchor="middle" x="1665.5" y="-1550.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="1665.5" y="-1535.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="1665.5" y="-1520.3" font-family="Times,serif" font-size="14.00" fill="#000000">Core/Chip abstraction</text>
</a>
</g>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#235 -->
<g id="edge118" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M1409.7,-1539C1457.5,-1539 1517.3,-1539 1567.1,-1539"/>
<polygon fill="#000000" stroke="#000000" points="1567.3,-1542.5001 1577.3,-1539 1567.3,-1535.5001 1567.3,-1542.5001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge119" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1753.8,-1520.6C1801.6,-1510.7 1860.7,-1498.3 1909.8,-1488.1"/>
<polygon fill="#000000" stroke="#000000" points="1910.6806,-1491.4933 1919.8,-1486.1 1909.3078,-1484.6292 1910.6806,-1491.4933"/>
</g>
<!-- zcash/halo2#44 -->
<g id="node105" class="node">
<title>zcash/halo2#44</title>
<g id="a_node105"><a xlink:href="https://github.com/zcash/halo2/issues/44" xlink:title="zcash/halo2#44&#10;Implement lookup argument" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="753,-1823 532,-1823 532,-1785 753,-1785 753,-1823"/>
<text text-anchor="middle" x="642.5" y="-1807.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#44</text>
<text text-anchor="middle" x="642.5" y="-1792.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement lookup argument</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#65 -->
<g id="edge120" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#65</title>
<path fill="none" stroke="#000000" d="M677.39,-1784.9C740.02,-1750.5 871.33,-1678.5 939.82,-1641"/>
<polygon fill="#000000" stroke="#000000" points="941.6106,-1644.0093 948.66,-1636.1 938.2169,-1637.8869 941.6106,-1644.0093"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node106" class="node">
<title>zcash/halo2#57</title>
<g id="a_node106"><a xlink:href="https://github.com/zcash/halo2/issues/57" xlink:title="zcash/halo2#57&#10;Remove unused&#10;fixed_values from&#10;ProvingKey" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1055,-1885 912,-1885 912,-1817 1055,-1817 1055,-1885"/>
<text text-anchor="middle" x="983.5" y="-1869.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="983.5" y="-1854.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="983.5" y="-1839.8" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="983.5" y="-1824.8" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#57 -->
<g id="edge121" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#57</title>
<path fill="none" stroke="#000000" d="M753.21,-1819.3C801.67,-1825.9 857.5,-1833.6 902.05,-1839.8"/>
<polygon fill="#000000" stroke="#000000" points="901.5897,-1843.2695 911.96,-1841.1 902.5002,-1836.329 901.5897,-1843.2695"/>
</g>
<!-- zcash/halo2#82 -->
<g id="node107" class="node">
<title>zcash/halo2#82</title>
<g id="a_node107"><a xlink:href="https://github.com/zcash/halo2/issues/82" xlink:title="zcash/halo2#82&#10;Consider not sampling&#10;beta and gamma if there&#10;are no permutations or&#10;lookups" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1080,-1798.5 887,-1798.5 887,-1715.5 1080,-1715.5 1080,-1798.5"/>
<text text-anchor="middle" x="983.5" y="-1783.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="983.5" y="-1768.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="983.5" y="-1753.3" font-family="Times,serif" font-size="14.00" fill="#000000">beta and gamma if there</text>
<text text-anchor="middle" x="983.5" y="-1738.3" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="983.5" y="-1723.3" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#82 -->
<g id="edge122" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#82</title>
<path fill="none" stroke="#000000" d="M753.21,-1788.7C792.84,-1783.3 837.4,-1777.1 876.69,-1771.7"/>
<polygon fill="#000000" stroke="#000000" points="877.3933,-1775.1362 886.82,-1770.3 876.435,-1768.2021 877.3933,-1775.1362"/>
</g>
<!-- zcash/halo2#62 -->
<g id="node108" class="node">
<title>zcash/halo2#62</title>
<g id="a_node108"><a xlink:href="https://github.com/zcash/halo2/issues/62" xlink:title="zcash/halo2#62&#10;Modularise prover and&#10;verifier by introducing&#10;internal APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1073,-2031 894,-2031 894,-1963 1073,-1963 1073,-2031"/>
<text text-anchor="middle" x="983.5" y="-2015.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#62</text>
<text text-anchor="middle" x="983.5" y="-2000.8" font-family="Times,serif" font-size="14.00" fill="#000000">Modularise prover and</text>
<text text-anchor="middle" x="983.5" y="-1985.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier by introducing</text>
<text text-anchor="middle" x="983.5" y="-1970.8" font-family="Times,serif" font-size="14.00" fill="#000000">internal APIs</text>
</a>
</g>
</g>
<!-- zcash/halo2#62&#45;&gt;zcash/halo2#66 -->
<g id="edge123" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#66</title>
<path fill="none" stroke="#000000" d="M1073,-2021.3C1104.3,-2029.6 1139.7,-2038.9 1172,-2047 1186.3,-2050.6 1201.4,-2054.3 1216.2,-2057.8"/>
<polygon fill="#000000" stroke="#000000" points="1215.4545,-2061.2208 1226,-2060.2 1217.1196,-2054.4217 1215.4545,-2061.2208"/>
</g>
<!-- zcash/halo2#62&#45;&gt;zcash/halo2#39 -->
<g id="edge124" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#39</title>
<path fill="none" stroke="#000000" d="M1073.1,-1997C1123.6,-1997 1186.4,-1997 1236.6,-1997"/>
<polygon fill="#000000" stroke="#000000" points="1236.8,-2000.5001 1246.8,-1997 1236.8,-1993.5001 1236.8,-2000.5001"/>
</g>
<!-- zcash/halo2#61 -->
<g id="node109" class="node">
<title>zcash/halo2#61</title>
<g id="a_node109"><a xlink:href="https://github.com/zcash/halo2/pull/61" xlink:title="zcash/halo2#61&#10;Migrate to ff traits" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="184.5,-1338 33.5,-1338 33.5,-1334 29.5,-1334 29.5,-1330 33.5,-1330 33.5,-1308 29.5,-1308 29.5,-1304 33.5,-1304 33.5,-1300 184.5,-1300 184.5,-1338"/>
<polyline fill="none" stroke="#000000" points="33.5,-1334 37.5,-1334 37.5,-1330 33.5,-1330 "/>
<polyline fill="none" stroke="#000000" points="33.5,-1308 37.5,-1308 37.5,-1304 33.5,-1304 "/>
<text text-anchor="middle" x="109" y="-1322.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#61</text>
<text text-anchor="middle" x="109" y="-1307.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to ff traits</text>
</a>
</g>
</g>
<!-- zcash/halo2#68 -->
<g id="node110" class="node">
<title>zcash/halo2#68</title>
<g id="a_node110"><a xlink:href="https://github.com/zcash/halo2/issues/68" xlink:title="zcash/halo2#68&#10;Migrate to the Pasta&#10;curves" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="436,-1345.5 272,-1345.5 272,-1292.5 436,-1292.5 436,-1345.5"/>
<text text-anchor="middle" x="354" y="-1330.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#68</text>
<text text-anchor="middle" x="354" y="-1315.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the Pasta</text>
<text text-anchor="middle" x="354" y="-1300.3" font-family="Times,serif" font-size="14.00" fill="#000000">curves</text>
</a>
</g>
</g>
<!-- zcash/halo2#61&#45;&gt;zcash/halo2#68 -->
<g id="edge125" class="edge">
<title>zcash/halo2#61&#45;&gt;zcash/halo2#68</title>
<path fill="none" stroke="#000000" d="M184.51,-1319C208.96,-1319 236.36,-1319 261.88,-1319"/>
<polygon fill="#000000" stroke="#000000" points="261.93,-1322.5001 271.93,-1319 261.93,-1315.5001 261.93,-1322.5001"/>
</g>
<!-- zcash/halo2#68&#45;&gt;zcash/halo2#72 -->
<g id="edge126" class="edge">
<title>zcash/halo2#68&#45;&gt;zcash/halo2#72</title>
<path fill="none" stroke="#000000" d="M436.29,-1332.4C469.03,-1337.7 507.03,-1343.9 541.42,-1349.5"/>
<polygon fill="#000000" stroke="#000000" points="541.0572,-1352.9882 551.5,-1351.2 542.2213,-1346.0856 541.0572,-1352.9882"/>
</g>
<!-- zcash/halo2#70 -->
<g id="node111" class="node">
<title>zcash/halo2#70</title>
<g id="a_node111"><a xlink:href="https://github.com/zcash/halo2/pull/70" xlink:title="zcash/halo2#70&#10;Extract permutation&#10;argument and introduce&#10;typed challenges" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="449.5,-1934 258.5,-1934 258.5,-1930 254.5,-1930 254.5,-1926 258.5,-1926 258.5,-1874 254.5,-1874 254.5,-1870 258.5,-1870 258.5,-1866 449.5,-1866 449.5,-1934"/>
<polyline fill="none" stroke="#000000" points="258.5,-1930 262.5,-1930 262.5,-1926 258.5,-1926 "/>
<polyline fill="none" stroke="#000000" points="258.5,-1874 262.5,-1874 262.5,-1870 258.5,-1870 "/>
<text text-anchor="middle" x="354" y="-1918.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#70</text>
<text text-anchor="middle" x="354" y="-1903.8" font-family="Times,serif" font-size="14.00" fill="#000000">Extract permutation</text>
<text text-anchor="middle" x="354" y="-1888.8" font-family="Times,serif" font-size="14.00" fill="#000000">argument and introduce</text>
<text text-anchor="middle" x="354" y="-1873.8" font-family="Times,serif" font-size="14.00" fill="#000000">typed challenges</text>
</a>
</g>
</g>
<!-- zcash/halo2#70&#45;&gt;zcash/halo2#44 -->
<g id="edge127" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#44</title>
<path fill="none" stroke="#000000" d="M449.67,-1868.2C490.92,-1854.4 538.18,-1838.7 575.59,-1826.3"/>
<polygon fill="#000000" stroke="#000000" points="577.0139,-1829.5135 585.37,-1823 574.7758,-1822.8809 577.0139,-1829.5135"/>
</g>
<!-- zcash/halo2#70&#45;&gt;zcash/halo2#62 -->
<g id="edge128" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#62</title>
<path fill="none" stroke="#000000" d="M449.61,-1914.7C566.83,-1932.8 764.56,-1963.3 883.68,-1981.6"/>
<polygon fill="#000000" stroke="#000000" points="883.4687,-1985.1095 893.89,-1983.2 884.5525,-1978.1939 883.4687,-1985.1095"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node112" class="node">
<title>zcash/halo2#78</title>
<g id="a_node112"><a xlink:href="https://github.com/zcash/halo2/issues/78" xlink:title="zcash/halo2#78&#10;Implement algebraic hash&#10;/ random oracle&#10;abstraction gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1426.5,-2196 1222.5,-2196 1222.5,-2128 1426.5,-2128 1426.5,-2196"/>
<text text-anchor="middle" x="1324.5" y="-2180.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="1324.5" y="-2165.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="1324.5" y="-2150.8" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="1324.5" y="-2135.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#75 -->
<g id="edge129" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1426.6,-2186.9C1443.7,-2192.2 1461,-2198.2 1477,-2205 1494.1,-2212.2 1495.2,-2220.8 1513,-2226 1644.9,-2264.5 1805,-2262.7 1906.4,-2255.9"/>
<polygon fill="#000000" stroke="#000000" points="1906.8631,-2259.3765 1916.6,-2255.2 1906.3838,-2252.393 1906.8631,-2259.3765"/>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#79 -->
<g id="edge130" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1426.6,-2151.3C1446.1,-2144.6 1464.3,-2134.1 1477,-2118 1535,-2044.2 1456.3,-1348.8 1513,-1274 1528.1,-1254.1 1551.3,-1242 1575.1,-1234.7"/>
<polygon fill="#000000" stroke="#000000" points="1576.33,-1237.9895 1585,-1231.9 1574.4249,-1231.2537 1576.33,-1237.9895"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node113" class="node">
<title>zcash/halo2#250</title>
<g id="a_node113"><a xlink:href="https://github.com/zcash/halo2/issues/250" xlink:title="zcash/halo2#250&#10;Implement the recursive&#10;verifier circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1762.5,-2403.5 1568.5,-2403.5 1568.5,-2350.5 1762.5,-2350.5 1762.5,-2403.5"/>
<text text-anchor="middle" x="1665.5" y="-2388.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="1665.5" y="-2373.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="1665.5" y="-2358.3" font-family="Times,serif" font-size="14.00" fill="#000000">verifier circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#250 -->
<g id="edge131" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.8,-2179.9C1444.6,-2186 1462.1,-2194.1 1477,-2205 1500.6,-2222.3 1493.1,-2238.6 1513,-2260 1543.2,-2292.5 1583.2,-2322.8 1614.6,-2344.5"/>
<polygon fill="#000000" stroke="#000000" points="1612.9523,-2347.6103 1623.2,-2350.3 1616.8663,-2341.8068 1612.9523,-2347.6103"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge132" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1734.5,-2350.5C1790.5,-2329 1869.3,-2298.7 1927.7,-2276.3"/>
<polygon fill="#000000" stroke="#000000" points="1929.2278,-2279.4622 1937.3,-2272.6 1926.7103,-2272.9305 1929.2278,-2279.4622"/>
</g>
<!-- zcash/halo2#77 -->
<g id="node114" class="node">
<title>zcash/halo2#77</title>
<g id="a_node114"><a xlink:href="https://github.com/zcash/halo2/issues/77" xlink:title="zcash/halo2#77&#10;Implement Rescue gadget" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1427,-1366 1222,-1366 1222,-1328 1427,-1328 1427,-1366"/>
<text text-anchor="middle" x="1324.5" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#77</text>
<text text-anchor="middle" x="1324.5" y="-1335.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Rescue gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#77&#45;&gt;zcash/halo2#79 -->
<g id="edge133" class="edge">
<title>zcash/halo2#77&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1427.4,-1337.6C1444.7,-1333.2 1461.9,-1327 1477,-1318 1498.7,-1305.1 1492.2,-1288.3 1513,-1274 1531.5,-1261.3 1553.5,-1251.6 1575,-1244.4"/>
<polygon fill="#000000" stroke="#000000" points="1576.3,-1247.6568 1584.7,-1241.2 1574.1069,-1241.0092 1576.3,-1247.6568"/>
</g>
<!-- zcash/halo2#248 -->
<g id="node115" class="node">
<title>zcash/halo2#248</title>
<g id="a_node115"><a xlink:href="https://github.com/zcash/halo2/issues/248" xlink:title="zcash/halo2#248&#10;Implement endoscaling in&#10;the circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1426,-2525.5 1223,-2525.5 1223,-2472.5 1426,-2472.5 1426,-2525.5"/>
<text text-anchor="middle" x="1324.5" y="-2510.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="1324.5" y="-2495.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="1324.5" y="-2480.3" font-family="Times,serif" font-size="14.00" fill="#000000">the circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#248&#45;&gt;zcash/halo2#250 -->
<g id="edge134" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.2,-2477.9C1443.3,-2473.6 1460.8,-2468.6 1477,-2463 1521.2,-2447.9 1569.1,-2425.9 1605.6,-2408"/>
<polygon fill="#000000" stroke="#000000" points="1607.221,-2411.1027 1614.6,-2403.5 1604.0905,-2404.8417 1607.221,-2411.1027"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node116" class="node">
<title>zcash/halo2#249</title>
<g id="a_node116"><a xlink:href="https://github.com/zcash/halo2/issues/249" xlink:title="zcash/halo2#249&#10;Implement circuit logic&#10;for handling public&#10;inputs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1417,-2454 1232,-2454 1232,-2386 1417,-2386 1417,-2454"/>
<text text-anchor="middle" x="1324.5" y="-2438.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="1324.5" y="-2423.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="1324.5" y="-2408.8" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="1324.5" y="-2393.8" font-family="Times,serif" font-size="14.00" fill="#000000">inputs</text>
</a>
</g>
</g>
<!-- zcash/halo2#249&#45;&gt;zcash/halo2#250 -->
<g id="edge135" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1417.2,-2408.3C1460.8,-2402.8 1512.9,-2396.2 1558.2,-2390.5"/>
<polygon fill="#000000" stroke="#000000" points="1558.7828,-2393.9555 1568.3,-2389.3 1557.9569,-2387.0044 1558.7828,-2393.9555"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node117" class="node">
<title>zcash/halo2#246</title>
<g id="a_node117"><a xlink:href="https://github.com/zcash/halo2/issues/246" xlink:title="zcash/halo2#246&#10;Create recursive proof&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1073,-2360.5 894,-2360.5 894,-2307.5 1073,-2307.5 1073,-2360.5"/>
<text text-anchor="middle" x="983.5" y="-2345.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="983.5" y="-2330.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="983.5" y="-2315.3" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node118" class="node">
<title>zcash/halo2#247</title>
<g id="a_node118"><a xlink:href="https://github.com/zcash/halo2/issues/247" xlink:title="zcash/halo2#247&#10;Implement underlying&#10;scaffolding for the&#10;recursive circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1412.5,-2368 1236.5,-2368 1236.5,-2300 1412.5,-2300 1412.5,-2368"/>
<text text-anchor="middle" x="1324.5" y="-2352.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="1324.5" y="-2337.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="1324.5" y="-2322.8" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="1324.5" y="-2307.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursive circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#246&#45;&gt;zcash/halo2#247 -->
<g id="edge136" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M1073.1,-2334C1120.2,-2334 1177.9,-2334 1226.2,-2334"/>
<polygon fill="#000000" stroke="#000000" points="1226.4,-2337.5001 1236.4,-2334 1226.4,-2330.5001 1226.4,-2337.5001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge137" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1412.8,-2345.1C1457.2,-2350.7 1511.3,-2357.6 1558.1,-2363.5"/>
<polygon fill="#000000" stroke="#000000" points="1557.9595,-2367.0075 1568.3,-2364.7 1558.7775,-2360.0555 1557.9595,-2367.0075"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node119" class="node">
<title>zcash/halo2#245</title>
<g id="a_node119"><a xlink:href="https://github.com/zcash/halo2/issues/245" xlink:title="zcash/halo2#245&#10;Remove the need to&#10;multiply by powers of x^n&#10;in verifier" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1427.5,-2282 1221.5,-2282 1221.5,-2214 1427.5,-2214 1427.5,-2282"/>
<text text-anchor="middle" x="1324.5" y="-2266.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="1324.5" y="-2251.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="1324.5" y="-2236.8" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="1324.5" y="-2221.8" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge138" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1427.7,-2274.8C1444.3,-2279.8 1461.2,-2285.2 1477,-2291 1520.3,-2306.9 1567.5,-2328.4 1603.8,-2345.9"/>
<polygon fill="#000000" stroke="#000000" points="1602.2789,-2349.0522 1612.8,-2350.3 1605.3534,-2342.7635 1602.2789,-2349.0522"/>
</g>
<!-- zcash/halo2#151 -->
<g id="node120" class="node">
<title>zcash/halo2#151</title>
<g id="a_node120"><a xlink:href="https://github.com/zcash/halo2/issues/151" xlink:title="zcash/halo2#151&#10;Add support for full&#45;&#10;field challenge space" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1408,-2683.5 1241,-2683.5 1241,-2630.5 1408,-2630.5 1408,-2683.5"/>
<text text-anchor="middle" x="1324.5" y="-2668.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#151</text>
<text text-anchor="middle" x="1324.5" y="-2653.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for full&#45;</text>
<text text-anchor="middle" x="1324.5" y="-2638.3" font-family="Times,serif" font-size="14.00" fill="#000000">field challenge space</text>
</a>
</g>
</g>
<!-- zcash/halo2#151&#45;&gt;zcash/halo2#250 -->
<g id="edge139" class="edge">
<title>zcash/halo2#151&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1408.1,-2647.9C1431.7,-2642.6 1456.5,-2634.2 1477,-2621 1558.9,-2568.2 1619.7,-2467.1 1647.9,-2413.1"/>
<polygon fill="#000000" stroke="#000000" points="1651.1674,-2414.3975 1652.6,-2403.9 1644.9337,-2411.2129 1651.1674,-2414.3975"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node121" class="node">
<title>zcash/halo2#210</title>
<g id="a_node121"><a xlink:href="https://github.com/zcash/halo2/issues/210" xlink:title="zcash/halo2#210&#10;Make multiopen&#10;point_index_map dependent&#10;only on the rotation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1433.5,-2612 1215.5,-2612 1215.5,-2544 1433.5,-2544 1433.5,-2612"/>
<text text-anchor="middle" x="1324.5" y="-2596.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="1324.5" y="-2581.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="1324.5" y="-2566.8" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="1324.5" y="-2551.8" font-family="Times,serif" font-size="14.00" fill="#000000">only on the rotation</text>
</a>
</g>
</g>
<!-- zcash/halo2#210&#45;&gt;zcash/halo2#250 -->
<g id="edge140" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1433.7,-2552.5C1448.7,-2547.3 1463.5,-2541.2 1477,-2534 1538.5,-2501.4 1598.3,-2446.5 1633.5,-2411"/>
<polygon fill="#000000" stroke="#000000" points="1636.1368,-2413.3089 1640.6,-2403.7 1631.1188,-2408.4283 1636.1368,-2413.3089"/>
</g>
<!-- zcash/orchard#29 -->
<g id="node122" class="node">
<title>zcash/orchard#29</title>
<g id="a_node122"><a xlink:href="https://github.com/zcash/orchard/issues/29" xlink:title="zcash/orchard#29&#10;Implement Orchard key&#10;structure" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1760,-571.5 1571,-571.5 1571,-518.5 1760,-518.5 1760,-571.5"/>
<text text-anchor="middle" x="1665.5" y="-556.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#29</text>
<text text-anchor="middle" x="1665.5" y="-541.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-526.3" font-family="Times,serif" font-size="14.00" fill="#000000">structure</text>
</a>
</g>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#35 -->
<g id="edge141" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1760.2,-549.23C1781.8,-554.56 1802.8,-563.94 1818,-580 1882,-647.43 1786.7,-721.91 1854,-786 1903.5,-833.1 2093.8,-803.63 2159,-824 2191.7,-834.2 2225.7,-851.66 2252.4,-867.17"/>
<polygon fill="#000000" stroke="#000000" points="2250.8049,-870.2922 2261.2,-872.34 2254.3508,-864.2567 2250.8049,-870.2922"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#36 -->
<g id="edge142" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#36</title>
<path fill="none" stroke="#000000" d="M1760,-536.41C1803.3,-532.47 1854.7,-527.8 1899.4,-523.74"/>
<polygon fill="#000000" stroke="#000000" points="1899.7584,-527.2219 1909.4,-522.83 1899.1239,-520.2507 1899.7584,-527.2219"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#30 -->
<g id="edge143" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#30</title>
<path fill="none" stroke="#000000" d="M1760.4,-555.99C1780.5,-561.19 1800.8,-568.82 1818,-580 1840.4,-594.53 1831.7,-613.4 1854,-628 1870.8,-639.02 1890.7,-646.68 1910.4,-652"/>
<polygon fill="#000000" stroke="#000000" points="1909.8497,-655.4701 1920.4,-654.5 1911.5475,-648.6791 1909.8497,-655.4701"/>
</g>
<!-- zcash/orchard#27 -->
<g id="node123" class="node">
<title>zcash/orchard#27</title>
<g id="a_node123"><a xlink:href="https://github.com/zcash/orchard/pull/27" xlink:title="zcash/orchard#27&#10;Make Bundle a parametric&#10;type over an&#10;Authorization trait" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1769.5,-927 1561.5,-927 1561.5,-923 1557.5,-923 1557.5,-919 1561.5,-919 1561.5,-867 1557.5,-867 1557.5,-863 1561.5,-863 1561.5,-859 1769.5,-859 1769.5,-927"/>
<polyline fill="none" stroke="#000000" points="1561.5,-923 1565.5,-923 1565.5,-919 1561.5,-919 "/>
<polyline fill="none" stroke="#000000" points="1561.5,-867 1565.5,-867 1565.5,-863 1561.5,-863 "/>
<text text-anchor="middle" x="1665.5" y="-911.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#27</text>
<text text-anchor="middle" x="1665.5" y="-896.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make Bundle a parametric</text>
<text text-anchor="middle" x="1665.5" y="-881.8" font-family="Times,serif" font-size="14.00" fill="#000000">type over an</text>
<text text-anchor="middle" x="1665.5" y="-866.8" font-family="Times,serif" font-size="14.00" fill="#000000">Authorization trait</text>
</a>
</g>
</g>
<!-- zcash/orchard#27&#45;&gt;zcash/orchard#35 -->
<g id="edge144" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1769.6,-893.98C1891.8,-895.13 2092.6,-897.02 2209.7,-898.13"/>
<polygon fill="#000000" stroke="#000000" points="2209.6689,-901.6298 2219.7,-898.22 2209.7319,-894.63 2209.6689,-901.6298"/>
</g>
<!-- zcash/orchard#27&#45;&gt;zcash/orchard#34 -->
<g id="edge145" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#34</title>
<path fill="none" stroke="#000000" d="M1769.8,-909.08C1787.3,-915.34 1804.2,-924 1818,-936 1825.9,-942.83 1942.1,-1213.3 1988,-1320.7"/>
<polygon fill="#000000" stroke="#000000" points="1984.8336,-1322.1966 1992,-1330 1991.264,-1319.4307 1984.8336,-1322.1966"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node124" class="node">
<title>zcash/orchard#38</title>
<g id="a_node124"><a xlink:href="https://github.com/zcash/orchard/issues/38" xlink:title="zcash/orchard#38&#10;Implement generic ECC&#10;gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1761,-1336.5 1570,-1336.5 1570,-1283.5 1761,-1283.5 1761,-1336.5"/>
<text text-anchor="middle" x="1665.5" y="-1321.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="1665.5" y="-1306.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="1665.5" y="-1291.3" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/orchard#4 -->
<g id="edge146" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1761.4,-1320.3C1781.4,-1325.7 1801.5,-1333.8 1818,-1346 1843.3,-1364.7 1830.1,-1386.5 1854,-1407 1870.3,-1421 1890.3,-1432.1 1910.4,-1440.7"/>
<polygon fill="#000000" stroke="#000000" points="1909.32,-1444.04 1919.9,-1444.6 1911.9784,-1437.5645 1909.32,-1444.04"/>
</g>
<!-- zcash/orchard#55 -->
<g id="node125" class="node">
<title>zcash/orchard#55</title>
<g id="a_node125"><a xlink:href="https://github.com/zcash/orchard/issues/55" xlink:title="zcash/orchard#55&#10;Handle the (negligible&#10;probability of) failure&#10;of SinsemillaShortCommit" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1768.5,-2052 1562.5,-2052 1562.5,-1984 1768.5,-1984 1768.5,-2052"/>
<text text-anchor="middle" x="1665.5" y="-2036.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#55</text>
<text text-anchor="middle" x="1665.5" y="-2021.8" font-family="Times,serif" font-size="14.00" fill="#000000">Handle the (negligible</text>
<text text-anchor="middle" x="1665.5" y="-2006.8" font-family="Times,serif" font-size="14.00" fill="#000000">probability of) failure</text>
<text text-anchor="middle" x="1665.5" y="-1991.8" font-family="Times,serif" font-size="14.00" fill="#000000">of SinsemillaShortCommit</text>
</a>
</g>
</g>
<!-- zcash/orchard#55&#45;&gt;zcash/orchard#33 -->
<g id="edge147" class="edge">
<title>zcash/orchard#55&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1768.7,-2001.1C1786.5,-1994.7 1803.8,-1986 1818,-1974 1846.2,-1950.1 1825.1,-1922.1 1854,-1899 1862.9,-1891.8 1873.1,-1886.1 1883.8,-1881.5"/>
<polygon fill="#000000" stroke="#000000" points="1885.3151,-1884.6636 1893.3,-1877.7 1882.7153,-1878.1643 1885.3151,-1884.6636"/>
</g>
<!-- zcash/orchard#70 -->
<g id="node126" class="node">
<title>zcash/orchard#70</title>
<g id="a_node126"><a xlink:href="https://github.com/zcash/orchard/pull/70" xlink:title="zcash/orchard#70&#10;Bundle APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1739.5,-699 1591.5,-699 1591.5,-695 1587.5,-695 1587.5,-691 1591.5,-691 1591.5,-669 1587.5,-669 1587.5,-665 1591.5,-665 1591.5,-661 1739.5,-661 1739.5,-699"/>
<polyline fill="none" stroke="#000000" points="1591.5,-695 1595.5,-695 1595.5,-691 1591.5,-691 "/>
<polyline fill="none" stroke="#000000" points="1591.5,-669 1595.5,-669 1595.5,-665 1591.5,-665 "/>
<text text-anchor="middle" x="1665.5" y="-683.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#70</text>
<text text-anchor="middle" x="1665.5" y="-668.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bundle APIs</text>
</a>
</g>
</g>
<!-- zcash/orchard#49 -->
<g id="node127" class="node">
<title>zcash/orchard#49</title>
<g id="a_node127"><a xlink:href="https://github.com/zcash/orchard/pull/49" xlink:title="zcash/orchard#49&#10;Bundle builder" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2080.5,-871 1932.5,-871 1932.5,-867 1928.5,-867 1928.5,-863 1932.5,-863 1932.5,-841 1928.5,-841 1928.5,-837 1932.5,-837 1932.5,-833 2080.5,-833 2080.5,-871"/>
<polyline fill="none" stroke="#000000" points="1932.5,-867 1936.5,-867 1936.5,-863 1932.5,-863 "/>
<polyline fill="none" stroke="#000000" points="1932.5,-841 1936.5,-841 1936.5,-837 1932.5,-837 "/>
<text text-anchor="middle" x="2006.5" y="-855.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#49</text>
<text text-anchor="middle" x="2006.5" y="-840.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bundle builder</text>
</a>
</g>
</g>
<!-- zcash/orchard#70&#45;&gt;zcash/orchard#49 -->
<g id="edge148" class="edge">
<title>zcash/orchard#70&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1739.9,-678.29C1767.3,-681.32 1796.7,-689.38 1818,-708 1857,-742.17 1815.5,-784.22 1854,-819 1872.6,-835.85 1897.8,-844.82 1922.3,-849.41"/>
<polygon fill="#000000" stroke="#000000" points="1921.8618,-852.8851 1932.3,-851.07 1923.0082,-845.9796 1921.8618,-852.8851"/>
</g>
<!-- zcash/orchard#49&#45;&gt;zcash/orchard#35 -->
<g id="edge149" class="edge">
<title>zcash/orchard#49&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2080.8,-863.8C2119.9,-870 2168.2,-877.67 2209.7,-884.26"/>
<polygon fill="#000000" stroke="#000000" points="2209.3737,-887.7521 2219.8,-885.87 2210.4757,-880.8394 2209.3737,-887.7521"/>
</g>
<!-- zcash/orchard#58 -->
<g id="node128" class="node">
<title>zcash/orchard#58</title>
<g id="a_node128"><a xlink:href="https://github.com/zcash/orchard/pull/58" xlink:title="zcash/orchard#58&#10;Proving and verifying&#10;keys, and placeholder&#10;proof logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1752,-841 1579,-841 1579,-837 1575,-837 1575,-833 1579,-833 1579,-781 1575,-781 1575,-777 1579,-777 1579,-773 1752,-773 1752,-841"/>
<polyline fill="none" stroke="#000000" points="1579,-837 1583,-837 1583,-833 1579,-833 "/>
<polyline fill="none" stroke="#000000" points="1579,-781 1583,-781 1583,-777 1579,-777 "/>
<text text-anchor="middle" x="1665.5" y="-825.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#58</text>
<text text-anchor="middle" x="1665.5" y="-810.8" font-family="Times,serif" font-size="14.00" fill="#000000">Proving and verifying</text>
<text text-anchor="middle" x="1665.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">keys, and placeholder</text>
<text text-anchor="middle" x="1665.5" y="-780.8" font-family="Times,serif" font-size="14.00" fill="#000000">proof logic</text>
</a>
</g>
</g>
<!-- zcash/orchard#58&#45;&gt;zcash/orchard#49 -->
<g id="edge150" class="edge">
<title>zcash/orchard#58&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1752.4,-818.47C1804.6,-825.36 1870.6,-834.07 1922.3,-840.89"/>
<polygon fill="#000000" stroke="#000000" points="1922.0265,-844.3843 1932.4,-842.23 1922.9472,-837.4451 1922.0265,-844.3843"/>
</g>
<!-- zcash/orchard#60 -->
<g id="node129" class="node">
<title>zcash/orchard#60</title>
<g id="a_node129"><a xlink:href="https://github.com/zcash/orchard/pull/60" xlink:title="zcash/orchard#60&#10;Dummy note generation" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1419.5,-826 1229.5,-826 1229.5,-822 1225.5,-822 1225.5,-818 1229.5,-818 1229.5,-796 1225.5,-796 1225.5,-792 1229.5,-792 1229.5,-788 1419.5,-788 1419.5,-826"/>
<polyline fill="none" stroke="#000000" points="1229.5,-822 1233.5,-822 1233.5,-818 1229.5,-818 "/>
<polyline fill="none" stroke="#000000" points="1229.5,-796 1233.5,-796 1233.5,-792 1229.5,-792 "/>
<text text-anchor="middle" x="1324.5" y="-810.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#60</text>
<text text-anchor="middle" x="1324.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">Dummy note generation</text>
</a>
</g>
</g>
<!-- zcash/orchard#60&#45;&gt;zcash/orchard#58 -->
<g id="edge151" class="edge">
<title>zcash/orchard#60&#45;&gt;zcash/orchard#58</title>
<path fill="none" stroke="#000000" d="M1419.9,-807C1466.4,-807 1522.1,-807 1568.7,-807"/>
<polygon fill="#000000" stroke="#000000" points="1568.8,-810.5001 1578.8,-807 1568.8,-803.5001 1568.8,-810.5001"/>
</g>
<!-- zcash/orchard#72 -->
<g id="node130" class="node">
<title>zcash/orchard#72</title>
<g id="a_node130"><a xlink:href="https://github.com/zcash/orchard/pull/72" xlink:title="zcash/orchard#72&#10;Builder preparations" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1748,-755 1583,-755 1583,-751 1579,-751 1579,-747 1583,-747 1583,-725 1579,-725 1579,-721 1583,-721 1583,-717 1748,-717 1748,-755"/>
<polyline fill="none" stroke="#000000" points="1583,-751 1587,-751 1587,-747 1583,-747 "/>
<polyline fill="none" stroke="#000000" points="1583,-725 1587,-725 1587,-721 1583,-721 "/>
<text text-anchor="middle" x="1665.5" y="-739.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#72</text>
<text text-anchor="middle" x="1665.5" y="-724.8" font-family="Times,serif" font-size="14.00" fill="#000000">Builder preparations</text>
</a>
</g>
</g>
<!-- zcash/orchard#72&#45;&gt;zcash/orchard#49 -->
<g id="edge152" class="edge">
<title>zcash/orchard#72&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1748.1,-738.94C1772.2,-742.91 1797.5,-750.37 1818,-764 1842.3,-780.17 1829.9,-802.45 1854,-819 1874,-832.76 1898.7,-840.93 1922.4,-845.74"/>
<polygon fill="#000000" stroke="#000000" points="1921.9286,-849.2123 1932.4,-847.6 1923.2087,-842.3303 1921.9286,-849.2123"/>
</g>
</g>
</svg>