developers/zcash-core-dag.svg

1310 lines
93 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="1838pt" height="2087pt"
viewBox="0.00 0.00 1838.00 2087.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2083)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2083 1834,-2083 1834,4 -4,4"/>
<!-- zcash/librustzcash#226 -->
<g id="node1" class="node">
<title>zcash/librustzcash#226</title>
<g id="a_node1"><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="246.5,-136.5 58.5,-136.5 58.5,-98.5 246.5,-98.5 246.5,-136.5"/>
<text text-anchor="middle" x="152.5" y="-121.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="152.5" y="-106.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bring in Bolt TZE</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#225 -->
<g id="node2" class="node">
<title>zcash/librustzcash#225</title>
<g id="a_node2"><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="550,-144 358,-144 358,-91 550,-91 550,-144"/>
<text text-anchor="middle" x="454" y="-128.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="454" y="-113.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="454" y="-98.8" 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="edge1" class="edge">
<title>zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225</title>
<path fill="none" stroke="#000000" d="M246.66,-117.5C278.76,-117.5 314.86,-117.5 347.84,-117.5"/>
<polygon fill="#000000" stroke="#000000" points="347.96,-121.0001 357.96,-117.5 347.96,-114.0001 347.96,-121.0001"/>
</g>
<!-- zcash/zcash#4190 -->
<g id="node3" class="node">
<title>zcash/zcash#4190</title>
<g id="a_node3"><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="245.5,-208 59.5,-208 59.5,-155 245.5,-155 245.5,-208"/>
<text text-anchor="middle" x="152.5" y="-192.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-177.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-162.8" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/orchard#4 -->
<g id="node4" class="node">
<title>zcash/orchard#4</title>
<g id="a_node4"><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="#a6cfff" stroke="#000000" points="797.5,-837 624.5,-837 624.5,-784 797.5,-784 797.5,-837"/>
<text text-anchor="middle" x="711" y="-821.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="711" y="-806.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="711" y="-791.8" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node5" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node5"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard&#10;consensus rules as an NU&#10;feature" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="1065.5,-722.5 862.5,-722.5 862.5,-654.5 1065.5,-654.5 1065.5,-722.5"/>
<text text-anchor="middle" x="964" y="-707.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="964" y="-692.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="964" y="-677.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules as an NU</text>
<text text-anchor="middle" x="964" y="-662.3" font-family="Times,serif" font-size="14.00" fill="#000000">feature</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge2" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M797.68,-786.49C805.16,-782.99 812.38,-779 819,-774.5 839.6,-760.47 834.78,-746.08 855,-731.5 856.64,-730.32 858.32,-729.16 860.02,-728.03"/>
<polygon fill="#000000" stroke="#000000" points="862.1293,-730.8412 868.8,-722.61 858.4522,-724.8847 862.1293,-730.8412"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node6" class="node">
<title>zcash/orchard#35</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/orchard/issues/35" xlink:title="zcash/orchard#35&#10;Transaction building&#10;support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1046.5,-951 881.5,-951 881.5,-898 1046.5,-898 1046.5,-951"/>
<text text-anchor="middle" x="964" y="-935.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="964" y="-920.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="964" y="-905.8" 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="edge3" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M774.79,-837.11C789.64,-844.09 805.15,-852.06 819,-860.5 836.31,-871.05 837.12,-878.96 855,-888.5 860.48,-891.42 866.24,-894.17 872.14,-896.74"/>
<polygon fill="#000000" stroke="#000000" points="870.9122,-900.0198 881.49,-900.62 873.5952,-893.5544 870.9122,-900.0198"/>
</g>
<!-- zcash/zcash#5195 -->
<g id="node7" class="node">
<title>zcash/zcash#5195</title>
<g id="a_node7"><a xlink:href="https://github.com/zcash/zcash/issues/5195" xlink:title="zcash/zcash#5195&#10;Implement Orchard proof&#10;verification consensus&#10;rule" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1064.5,-808.5 863.5,-808.5 863.5,-740.5 1064.5,-740.5 1064.5,-808.5"/>
<text text-anchor="middle" x="964" y="-793.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5195</text>
<text text-anchor="middle" x="964" y="-778.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard proof</text>
<text text-anchor="middle" x="964" y="-763.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification consensus</text>
<text text-anchor="middle" x="964" y="-748.3" font-family="Times,serif" font-size="14.00" fill="#000000">rule</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/zcash#5195 -->
<g id="edge4" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M797.71,-798.16C815.66,-795.61 834.79,-792.89 853.46,-790.23"/>
<polygon fill="#000000" stroke="#000000" points="854.0607,-793.6799 863.47,-788.81 853.0775,-786.7493 854.0607,-793.6799"/>
</g>
<!-- zcash/zcash#5024 -->
<g id="node8" class="node">
<title>zcash/zcash#5024</title>
<g id="a_node8"><a xlink:href="https://github.com/zcash/zcash/issues/5024" xlink:title="zcash/zcash#5024&#10;Implement NU5 consensus&#10;rules" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="1322.5,-801 1110.5,-801 1110.5,-748 1322.5,-748 1322.5,-801"/>
<text text-anchor="middle" x="1216.5" y="-785.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1216.5" y="-770.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 consensus</text>
<text text-anchor="middle" x="1216.5" y="-755.8" font-family="Times,serif" font-size="14.00" fill="#000000">rules</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#320&#45;&gt;zcash/zcash#5024 -->
<g id="edge5" class="edge">
<title>zcash/librustzcash#320&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1064.2,-722.61C1085.6,-729.93 1108.2,-737.61 1129.2,-744.75"/>
<polygon fill="#000000" stroke="#000000" points="1128.1055,-748.0746 1138.7,-747.99 1130.3651,-741.4493 1128.1055,-748.0746"/>
</g>
<!-- zcash/zcash#5021 -->
<g id="node9" class="node">
<title>zcash/zcash#5021</title>
<g id="a_node9"><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="1310.5,-876 1122.5,-876 1122.5,-823 1310.5,-823 1310.5,-876"/>
<text text-anchor="middle" x="1216.5" y="-860.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1216.5" y="-845.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1216.5" y="-830.8" 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="edge6" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M1046.7,-899.94C1069.3,-893.22 1094.1,-885.87 1117.5,-878.91"/>
<polygon fill="#000000" stroke="#000000" points="1118.5156,-882.2595 1127.1,-876.05 1116.5169,-875.5509 1118.5156,-882.2595"/>
</g>
<!-- zcash/librustzcash#406 -->
<g id="node10" class="node">
<title>zcash/librustzcash#406</title>
<g id="a_node10"><a xlink:href="https://github.com/zcash/librustzcash/issues/406" xlink:title="zcash/librustzcash#406&#10;Add Orchard support to&#10;the transaction builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1310.5,-951 1122.5,-951 1122.5,-898 1310.5,-898 1310.5,-951"/>
<text text-anchor="middle" x="1216.5" y="-935.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#406</text>
<text text-anchor="middle" x="1216.5" y="-920.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1216.5" y="-905.8" font-family="Times,serif" font-size="14.00" fill="#000000">the transaction builder</text>
</a>
</g>
</g>
<!-- zcash/orchard#35&#45;&gt;zcash/librustzcash#406 -->
<g id="edge7" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/librustzcash#406</title>
<path fill="none" stroke="#000000" d="M1046.7,-924.5C1067.5,-924.5 1090.2,-924.5 1112,-924.5"/>
<polygon fill="#000000" stroke="#000000" points="1112.3,-928.0001 1122.3,-924.5 1112.3,-921.0001 1112.3,-928.0001"/>
</g>
<!-- zcash/zcash#5195&#45;&gt;zcash/zcash#5024 -->
<g id="edge8" class="edge">
<title>zcash/zcash#5195&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1064.5,-774.5C1076.1,-774.5 1088,-774.5 1099.8,-774.5"/>
<polygon fill="#000000" stroke="#000000" points="1100.1,-778.0001 1110.1,-774.5 1100.1,-771.0001 1100.1,-778.0001"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node11" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node11"><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="1572,-502.5 1363,-502.5 1363,-434.5 1572,-434.5 1572,-502.5"/>
<text text-anchor="middle" x="1467.5" y="-487.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1467.5" y="-472.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1467.5" y="-457.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1467.5" y="-442.3" 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="edge9" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1310.3,-822.71C1315.4,-818.88 1320.1,-814.5 1324,-809.5 1406.6,-704.72 1278.7,-617.28 1360,-511.5 1360.4,-511 1360.8,-510.51 1361.2,-510.02"/>
<polygon fill="#000000" stroke="#000000" points="1363.8336,-512.3279 1368.1,-502.63 1358.7171,-507.5506 1363.8336,-512.3279"/>
</g>
<!-- zcash/librustzcash#403 -->
<g id="node12" class="node">
<title>zcash/librustzcash#403</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/librustzcash/issues/403" xlink:title="zcash/librustzcash#403&#10;Add Orchard support to&#10;`zcash_client_backend`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1561.5,-951 1373.5,-951 1373.5,-898 1561.5,-898 1561.5,-951"/>
<text text-anchor="middle" x="1467.5" y="-935.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#403</text>
<text text-anchor="middle" x="1467.5" y="-920.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1467.5" y="-905.8" font-family="Times,serif" font-size="14.00" fill="#000000">`zcash_client_backend`</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#406&#45;&gt;zcash/librustzcash#403 -->
<g id="edge10" class="edge">
<title>zcash/librustzcash#406&#45;&gt;zcash/librustzcash#403</title>
<path fill="none" stroke="#000000" d="M1310.7,-924.5C1327.8,-924.5 1345.7,-924.5 1363.1,-924.5"/>
<polygon fill="#000000" stroke="#000000" points="1363.2,-928.0001 1373.2,-924.5 1363.2,-921.0001 1363.2,-928.0001"/>
</g>
<!-- zcash/librustzcash#404 -->
<g id="node19" class="node">
<title>zcash/librustzcash#404</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/librustzcash/issues/404" xlink:title="zcash/librustzcash#404&#10;Add Orchard support to&#10;`zcash_client_sqlite`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1814.5,-951 1626.5,-951 1626.5,-898 1814.5,-898 1814.5,-951"/>
<text text-anchor="middle" x="1720.5" y="-935.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#404</text>
<text text-anchor="middle" x="1720.5" y="-920.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1720.5" y="-905.8" font-family="Times,serif" font-size="14.00" fill="#000000">`zcash_client_sqlite`</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#403&#45;&gt;zcash/librustzcash#404 -->
<g id="edge16" class="edge">
<title>zcash/librustzcash#403&#45;&gt;zcash/librustzcash#404</title>
<path fill="none" stroke="#000000" d="M1561.7,-924.5C1579.4,-924.5 1598,-924.5 1616,-924.5"/>
<polygon fill="#000000" stroke="#000000" points="1616.2,-928.0001 1626.2,-924.5 1616.2,-921.0001 1616.2,-928.0001"/>
</g>
<!-- zcash/zcash#4707 -->
<g id="node13" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node13"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="795.5,-766 626.5,-766 626.5,-713 795.5,-713 795.5,-766"/>
<text text-anchor="middle" x="711" y="-750.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="711" y="-735.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="711" y="-720.8" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge11" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M795.6,-722.45C813.82,-718.77 833.36,-714.83 852.43,-710.99"/>
<polygon fill="#000000" stroke="#000000" points="853.2479,-714.3956 862.36,-708.99 851.8658,-707.5334 853.2479,-714.3956"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node14" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node14"><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="250,-998 55,-998 55,-945 250,-945 250,-998"/>
<text text-anchor="middle" x="152.5" y="-982.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-967.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-952.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/orchard#33 -->
<g id="node15" class="node">
<title>zcash/orchard#33</title>
<g id="a_node15"><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="#fad8c7" stroke="#000000" points="567,-938 341,-938 341,-885 567,-885 567,-938"/>
<text text-anchor="middle" x="454" y="-922.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="454" y="-907.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="454" y="-892.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node16" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node16"><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="#fad8c7" stroke="#000000" points="797,-953 625,-953 625,-870 797,-870 797,-953"/>
<text text-anchor="middle" x="711" y="-937.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="711" y="-922.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="711" y="-907.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="711" y="-892.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="711" y="-877.8" 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="edge12" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M567.1,-911.5C583.01,-911.5 599.23,-911.5 614.79,-911.5"/>
<polygon fill="#000000" stroke="#000000" points="614.9,-915.0001 624.9,-911.5 614.9,-908.0001 614.9,-915.0001"/>
</g>
<!-- zcash/zcash#5197 -->
<g id="node17" class="node">
<title>zcash/zcash#5197</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/zcash/issues/5197" xlink:title="zcash/zcash#5197&#10;Implement NU5 block&#10;consensus rules" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="1052,-880 876,-880 876,-827 1052,-827 1052,-880"/>
<text text-anchor="middle" x="964" y="-864.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5197</text>
<text text-anchor="middle" x="964" y="-849.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 block</text>
<text text-anchor="middle" x="964" y="-834.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5197 -->
<g id="edge13" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M797.01,-891.78C819.09,-886.72 843.02,-881.23 865.68,-876.04"/>
<polygon fill="#000000" stroke="#000000" points="866.6819,-879.4013 875.65,-873.76 865.1214,-872.5775 866.6819,-879.4013"/>
</g>
<!-- zcash/zcash#5240 -->
<g id="node18" class="node">
<title>zcash/zcash#5240</title>
<g id="a_node18"><a xlink:href="https://github.com/zcash/zcash/issues/5240" xlink:title="zcash/zcash#5240&#10;Add an Orchard nullifier&#10;test to `coins_tests`" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1060,-1022 868,-1022 868,-969 1060,-969 1060,-1022"/>
<text text-anchor="middle" x="964" y="-1006.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5240</text>
<text text-anchor="middle" x="964" y="-991.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add an Orchard nullifier</text>
<text text-anchor="middle" x="964" y="-976.8" font-family="Times,serif" font-size="14.00" fill="#000000">test to `coins_tests`</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5240 -->
<g id="edge14" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5240</title>
<path fill="none" stroke="#000000" d="M797.03,-940.22C816.11,-946.58 836.24,-953.28 855,-959.5 861.23,-961.57 867.66,-963.7 874.13,-965.84"/>
<polygon fill="#000000" stroke="#000000" points="873.0368,-969.1648 883.63,-968.98 875.2336,-962.5185 873.0368,-969.1648"/>
</g>
<!-- zcash/zcash#5197&#45;&gt;zcash/zcash#5024 -->
<g id="edge15" class="edge">
<title>zcash/zcash#5197&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1048.8,-826.97C1072.2,-819.65 1097.8,-811.65 1121.7,-804.16"/>
<polygon fill="#000000" stroke="#000000" points="1123.0036,-807.4194 1131.5,-801.09 1120.911,-800.7395 1123.0036,-807.4194"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node20" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node20"><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="1308,-326 1125,-326 1125,-273 1308,-273 1308,-326"/>
<text text-anchor="middle" x="1216.5" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="1216.5" y="-295.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="1216.5" y="-280.8" 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="edge17" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1308.1,-323.55C1313.8,-327.01 1319.2,-330.97 1324,-335.5 1355.3,-365.08 1329.5,-395.04 1360,-425.5 1360.8,-426.28 1361.6,-427.05 1362.4,-427.8"/>
<polygon fill="#000000" stroke="#000000" points="1360.1838,-430.5092 1370.1,-434.24 1364.6747,-425.1396 1360.1838,-430.5092"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node21" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node21"><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="1563.5,-330.5 1371.5,-330.5 1371.5,-262.5 1563.5,-262.5 1563.5,-330.5"/>
<text text-anchor="middle" x="1467.5" y="-315.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1467.5" y="-300.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1467.5" y="-285.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1467.5" y="-270.3" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5020 -->
<g id="edge18" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M1308.2,-298.4C1325.4,-298.2 1343.5,-297.98 1361.1,-297.77"/>
<polygon fill="#000000" stroke="#000000" points="1361.4415,-301.2664 1371.4,-297.65 1361.3599,-294.2668 1361.4415,-301.2664"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node22" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node22"><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="1568.5,-416.5 1366.5,-416.5 1366.5,-348.5 1568.5,-348.5 1568.5,-416.5"/>
<text text-anchor="middle" x="1467.5" y="-401.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1467.5" y="-386.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1467.5" y="-371.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1467.5" y="-356.3" 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="edge19" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1297,-326.1C1316,-332.41 1336.7,-339.24 1356.8,-345.9"/>
<polygon fill="#000000" stroke="#000000" points="1355.7066,-349.2248 1366.3,-349.05 1357.9098,-342.5805 1355.7066,-349.2248"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node23" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node23"><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="1830,-251.5 1611,-251.5 1611,-213.5 1830,-213.5 1830,-251.5"/>
<text text-anchor="middle" x="1720.5" y="-236.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1720.5" y="-221.3" 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="edge20" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1564.2,-348.41C1568,-345.66 1571.7,-342.69 1575,-339.5 1602.9,-312.87 1581.4,-285.26 1611,-260.5 1612.4,-259.35 1613.8,-258.25 1615.2,-257.2"/>
<polygon fill="#000000" stroke="#000000" points="1617.3721,-259.9649 1623.9,-251.62 1613.593,-254.0727 1617.3721,-259.9649"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node24" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node24"><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="1814,-409 1627,-409 1627,-356 1814,-356 1814,-409"/>
<text text-anchor="middle" x="1720.5" y="-393.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1720.5" y="-378.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-363.8" 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="edge21" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1568.6,-382.5C1584.4,-382.5 1600.7,-382.5 1616.6,-382.5"/>
<polygon fill="#000000" stroke="#000000" points="1617,-386.0001 1627,-382.5 1617,-379.0001 1617,-386.0001"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node25" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/zcash/issues/5185" xlink:title="zcash/zcash#5185&#10;Add support for funding&#10;z_sendmany from a UA&#10;account" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1815,-337.5 1626,-337.5 1626,-269.5 1815,-269.5 1815,-337.5"/>
<text text-anchor="middle" x="1720.5" y="-322.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1720.5" y="-307.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1720.5" y="-292.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="1720.5" y="-277.3" font-family="Times,serif" font-size="14.00" fill="#000000">account</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5185 -->
<g id="edge22" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1568.6,-350.94C1584.2,-346.06 1600.4,-341.02 1616,-336.12"/>
<polygon fill="#000000" stroke="#000000" points="1617.1984,-339.4125 1625.7,-333.09 1615.1113,-332.7309 1617.1984,-339.4125"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node26" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node26"><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="1814.5,-551 1626.5,-551 1626.5,-498 1814.5,-498 1814.5,-551"/>
<text text-anchor="middle" x="1720.5" y="-535.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1720.5" y="-520.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-505.8" 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="edge23" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M1563.4,-416.63C1567.5,-419.38 1571.4,-422.33 1575,-425.5 1599.3,-446.67 1586,-468.11 1611,-488.5 1613.1,-490.19 1615.2,-491.8 1617.4,-493.33"/>
<polygon fill="#000000" stroke="#000000" points="1615.9664,-496.5617 1626.3,-498.9 1619.68,-490.628 1615.9664,-496.5617"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node27" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/zcash/issues/5183" xlink:title="zcash/zcash#5183&#10;New RPC:&#10;z_getbalanceforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1814.5,-480 1626.5,-480 1626.5,-427 1814.5,-427 1814.5,-480"/>
<text text-anchor="middle" x="1720.5" y="-464.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1720.5" y="-449.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-434.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5183 -->
<g id="edge24" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5183</title>
<path fill="none" stroke="#000000" d="M1568.6,-410.87C1584.3,-415.28 1600.6,-419.85 1616.4,-424.28"/>
<polygon fill="#000000" stroke="#000000" points="1615.5251,-427.6698 1626.1,-427.02 1617.428,-420.9334 1615.5251,-427.6698"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node28" class="node">
<title>zcash/orchard#36</title>
<g id="a_node28"><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="#a6cfff" stroke="#000000" stroke-width="2" points="1061,-251.5 867,-251.5 867,-183.5 1061,-183.5 1061,-251.5"/>
<text text-anchor="middle" x="964" y="-236.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="964" y="-221.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="964" y="-206.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="964" y="-191.3" 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="edge25" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1061.3,-249.09C1082.3,-255.9 1104.4,-263.08 1125.1,-269.82"/>
<polygon fill="#000000" stroke="#000000" points="1124.3082,-273.2424 1134.9,-272.99 1126.4626,-266.5821 1124.3082,-273.2424"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node29" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node29"><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="#a6cfff" stroke="#000000" points="1310.5,-246.5 1122.5,-246.5 1122.5,-178.5 1310.5,-178.5 1310.5,-246.5"/>
<text text-anchor="middle" x="1216.5" y="-231.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="1216.5" y="-216.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="1216.5" y="-201.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="1216.5" y="-186.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge26" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M1061.3,-215.57C1077.8,-215.25 1095.1,-214.9 1111.8,-214.57"/>
<polygon fill="#000000" stroke="#000000" points="1112.2692,-218.0617 1122.2,-214.37 1112.1345,-211.063 1112.2692,-218.0617"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node30" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node30"><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="1575,-244.5 1360,-244.5 1360,-176.5 1575,-176.5 1575,-244.5"/>
<text text-anchor="middle" x="1467.5" y="-229.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1467.5" y="-214.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1467.5" y="-199.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1467.5" y="-184.3" 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="edge27" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M1310.7,-211.75C1323.3,-211.65 1336.4,-211.54 1349.3,-211.44"/>
<polygon fill="#000000" stroke="#000000" points="1349.7273,-214.9369 1359.7,-211.36 1349.6733,-207.9371 1349.7273,-214.9369"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge28" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1575.2,-219.86C1583.7,-220.6 1592.3,-221.35 1600.9,-222.1"/>
<polygon fill="#000000" stroke="#000000" points="1600.6342,-225.59 1610.9,-222.97 1601.241,-218.6164 1600.6342,-225.59"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge29" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1565,-244.72C1568.5,-247.43 1571.9,-250.36 1575,-253.5 1606.2,-285.02 1578.9,-315.98 1611,-346.5 1613.4,-348.77 1615.9,-350.9 1618.6,-352.9"/>
<polygon fill="#000000" stroke="#000000" points="1616.6505,-355.8068 1626.9,-358.49 1620.5609,-350.0008 1616.6505,-355.8068"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge30" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1560.3,-244.6C1579.1,-251.52 1599,-258.83 1618.1,-265.87"/>
<polygon fill="#000000" stroke="#000000" points="1617.1065,-269.2337 1627.7,-269.4 1619.5223,-262.6638 1617.1065,-269.2337"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node31" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node31"><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="1805.5,-53 1635.5,-53 1635.5,0 1805.5,0 1805.5,-53"/>
<text text-anchor="middle" x="1720.5" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="1720.5" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-7.8" 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="edge31" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M1492.1,-176.48C1518.1,-142.79 1562.1,-91.962 1611,-61.5 1615.8,-58.534 1620.8,-55.797 1626,-53.274"/>
<polygon fill="#000000" stroke="#000000" points="1627.8401,-56.2826 1635.5,-48.963 1624.9474,-49.9082 1627.8401,-56.2826"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node32" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/zcash/issues/5184" xlink:title="zcash/zcash#5184&#10;Add support for UA&#10;recipients to z_sendmany" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1820.5,-195 1620.5,-195 1620.5,-142 1820.5,-142 1820.5,-195"/>
<text text-anchor="middle" x="1720.5" y="-179.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="1720.5" y="-164.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="1720.5" y="-149.8" font-family="Times,serif" font-size="14.00" fill="#000000">recipients to z_sendmany</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5184 -->
<g id="edge32" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M1575.2,-192.63C1586.7,-190.71 1598.5,-188.76 1610,-186.84"/>
<polygon fill="#000000" stroke="#000000" points="1610.9018,-190.2387 1620.2,-185.16 1609.7641,-183.3318 1610.9018,-190.2387"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node33" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/zcash/issues/5191" xlink:title="zcash/zcash#5191&#10;z_getbalance: Return&#10;error if given a UA" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1805,-124 1636,-124 1636,-71 1805,-71 1805,-124"/>
<text text-anchor="middle" x="1720.5" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5191</text>
<text text-anchor="middle" x="1720.5" y="-93.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalance: Return</text>
<text text-anchor="middle" x="1720.5" y="-78.8" font-family="Times,serif" font-size="14.00" fill="#000000">error if given a UA</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5191 -->
<g id="edge33" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5191</title>
<path fill="none" stroke="#000000" d="M1524.2,-176.46C1550.1,-161.76 1581.5,-145.08 1611,-132.5 1616,-130.37 1621.2,-128.3 1626.4,-126.29"/>
<polygon fill="#000000" stroke="#000000" points="1627.7453,-129.524 1635.9,-122.76 1625.3071,-122.9623 1627.7453,-129.524"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node34" class="node">
<title>zcash/orchard#30</title>
<g id="a_node34"><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="#a6cfff" stroke="#000000" stroke-width="2" points="1050,-326 878,-326 878,-273 1050,-273 1050,-326"/>
<text text-anchor="middle" x="964" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="964" y="-295.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="964" y="-280.8" 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="edge34" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1050.2,-299.5C1070.9,-299.5 1093.2,-299.5 1114.6,-299.5"/>
<polygon fill="#000000" stroke="#000000" points="1114.7,-303.0001 1124.7,-299.5 1114.7,-296.0001 1114.7,-303.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node35" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node35"><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="252.5,-1072 52.5,-1072 52.5,-1068 48.5,-1068 48.5,-1064 52.5,-1064 52.5,-1027 48.5,-1027 48.5,-1023 52.5,-1023 52.5,-1019 252.5,-1019 252.5,-1072"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1068 56.5,-1068 56.5,-1064 52.5,-1064 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1027 56.5,-1027 56.5,-1023 52.5,-1023 "/>
<text text-anchor="middle" x="152.5" y="-1056.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1041.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.12 P2P/Net PRs</text>
<text text-anchor="middle" x="152.5" y="-1026.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node36" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node36"><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="560,-1121 348,-1121 348,-1117 344,-1117 344,-1113 348,-1113 348,-1076 344,-1076 344,-1072 348,-1072 348,-1068 560,-1068 560,-1121"/>
<polyline fill="none" stroke="#000000" points="348,-1117 352,-1117 352,-1113 348,-1113 "/>
<polyline fill="none" stroke="#000000" points="348,-1076 352,-1076 352,-1072 348,-1072 "/>
<text text-anchor="middle" x="454" y="-1105.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="454" y="-1090.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="454" y="-1075.8" 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="edge35" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.9,-1061.8C280.05,-1066.2 309.67,-1071 337.63,-1075.6"/>
<polygon fill="#000000" stroke="#000000" points="337.4187,-1079.1095 347.84,-1077.2 338.5025,-1072.1939 337.4187,-1079.1095"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node37" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node37"><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="806.5,-1044.5 615.5,-1044.5 615.5,-1040.5 611.5,-1040.5 611.5,-1036.5 615.5,-1036.5 615.5,-984.5 611.5,-984.5 611.5,-980.5 615.5,-980.5 615.5,-976.5 806.5,-976.5 806.5,-1044.5"/>
<polyline fill="none" stroke="#000000" points="615.5,-1040.5 619.5,-1040.5 619.5,-1036.5 615.5,-1036.5 "/>
<polyline fill="none" stroke="#000000" points="615.5,-984.5 619.5,-984.5 619.5,-980.5 615.5,-980.5 "/>
<text text-anchor="middle" x="711" y="-1029.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="711" y="-1014.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="711" y="-999.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="711" y="-984.3" 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="edge36" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.67,-1039.2C352.06,-1033 503.8,-1023.5 605.14,-1017.1"/>
<polygon fill="#000000" stroke="#000000" points="605.6116,-1020.5785 615.39,-1016.5 605.2025,-1013.5904 605.6116,-1020.5785"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node38" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node38"><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="798,-1146 624,-1146 624,-1142 620,-1142 620,-1138 624,-1138 624,-1071 620,-1071 620,-1067 624,-1067 624,-1063 798,-1063 798,-1146"/>
<polyline fill="none" stroke="#000000" points="624,-1142 628,-1142 628,-1138 624,-1138 "/>
<polyline fill="none" stroke="#000000" points="624,-1071 628,-1071 628,-1067 624,-1067 "/>
<text text-anchor="middle" x="711" y="-1130.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="711" y="-1115.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="711" y="-1100.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="711" y="-1085.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="711" y="-1070.8" 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="edge37" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M560.02,-1098.6C577.7,-1099.3 595.97,-1100 613.43,-1100.7"/>
<polygon fill="#000000" stroke="#000000" points="613.4803,-1104.2046 623.61,-1101.1 613.7552,-1097.21 613.4803,-1104.2046"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node39" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node39"><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="1073,-1103.5 855,-1103.5 855,-1099.5 851,-1099.5 851,-1095.5 855,-1095.5 855,-1073.5 851,-1073.5 851,-1069.5 855,-1069.5 855,-1065.5 1073,-1065.5 1073,-1103.5"/>
<polyline fill="none" stroke="#000000" points="855,-1099.5 859,-1099.5 859,-1095.5 855,-1095.5 "/>
<polyline fill="none" stroke="#000000" points="855,-1073.5 859,-1073.5 859,-1069.5 855,-1069.5 "/>
<text text-anchor="middle" x="964" y="-1088.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="964" y="-1073.3" 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="edge38" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M806.65,-1038.5C833.95,-1046.5 863.29,-1055 889.15,-1062.6"/>
<polygon fill="#000000" stroke="#000000" points="888.2969,-1065.9978 898.88,-1065.5 890.2963,-1059.2894 888.2969,-1065.9978"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge39" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M798.07,-1097.6C813.08,-1096.4 828.91,-1095.2 844.59,-1093.9"/>
<polygon fill="#000000" stroke="#000000" points="845.1717,-1097.3654 854.87,-1093.1 844.6286,-1090.3865 845.1717,-1097.3654"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node40" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node40"><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="1311,-1118.5 1122,-1118.5 1122,-1114.5 1118,-1114.5 1118,-1110.5 1122,-1110.5 1122,-1058.5 1118,-1058.5 1118,-1054.5 1122,-1054.5 1122,-1050.5 1311,-1050.5 1311,-1118.5"/>
<polyline fill="none" stroke="#000000" points="1122,-1114.5 1126,-1114.5 1126,-1110.5 1122,-1110.5 "/>
<polyline fill="none" stroke="#000000" points="1122,-1058.5 1126,-1058.5 1126,-1054.5 1122,-1054.5 "/>
<text text-anchor="middle" x="1216.5" y="-1103.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1216.5" y="-1088.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1216.5" y="-1073.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1216.5" y="-1058.3" 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="edge40" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1073.3,-1084.5C1086,-1084.5 1099,-1084.5 1111.6,-1084.5"/>
<polygon fill="#000000" stroke="#000000" points="1111.7,-1088.0001 1121.7,-1084.5 1111.7,-1081.0001 1111.7,-1088.0001"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node41" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node41"><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="249,-1202.5 56,-1202.5 56,-1198.5 52,-1198.5 52,-1194.5 56,-1194.5 56,-1172.5 52,-1172.5 52,-1168.5 56,-1168.5 56,-1164.5 249,-1164.5 249,-1202.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1198.5 60,-1198.5 60,-1194.5 56,-1194.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1172.5 60,-1172.5 60,-1168.5 56,-1168.5 "/>
<text text-anchor="middle" x="152.5" y="-1187.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-1172.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.17 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050 -->
<g id="node42" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node42"><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="550.5,-1202.5 357.5,-1202.5 357.5,-1198.5 353.5,-1198.5 353.5,-1194.5 357.5,-1194.5 357.5,-1172.5 353.5,-1172.5 353.5,-1168.5 357.5,-1168.5 357.5,-1164.5 550.5,-1164.5 550.5,-1202.5"/>
<polyline fill="none" stroke="#000000" points="357.5,-1198.5 361.5,-1198.5 361.5,-1194.5 357.5,-1194.5 "/>
<polyline fill="none" stroke="#000000" points="357.5,-1172.5 361.5,-1172.5 361.5,-1168.5 357.5,-1168.5 "/>
<text text-anchor="middle" x="454" y="-1187.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="454" y="-1172.3" 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="edge41" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.14,-1183.5C280.38,-1183.5 315.19,-1183.5 347.13,-1183.5"/>
<polygon fill="#000000" stroke="#000000" points="347.39,-1187.0001 357.39,-1183.5 347.39,-1180.0001 347.39,-1187.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node43" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node43"><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="807.5,-1202.5 614.5,-1202.5 614.5,-1198.5 610.5,-1198.5 610.5,-1194.5 614.5,-1194.5 614.5,-1172.5 610.5,-1172.5 610.5,-1168.5 614.5,-1168.5 614.5,-1164.5 807.5,-1164.5 807.5,-1202.5"/>
<polyline fill="none" stroke="#000000" points="614.5,-1198.5 618.5,-1198.5 618.5,-1194.5 614.5,-1194.5 "/>
<polyline fill="none" stroke="#000000" points="614.5,-1172.5 618.5,-1172.5 618.5,-1168.5 614.5,-1168.5 "/>
<text text-anchor="middle" x="711" y="-1187.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="711" y="-1172.3" 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="edge42" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M550.79,-1183.5C568.16,-1183.5 586.35,-1183.5 603.98,-1183.5"/>
<polygon fill="#000000" stroke="#000000" points="604.29,-1187.0001 614.29,-1183.5 604.29,-1180.0001 604.29,-1187.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node44" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node44"><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="1056.5,-401 871.5,-401 871.5,-348 1056.5,-348 1056.5,-401"/>
<text text-anchor="middle" x="964" y="-385.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="964" y="-370.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="964" y="-355.8" 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="edge43" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1053.4,-347.95C1074.2,-341.78 1096.4,-335.17 1117.6,-328.88"/>
<polygon fill="#000000" stroke="#000000" points="1118.6215,-332.2277 1127.2,-326.01 1116.6165,-325.521 1118.6215,-332.2277"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node45" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node45"><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="1317.5,-412.5 1115.5,-412.5 1115.5,-344.5 1317.5,-344.5 1317.5,-412.5"/>
<text text-anchor="middle" x="1216.5" y="-397.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="1216.5" y="-382.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="1216.5" y="-367.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="1216.5" y="-352.3" 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="edge44" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M1056.6,-375.97C1072.4,-376.22 1089.1,-376.48 1105.3,-376.74"/>
<polygon fill="#000000" stroke="#000000" points="1105.3458,-380.2411 1115.4,-376.9 1105.4567,-373.2419 1105.3458,-380.2411"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge45" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1317.5,-380.11C1330.2,-380.31 1343.2,-380.52 1356.1,-380.72"/>
<polygon fill="#000000" stroke="#000000" points="1356.243,-384.2228 1366.3,-380.89 1356.3597,-377.2237 1356.243,-384.2228"/>
</g>
<!-- zcash/zips#364 -->
<g id="node46" class="node">
<title>zcash/zips#364</title>
<g id="a_node46"><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="813.5,-401 608.5,-401 608.5,-348 813.5,-348 813.5,-401"/>
<text text-anchor="middle" x="711" y="-385.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="711" y="-370.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="711" y="-355.8" 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="edge46" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M813.54,-374.5C829.16,-374.5 845.28,-374.5 860.91,-374.5"/>
<polygon fill="#000000" stroke="#000000" points="861.1,-378.0001 871.1,-374.5 861.1,-371.0001 861.1,-378.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node47" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node47"><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" stroke-width="2" points="243.5,-1274 61.5,-1274 61.5,-1221 243.5,-1221 243.5,-1274"/>
<text text-anchor="middle" x="152.5" y="-1258.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="152.5" y="-1243.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="152.5" y="-1228.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node48" class="node">
<title>zcash/zips#511</title>
<g id="a_node48"><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="#a6cfff" stroke="#000000" stroke-width="2" points="1324,-498.5 1109,-498.5 1109,-430.5 1324,-430.5 1324,-498.5"/>
<text text-anchor="middle" x="1216.5" y="-483.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="1216.5" y="-468.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="1216.5" y="-453.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="1216.5" y="-438.3" 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="edge47" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1320.8,-430.44C1332.7,-426.55 1344.8,-422.57 1356.8,-418.66"/>
<polygon fill="#000000" stroke="#000000" points="1357.9775,-421.9575 1366.4,-415.53 1355.8076,-415.3023 1357.9775,-421.9575"/>
</g>
<!-- zcash/librustzcash#387 -->
<g id="node49" class="node">
<title>zcash/librustzcash#387</title>
<g id="a_node49"><a xlink:href="https://github.com/zcash/librustzcash/issues/387" xlink:title="zcash/librustzcash#387&#10;Implement Unified Address&#10;key derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1575,-574 1360,-574 1360,-521 1575,-521 1575,-574"/>
<text text-anchor="middle" x="1467.5" y="-558.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#387</text>
<text text-anchor="middle" x="1467.5" y="-543.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1467.5" y="-528.8" font-family="Times,serif" font-size="14.00" fill="#000000">key derivation</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/librustzcash#387 -->
<g id="edge48" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/librustzcash#387</title>
<path fill="none" stroke="#000000" d="M1319.7,-498.62C1338.9,-504.98 1358.9,-511.57 1377.6,-517.79"/>
<polygon fill="#000000" stroke="#000000" points="1376.8073,-521.2133 1387.4,-521 1378.9863,-514.561 1376.8073,-521.2133"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node50" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node50"><a xlink:href="https://github.com/zcash/zcash/issues/5186" xlink:title="zcash/zcash#5186&#10;z_viewtransaction: Figure&#10;out how to render UAs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="254,-1345 51,-1345 51,-1292 254,-1292 254,-1345"/>
<text text-anchor="middle" x="152.5" y="-1329.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="152.5" y="-1314.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="152.5" y="-1299.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5198 -->
<g id="node51" class="node">
<title>zcash/zcash#5198</title>
<g id="a_node51"><a xlink:href="https://github.com/zcash/zcash/issues/5198" xlink:title="zcash/zcash#5198&#10;Switch to a `(txid,&#10;auth_digest)` identifier&#10;in places where the node&#10;needs to commit to a&#10;specific instance of a&#10;transaction" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="250.5,-1476 54.5,-1476 54.5,-1363 250.5,-1363 250.5,-1476"/>
<text text-anchor="middle" x="152.5" y="-1460.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5198</text>
<text text-anchor="middle" x="152.5" y="-1445.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch to a `(txid,</text>
<text text-anchor="middle" x="152.5" y="-1430.8" font-family="Times,serif" font-size="14.00" fill="#000000">auth_digest)` identifier</text>
<text text-anchor="middle" x="152.5" y="-1415.8" font-family="Times,serif" font-size="14.00" fill="#000000">in places where the node</text>
<text text-anchor="middle" x="152.5" y="-1400.8" font-family="Times,serif" font-size="14.00" fill="#000000">needs to commit to a</text>
<text text-anchor="middle" x="152.5" y="-1385.8" font-family="Times,serif" font-size="14.00" fill="#000000">specific instance of a</text>
<text text-anchor="middle" x="152.5" y="-1370.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction</text>
</a>
</g>
</g>
<!-- zcash/zcash#5199 -->
<g id="node52" class="node">
<title>zcash/zcash#5199</title>
<g id="a_node52"><a xlink:href="https://github.com/zcash/zcash/issues/5199" xlink:title="zcash/zcash#5199&#10;[ZIP 239] Relay v5+&#10;transactions with a&#10;(txid, auth_digest) tuple&#10;(or digest thereof)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="247,-1577 58,-1577 58,-1494 247,-1494 247,-1577"/>
<text text-anchor="middle" x="152.5" y="-1561.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5199</text>
<text text-anchor="middle" x="152.5" y="-1546.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 239] Relay v5+</text>
<text text-anchor="middle" x="152.5" y="-1531.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions with a</text>
<text text-anchor="middle" x="152.5" y="-1516.8" font-family="Times,serif" font-size="14.00" fill="#000000">(txid, auth_digest) tuple</text>
<text text-anchor="middle" x="152.5" y="-1501.8" font-family="Times,serif" font-size="14.00" fill="#000000">(or digest thereof)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5223 -->
<g id="node53" class="node">
<title>zcash/zcash#5223</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash/zcash/issues/5223" xlink:title="zcash/zcash#5223&#10;Add RPC test case that&#10;checks the auth data&#10;commitments for v4 txs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="246.5,-1663.5 58.5,-1663.5 58.5,-1595.5 246.5,-1595.5 246.5,-1663.5"/>
<text text-anchor="middle" x="152.5" y="-1648.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5223</text>
<text text-anchor="middle" x="152.5" y="-1633.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add RPC test case that</text>
<text text-anchor="middle" x="152.5" y="-1618.3" font-family="Times,serif" font-size="14.00" fill="#000000">checks the auth data</text>
<text text-anchor="middle" x="152.5" y="-1603.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitments for v4 txs</text>
</a>
</g>
</g>
<!-- zcash/zips#534 -->
<g id="node54" class="node">
<title>zcash/zips#534</title>
<g id="a_node54"><a xlink:href="https://github.com/zcash/zips/issues/534" xlink:title="zcash/zips#534&#10;Adding to a full note&#10;commitment tree should be&#10;a consensus error" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="260,-1749.5 45,-1749.5 45,-1681.5 260,-1681.5 260,-1749.5"/>
<text text-anchor="middle" x="152.5" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#534</text>
<text text-anchor="middle" x="152.5" y="-1719.3" font-family="Times,serif" font-size="14.00" fill="#000000">Adding to a full note</text>
<text text-anchor="middle" x="152.5" y="-1704.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree should be</text>
<text text-anchor="middle" x="152.5" y="-1689.3" font-family="Times,serif" font-size="14.00" fill="#000000">a consensus error</text>
</a>
</g>
</g>
<!-- zcash/zcash#5241 -->
<g id="node55" class="node">
<title>zcash/zcash#5241</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/zcash/pull/5241" xlink:title="zcash/zcash#5241&#10;Consensus: Add check to&#10;ensure that the Orchard&#10;commitment tree is not&#10;overfull after&#10;AppendBundle." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="552.5,-1764.5 355.5,-1764.5 355.5,-1760.5 351.5,-1760.5 351.5,-1756.5 355.5,-1756.5 355.5,-1674.5 351.5,-1674.5 351.5,-1670.5 355.5,-1670.5 355.5,-1666.5 552.5,-1666.5 552.5,-1764.5"/>
<polyline fill="none" stroke="#000000" points="355.5,-1760.5 359.5,-1760.5 359.5,-1756.5 355.5,-1756.5 "/>
<polyline fill="none" stroke="#000000" points="355.5,-1674.5 359.5,-1674.5 359.5,-1670.5 355.5,-1670.5 "/>
<text text-anchor="middle" x="454" y="-1749.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5241</text>
<text text-anchor="middle" x="454" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consensus: Add check to</text>
<text text-anchor="middle" x="454" y="-1719.3" font-family="Times,serif" font-size="14.00" fill="#000000">ensure that the Orchard</text>
<text text-anchor="middle" x="454" y="-1704.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree is not</text>
<text text-anchor="middle" x="454" y="-1689.3" font-family="Times,serif" font-size="14.00" fill="#000000">overfull after</text>
<text text-anchor="middle" x="454" y="-1674.3" font-family="Times,serif" font-size="14.00" fill="#000000">AppendBundle.</text>
</a>
</g>
</g>
<!-- zcash/zips#534&#45;&gt;zcash/zcash#5241 -->
<g id="edge49" class="edge">
<title>zcash/zips#534&#45;&gt;zcash/zcash#5241</title>
<path fill="none" stroke="#000000" d="M260.07,-1715.5C287.63,-1715.5 317.3,-1715.5 344.94,-1715.5"/>
<polygon fill="#000000" stroke="#000000" points="345.02,-1719.0001 355.02,-1715.5 345.02,-1712.0001 345.02,-1719.0001"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node56" class="node">
<title>zcash/halo2#63</title>
<g id="a_node56"><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="#fad8c7" stroke="#000000" points="819,-695 603,-695 603,-642 819,-642 819,-695"/>
<text text-anchor="middle" x="711" y="-679.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="711" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="711" y="-649.8" 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="edge50" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M819.03,-677.04C830.03,-677.91 841.22,-678.79 852.27,-679.67"/>
<polygon fill="#000000" stroke="#000000" points="852.1071,-683.1679 862.35,-680.46 852.6541,-676.1893 852.1071,-683.1679"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#36 -->
<g id="node57" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#36</title>
<g id="a_node57"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/36" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#10;Orchard Merkle path test&#10;vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="305,-921 0,-921 0,-868 305,-868 305,-921"/>
<text text-anchor="middle" x="152.5" y="-905.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#36</text>
<text text-anchor="middle" x="152.5" y="-890.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Merkle path test</text>
<text text-anchor="middle" x="152.5" y="-875.8" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#33 -->
<g id="edge51" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M305.02,-903.1C313.53,-903.58 322.04,-904.06 330.43,-904.53"/>
<polygon fill="#000000" stroke="#000000" points="330.4169,-908.0348 340.6,-905.11 330.8155,-901.0462 330.4169,-908.0348"/>
</g>
<!-- zcash/orchard#95 -->
<g id="node58" class="node">
<title>zcash/orchard#95</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash/orchard/issues/95" xlink:title="zcash/orchard#95&#10;Implement Merkle path&#10;validity chip" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="547.5,-867 360.5,-867 360.5,-814 547.5,-814 547.5,-867"/>
<text text-anchor="middle" x="454" y="-851.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#95</text>
<text text-anchor="middle" x="454" y="-836.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Merkle path</text>
<text text-anchor="middle" x="454" y="-821.8" font-family="Times,serif" font-size="14.00" fill="#000000">validity chip</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#95 -->
<g id="edge52" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M300.6,-867.97C317.37,-864.97 334.19,-861.96 350.22,-859.09"/>
<polygon fill="#000000" stroke="#000000" points="350.8649,-862.5303 360.09,-857.32 349.6292,-855.6402 350.8649,-862.5303"/>
</g>
<!-- zcash/orchard#95&#45;&gt;zcash/orchard#4 -->
<g id="edge53" class="edge">
<title>zcash/orchard#95&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M547.51,-829.58C569.29,-827.04 592.52,-824.33 614.43,-821.77"/>
<polygon fill="#000000" stroke="#000000" points="614.8715,-825.2423 624.4,-820.61 614.0625,-818.2892 614.8715,-825.2423"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node59" class="node">
<title>zcash/halo2#75</title>
<g id="a_node59"><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="1053.5,-547 874.5,-547 874.5,-494 1053.5,-494 1053.5,-547"/>
<text text-anchor="middle" x="964" y="-531.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="964" y="-516.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="964" y="-501.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node60" class="node">
<title>zcash/halo2#251</title>
<g id="a_node60"><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="1321.5,-570 1111.5,-570 1111.5,-517 1321.5,-517 1321.5,-570"/>
<text text-anchor="middle" x="1216.5" y="-554.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1216.5" y="-539.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="1216.5" y="-524.8" 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="edge54" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1053.7,-528.67C1069,-530.06 1085,-531.52 1100.8,-532.96"/>
<polygon fill="#000000" stroke="#000000" points="1100.8233,-536.4766 1111.1,-533.9 1101.4595,-529.5056 1100.8233,-536.4766"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node61" class="node">
<title>zcash/halo2#79</title>
<g id="a_node61"><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="791.5,-624 630.5,-624 630.5,-541 791.5,-541 791.5,-624"/>
<text text-anchor="middle" x="711" y="-608.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="711" y="-593.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="711" y="-578.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="711" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="711" y="-548.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction</text>
</a>
</g>
</g>
<!-- zcash/halo2#78 -->
<g id="node62" class="node">
<title>zcash/halo2#78</title>
<g id="a_node62"><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="556,-616.5 352,-616.5 352,-548.5 556,-548.5 556,-616.5"/>
<text text-anchor="middle" x="454" y="-601.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="454" y="-586.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="454" y="-571.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="454" y="-556.3" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#79 -->
<g id="edge55" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M556.31,-582.5C577.48,-582.5 599.65,-582.5 620.37,-582.5"/>
<polygon fill="#000000" stroke="#000000" points="620.41,-586.0001 630.41,-582.5 620.41,-579.0001 620.41,-586.0001"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node63" class="node">
<title>zcash/halo2#250</title>
<g id="a_node63"><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="808,-523 614,-523 614,-470 808,-470 808,-523"/>
<text text-anchor="middle" x="711" y="-507.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="711" y="-492.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="711" y="-477.8" 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="edge56" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M552.91,-548.39C569.61,-542.7 586.79,-536.9 603,-531.5 608.2,-529.77 613.55,-528 618.94,-526.22"/>
<polygon fill="#000000" stroke="#000000" points="620.2801,-529.4639 628.69,-523.02 618.0972,-522.813 620.2801,-529.4639"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge57" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M808.09,-505.71C826.43,-507.45 845.65,-509.27 864.08,-511.02"/>
<polygon fill="#000000" stroke="#000000" points="863.9346,-514.5218 874.22,-511.98 864.5944,-507.553 863.9346,-514.5218"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node64" class="node">
<title>zcash/halo2#57</title>
<g id="a_node64"><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="224,-1835.5 81,-1835.5 81,-1767.5 224,-1767.5 224,-1835.5"/>
<text text-anchor="middle" x="152.5" y="-1820.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-1805.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-1790.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-1775.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node65" class="node">
<title>zcash/halo2#82</title>
<g id="a_node65"><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="249,-1937 56,-1937 56,-1854 249,-1854 249,-1937"/>
<text text-anchor="middle" x="152.5" y="-1921.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-1906.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-1891.8" font-family="Times,serif" font-size="14.00" fill="#000000">beta and gamma if there</text>
<text text-anchor="middle" x="152.5" y="-1876.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-1861.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node66" class="node">
<title>zcash/halo2#248</title>
<g id="a_node66"><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="555.5,-444 352.5,-444 352.5,-391 555.5,-391 555.5,-444"/>
<text text-anchor="middle" x="454" y="-428.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="454" y="-413.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="454" y="-398.8" 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="edge58" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M540.29,-444.03C564.24,-451.39 590.38,-459.42 614.85,-466.94"/>
<polygon fill="#000000" stroke="#000000" points="613.9129,-470.3135 624.5,-469.91 615.972,-463.6232 613.9129,-470.3135"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node67" class="node">
<title>zcash/halo2#249</title>
<g id="a_node67"><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="546.5,-372.5 361.5,-372.5 361.5,-304.5 546.5,-304.5 546.5,-372.5"/>
<text text-anchor="middle" x="454" y="-357.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="454" y="-342.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="454" y="-327.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="454" y="-312.3" 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="edge59" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M546.68,-371.03C553.68,-374.31 560.53,-377.81 567,-381.5 569.85,-383.13 628.43,-430.1 669.98,-463.49"/>
<polygon fill="#000000" stroke="#000000" points="667.8036,-466.2312 677.79,-469.77 672.1901,-460.776 667.8036,-466.2312"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node68" class="node">
<title>zcash/halo2#246</title>
<g id="a_node68"><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="242,-279 63,-279 63,-226 242,-226 242,-279"/>
<text text-anchor="middle" x="152.5" y="-263.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="152.5" y="-248.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="152.5" y="-233.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node69" class="node">
<title>zcash/halo2#247</title>
<g id="a_node69"><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="542,-286.5 366,-286.5 366,-218.5 542,-218.5 542,-286.5"/>
<text text-anchor="middle" x="454" y="-271.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="454" y="-256.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="454" y="-241.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="454" y="-226.3" 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="edge60" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M242.14,-252.5C277.92,-252.5 319.23,-252.5 355.81,-252.5"/>
<polygon fill="#000000" stroke="#000000" points="356,-256.0001 366,-252.5 356,-249.0001 356,-256.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge61" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M542.04,-276.55C551.27,-281.7 559.87,-287.94 567,-295.5 603.47,-334.14 573.03,-365.63 603,-409.5 617.5,-430.72 638.68,-449.37 658.46,-463.91"/>
<polygon fill="#000000" stroke="#000000" points="656.648,-466.9168 666.82,-469.88 660.716,-461.2202 656.648,-466.9168"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node70" class="node">
<title>zcash/halo2#245</title>
<g id="a_node70"><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="#a6cfff" stroke="#000000" stroke-width="2" points="557,-702.5 351,-702.5 351,-634.5 557,-634.5 557,-702.5"/>
<text text-anchor="middle" x="454" y="-687.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="454" y="-672.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="454" y="-657.3" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="454" y="-642.3" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#63 -->
<g id="edge62" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M557.05,-668.5C568.83,-668.5 580.91,-668.5 592.87,-668.5"/>
<polygon fill="#000000" stroke="#000000" points="592.88,-672.0001 602.88,-668.5 592.88,-665.0001 592.88,-672.0001"/>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge63" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M556.7,-634.38C560.35,-631.64 563.81,-628.69 567,-625.5 598.67,-593.9 570.55,-562.29 603,-531.5 603.82,-530.72 604.66,-529.96 605.52,-529.21"/>
<polygon fill="#000000" stroke="#000000" points="607.8525,-531.831 613.63,-522.95 603.5753,-526.2897 607.8525,-531.831"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node71" class="node">
<title>zcash/halo2#210</title>
<g id="a_node71"><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="563,-530.5 345,-530.5 345,-462.5 563,-462.5 563,-530.5"/>
<text text-anchor="middle" x="454" y="-515.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="454" y="-500.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="454" y="-485.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="454" y="-470.3" 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="edge64" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M563.36,-496.5C576.75,-496.5 590.43,-496.5 603.79,-496.5"/>
<polygon fill="#000000" stroke="#000000" points="603.93,-500.0001 613.93,-496.5 603.93,-493.0001 603.93,-500.0001"/>
</g>
<!-- zcash/halo2#312 -->
<g id="node72" class="node">
<title>zcash/halo2#312</title>
<g id="a_node72"><a xlink:href="https://github.com/zcash/halo2/issues/312" xlink:title="zcash/halo2#312&#10;[Book] Document gadget&#10;API" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="250,-2008 55,-2008 55,-1955 250,-1955 250,-2008"/>
<text text-anchor="middle" x="152.5" y="-1992.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#312</text>
<text text-anchor="middle" x="152.5" y="-1977.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Book] Document gadget</text>
<text text-anchor="middle" x="152.5" y="-1962.8" font-family="Times,serif" font-size="14.00" fill="#000000">API</text>
</a>
</g>
</g>
<!-- zcash/orchard#96 -->
<g id="node73" class="node">
<title>zcash/orchard#96</title>
<g id="a_node73"><a xlink:href="https://github.com/zcash/orchard/issues/96" xlink:title="zcash/orchard#96&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="540.5,-796 367.5,-796 367.5,-743 540.5,-743 540.5,-796"/>
<text text-anchor="middle" x="454" y="-780.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#96</text>
<text text-anchor="middle" x="454" y="-765.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="454" y="-750.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#96&#45;&gt;zcash/orchard#4 -->
<g id="edge65" class="edge">
<title>zcash/orchard#96&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M540.65,-783.32C564.34,-787.1 590.17,-791.22 614.38,-795.09"/>
<polygon fill="#000000" stroke="#000000" points="613.8636,-798.5518 624.29,-796.67 614.9658,-791.6391 613.8636,-798.5518"/>
</g>
<!-- zcash/orchard#118 -->
<g id="node74" class="node">
<title>zcash/orchard#118</title>
<g id="a_node74"><a xlink:href="https://github.com/zcash/orchard/pull/118" xlink:title="zcash/orchard#118&#10;Sinsemilla chip with&#10;Commit Domain" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="233.5,-2079 71.5,-2079 71.5,-2075 67.5,-2075 67.5,-2071 71.5,-2071 71.5,-2034 67.5,-2034 67.5,-2030 71.5,-2030 71.5,-2026 233.5,-2026 233.5,-2079"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="71.5,-2075 75.5,-2075 75.5,-2071 71.5,-2071 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="71.5,-2034 75.5,-2034 75.5,-2030 71.5,-2030 "/>
<text text-anchor="middle" x="152.5" y="-2063.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#118</text>
<text text-anchor="middle" x="152.5" y="-2048.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sinsemilla chip with</text>
<text text-anchor="middle" x="152.5" y="-2033.8" font-family="Times,serif" font-size="14.00" fill="#000000">Commit Domain</text>
</a>
</g>
</g>
<!-- zcash/orchard#101 -->
<g id="node75" class="node">
<title>zcash/orchard#101</title>
<g id="a_node75"><a xlink:href="https://github.com/zcash/orchard/pull/101" xlink:title="zcash/orchard#101&#10;[WIP] Action circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="534.5,-2071.5 373.5,-2071.5 373.5,-2067.5 369.5,-2067.5 369.5,-2063.5 373.5,-2063.5 373.5,-2041.5 369.5,-2041.5 369.5,-2037.5 373.5,-2037.5 373.5,-2033.5 534.5,-2033.5 534.5,-2071.5"/>
<polyline fill="none" stroke="#000000" points="373.5,-2067.5 377.5,-2067.5 377.5,-2063.5 373.5,-2063.5 "/>
<polyline fill="none" stroke="#000000" points="373.5,-2041.5 377.5,-2041.5 377.5,-2037.5 373.5,-2037.5 "/>
<text text-anchor="middle" x="454" y="-2056.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#101</text>
<text text-anchor="middle" x="454" y="-2041.3" font-family="Times,serif" font-size="14.00" fill="#000000">[WIP] Action circuit</text>
</a>
</g>
</g>
<!-- zcash/orchard#118&#45;&gt;zcash/orchard#101 -->
<g id="edge66" class="edge">
<title>zcash/orchard#118&#45;&gt;zcash/orchard#101</title>
<path fill="none" stroke="#000000" d="M233.69,-2052.5C273.73,-2052.5 322.16,-2052.5 363.4,-2052.5"/>
<polygon fill="#000000" stroke="#000000" points="363.45,-2056.0001 373.45,-2052.5 363.45,-2049.0001 363.45,-2056.0001"/>
</g>
<!-- zcash/orchard#145 -->
<g id="node76" class="node">
<title>zcash/orchard#145</title>
<g id="a_node76"><a xlink:href="https://github.com/zcash/orchard/pull/145" xlink:title="zcash/orchard#145&#10;Refactor&#10;`mul_fixed_short` API to&#10;copy in (`magnitude`,&#10;`sign`)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="250.5,-811 54.5,-811 54.5,-807 50.5,-807 50.5,-803 54.5,-803 54.5,-736 50.5,-736 50.5,-732 54.5,-732 54.5,-728 250.5,-728 250.5,-811"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="54.5,-807 58.5,-807 58.5,-803 54.5,-803 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="54.5,-736 58.5,-736 58.5,-732 54.5,-732 "/>
<text text-anchor="middle" x="152.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#145</text>
<text text-anchor="middle" x="152.5" y="-780.8" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor</text>
<text text-anchor="middle" x="152.5" y="-765.8" font-family="Times,serif" font-size="14.00" fill="#000000">`mul_fixed_short` API to</text>
<text text-anchor="middle" x="152.5" y="-750.8" font-family="Times,serif" font-size="14.00" fill="#000000">copy in (`magnitude`,</text>
<text text-anchor="middle" x="152.5" y="-735.8" font-family="Times,serif" font-size="14.00" fill="#000000">`sign`)</text>
</a>
</g>
</g>
<!-- zcash/orchard#145&#45;&gt;zcash/orchard#96 -->
<g id="edge67" class="edge">
<title>zcash/orchard#145&#45;&gt;zcash/orchard#96</title>
<path fill="none" stroke="#000000" d="M250.81,-769.5C284.75,-769.5 322.76,-769.5 356.63,-769.5"/>
<polygon fill="#000000" stroke="#000000" points="357,-773.0001 367,-769.5 357,-766.0001 357,-773.0001"/>
</g>
</g>
</svg>