developers/zcash-core-dag.svg

1278 lines
90 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="2076pt"
viewBox="0.00 0.00 1838.00 2076.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 2072)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2072 1834,-2072 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,-148.5 58.5,-148.5 58.5,-110.5 246.5,-110.5 246.5,-148.5"/>
<text text-anchor="middle" x="152.5" y="-133.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="152.5" y="-118.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,-156 358,-156 358,-103 550,-103 550,-156"/>
<text text-anchor="middle" x="454" y="-140.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="454" y="-125.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="454" y="-110.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,-129.5C278.76,-129.5 314.86,-129.5 347.84,-129.5"/>
<polygon fill="#000000" stroke="#000000" points="347.96,-133.0001 357.96,-129.5 347.96,-126.0001 347.96,-133.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,-220 59.5,-220 59.5,-167 245.5,-167 245.5,-220"/>
<text text-anchor="middle" x="152.5" y="-204.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-189.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-174.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="#c2e0c6" stroke="#000000" points="797.5,-1018 624.5,-1018 624.5,-965 797.5,-965 797.5,-1018"/>
<text text-anchor="middle" x="711" y="-1002.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="711" y="-987.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="711" y="-972.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="#c2e0c6" stroke="#000000" points="1065.5,-872.5 862.5,-872.5 862.5,-804.5 1065.5,-804.5 1065.5,-872.5"/>
<text text-anchor="middle" x="964" y="-857.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="964" y="-842.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="964" y="-827.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules as an NU</text>
<text text-anchor="middle" x="964" y="-812.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="M740.73,-964.84C768.71,-940.74 812.54,-905.48 855,-881.5 857.66,-880 860.38,-878.52 863.15,-877.08"/>
<polygon fill="#000000" stroke="#000000" points="864.7578,-880.1893 872.13,-872.58 861.6216,-873.931 864.7578,-880.1893"/>
</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,-1030 881.5,-1030 881.5,-977 1046.5,-977 1046.5,-1030"/>
<text text-anchor="middle" x="964" y="-1014.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="964" y="-999.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="964" y="-984.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="M797.71,-995.61C821.37,-996.73 847.09,-997.95 871.08,-999.09"/>
<polygon fill="#000000" stroke="#000000" points="871.0859,-1002.5941 881.24,-999.57 871.4163,-995.6019 871.0859,-1002.5941"/>
</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,-958.5 863.5,-958.5 863.5,-890.5 1064.5,-890.5 1064.5,-958.5"/>
<text text-anchor="middle" x="964" y="-943.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5195</text>
<text text-anchor="middle" x="964" y="-928.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard proof</text>
<text text-anchor="middle" x="964" y="-913.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification consensus</text>
<text text-anchor="middle" x="964" y="-898.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,-968.54C815.74,-963.76 834.97,-958.67 853.72,-953.71"/>
<polygon fill="#000000" stroke="#000000" points="854.7038,-957.0701 863.47,-951.12 852.9066,-950.3048 854.7038,-957.0701"/>
</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="#c2e0c6" stroke="#000000" points="1322.5,-826 1110.5,-826 1110.5,-773 1322.5,-773 1322.5,-826"/>
<text text-anchor="middle" x="1216.5" y="-810.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1216.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 consensus</text>
<text text-anchor="middle" x="1216.5" y="-780.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="M1065.6,-822.81C1077,-821.05 1088.6,-819.26 1100.1,-817.48"/>
<polygon fill="#000000" stroke="#000000" points="1100.7541,-820.9205 1110.1,-815.93 1099.6819,-814.0031 1100.7541,-820.9205"/>
</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,-928 1122.5,-928 1122.5,-875 1310.5,-875 1310.5,-928"/>
<text text-anchor="middle" x="1216.5" y="-912.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1216.5" y="-897.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1216.5" y="-882.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.8,-977.24C1055.7,-974.1 1064.6,-970.82 1073,-967.5 1099.7,-956.99 1128.5,-944.05 1153.3,-932.41"/>
<polygon fill="#000000" stroke="#000000" points="1155.0444,-935.4572 1162.6,-928.03 1152.0618,-929.1244 1155.0444,-935.4572"/>
</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,-1030 1122.5,-1030 1122.5,-977 1310.5,-977 1310.5,-1030"/>
<text text-anchor="middle" x="1216.5" y="-1014.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#406</text>
<text text-anchor="middle" x="1216.5" y="-999.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1216.5" y="-984.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,-1003.5C1067.5,-1003.5 1090.2,-1003.5 1112,-1003.5"/>
<polygon fill="#000000" stroke="#000000" points="1112.3,-1007.0001 1122.3,-1003.5 1112.3,-1000.0001 1112.3,-1007.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="M1053.4,-890.45C1060.1,-887.54 1066.7,-884.54 1073,-881.5 1104.3,-866.5 1138,-847.39 1164.9,-831.39"/>
<polygon fill="#000000" stroke="#000000" points="1166.9326,-834.2519 1173.7,-826.1 1163.3261,-828.2524 1166.9326,-834.2519"/>
</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,-770.5 1363,-770.5 1363,-702.5 1572,-702.5 1572,-770.5"/>
<text text-anchor="middle" x="1467.5" y="-755.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1467.5" y="-740.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1467.5" y="-725.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1467.5" y="-710.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="M1260.2,-874.85C1279.8,-862.73 1303.2,-848.08 1324,-834.5 1352.7,-815.75 1384.2,-794.33 1410.4,-776.3"/>
<polygon fill="#000000" stroke="#000000" points="1412.452,-779.1365 1418.7,-770.58 1408.4798,-773.3727 1412.452,-779.1365"/>
</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,-1030 1373.5,-1030 1373.5,-977 1561.5,-977 1561.5,-1030"/>
<text text-anchor="middle" x="1467.5" y="-1014.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#403</text>
<text text-anchor="middle" x="1467.5" y="-999.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1467.5" y="-984.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,-1003.5C1327.8,-1003.5 1345.7,-1003.5 1363.1,-1003.5"/>
<polygon fill="#000000" stroke="#000000" points="1363.2,-1007.0001 1373.2,-1003.5 1363.2,-1000.0001 1363.2,-1007.0001"/>
</g>
<!-- zcash/librustzcash#404 -->
<g id="node18" class="node">
<title>zcash/librustzcash#404</title>
<g id="a_node18"><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,-1030 1626.5,-1030 1626.5,-977 1814.5,-977 1814.5,-1030"/>
<text text-anchor="middle" x="1720.5" y="-1014.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#404</text>
<text text-anchor="middle" x="1720.5" y="-999.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1720.5" y="-984.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="edge15" class="edge">
<title>zcash/librustzcash#403&#45;&gt;zcash/librustzcash#404</title>
<path fill="none" stroke="#000000" d="M1561.7,-1003.5C1579.4,-1003.5 1598,-1003.5 1616,-1003.5"/>
<polygon fill="#000000" stroke="#000000" points="1616.2,-1007.0001 1626.2,-1003.5 1616.2,-1000.0001 1616.2,-1007.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" points="795.5,-872 626.5,-872 626.5,-819 795.5,-819 795.5,-872"/>
<text text-anchor="middle" x="711" y="-856.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="711" y="-841.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="711" y="-826.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,-843.16C813.74,-842.66 833.18,-842.12 852.17,-841.59"/>
<polygon fill="#000000" stroke="#000000" points="852.4599,-845.0835 862.36,-841.31 852.2676,-838.0861 852.4599,-845.0835"/>
</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,-1160 55,-1160 55,-1107 250,-1107 250,-1160"/>
<text text-anchor="middle" x="152.5" y="-1144.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-1129.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-1114.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="#a6cfff" stroke="#000000" points="567,-703 341,-703 341,-650 567,-650 567,-703"/>
<text text-anchor="middle" x="454" y="-687.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="454" y="-672.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="454" y="-657.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="#c2e0c6" stroke="#000000" points="797,-730 625,-730 625,-647 797,-647 797,-730"/>
<text text-anchor="middle" x="711" y="-714.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="711" y="-699.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="711" y="-684.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="711" y="-669.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="711" y="-654.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,-681.78C583.01,-682.52 599.23,-683.28 614.79,-684.01"/>
<polygon fill="#000000" stroke="#000000" points="614.7482,-687.5117 624.9,-684.48 615.0734,-680.5193 614.7482,-687.5117"/>
</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="#c2e0c6" stroke="#000000" points="1052,-715 876,-715 876,-662 1052,-662 1052,-715"/>
<text text-anchor="middle" x="964" y="-699.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5197</text>
<text text-anchor="middle" x="964" y="-684.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 block</text>
<text text-anchor="middle" x="964" y="-669.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,-688.5C819,-688.5 842.81,-688.5 865.38,-688.5"/>
<polygon fill="#000000" stroke="#000000" points="865.65,-692.0001 875.65,-688.5 865.65,-685.0001 865.65,-692.0001"/>
</g>
<!-- zcash/zcash#5197&#45;&gt;zcash/zcash#5024 -->
<g id="edge14" class="edge">
<title>zcash/zcash#5197&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1051.4,-715.03C1058.7,-717.73 1066,-720.57 1073,-723.5 1103.3,-736.28 1135.8,-753.21 1162.2,-767.84"/>
<polygon fill="#000000" stroke="#000000" points="1160.8624,-771.1017 1171.3,-772.92 1164.2744,-764.9895 1160.8624,-771.1017"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node19" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node19"><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,-331 1125,-331 1125,-278 1308,-278 1308,-331"/>
<text text-anchor="middle" x="1216.5" y="-315.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="1216.5" y="-300.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="1216.5" y="-285.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="edge16" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1308.2,-327.21C1314,-330.98 1319.4,-335.38 1324,-340.5 1373.9,-396.02 1336.2,-433.78 1360,-504.5 1383,-572.78 1420.1,-647.75 1444.1,-693.47"/>
<polygon fill="#000000" stroke="#000000" points="1441.1124,-695.3064 1448.9,-702.49 1447.292,-692.0179 1441.1124,-695.3064"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node20" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node20"><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,-338.5 1371.5,-338.5 1371.5,-270.5 1563.5,-270.5 1563.5,-338.5"/>
<text text-anchor="middle" x="1467.5" y="-323.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1467.5" y="-308.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1467.5" y="-293.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1467.5" y="-278.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="edge17" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M1308.2,-304.5C1325.4,-304.5 1343.5,-304.5 1361.1,-304.5"/>
<polygon fill="#000000" stroke="#000000" points="1361.4,-308.0001 1371.4,-304.5 1361.4,-301.0001 1361.4,-308.0001"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node21" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node21"><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,-424.5 1366.5,-424.5 1366.5,-356.5 1568.5,-356.5 1568.5,-424.5"/>
<text text-anchor="middle" x="1467.5" y="-409.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1467.5" y="-394.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1467.5" y="-379.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1467.5" y="-364.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="edge18" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1296.1,-331.03C1305.5,-334.21 1315,-337.41 1324,-340.5 1335.9,-344.58 1348.4,-348.88 1360.8,-353.17"/>
<polygon fill="#000000" stroke="#000000" points="1359.7053,-356.4947 1370.3,-356.45 1361.9898,-349.878 1359.7053,-356.4947"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node22" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node22"><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,-409.5 1611,-409.5 1611,-371.5 1830,-371.5 1830,-409.5"/>
<text text-anchor="middle" x="1720.5" y="-394.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1720.5" y="-379.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="edge19" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1568.6,-390.5C1579.1,-390.5 1589.9,-390.5 1600.6,-390.5"/>
<polygon fill="#000000" stroke="#000000" points="1600.9,-394.0001 1610.9,-390.5 1600.9,-387.0001 1600.9,-394.0001"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node23" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node23"><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,-353 1627,-353 1627,-300 1814,-300 1814,-353"/>
<text text-anchor="middle" x="1720.5" y="-337.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1720.5" y="-322.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-307.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="edge20" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1568.6,-364.93C1584.5,-360.89 1601.1,-356.71 1617.1,-352.66"/>
<polygon fill="#000000" stroke="#000000" points="1618.1613,-356.0019 1627,-350.16 1616.4474,-349.215 1618.1613,-356.0019"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node24" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node24"><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,-281.5 1626,-281.5 1626,-213.5 1815,-213.5 1815,-281.5"/>
<text text-anchor="middle" x="1720.5" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1720.5" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1720.5" y="-236.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="-221.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="edge21" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1562.9,-356.33C1567.2,-353.59 1571.2,-350.65 1575,-347.5 1598,-328.34 1587.9,-309.59 1611,-290.5 1613,-288.82 1615.1,-287.2 1617.3,-285.64"/>
<polygon fill="#000000" stroke="#000000" points="1619.5255,-288.3626 1625.9,-279.9 1615.6394,-282.5404 1619.5255,-288.3626"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node25" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node25"><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,-552 1626.5,-552 1626.5,-499 1814.5,-499 1814.5,-552"/>
<text text-anchor="middle" x="1720.5" y="-536.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1720.5" y="-521.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-506.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="edge22" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M1562.7,-424.54C1567,-427.32 1571.1,-430.3 1575,-433.5 1597.8,-452.33 1587.6,-471.39 1611,-489.5 1613.1,-491.11 1615.2,-492.64 1617.4,-494.11"/>
<polygon fill="#000000" stroke="#000000" points="1615.9261,-497.3077 1626.3,-499.46 1619.5325,-491.3082 1615.9261,-497.3077"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node26" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node26"><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,-481 1626.5,-481 1626.5,-428 1814.5,-428 1814.5,-481"/>
<text text-anchor="middle" x="1720.5" y="-465.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1720.5" y="-450.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1720.5" y="-435.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="edge23" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5183</title>
<path fill="none" stroke="#000000" d="M1568.6,-416.07C1584.3,-420.05 1600.6,-424.17 1616.4,-428.16"/>
<polygon fill="#000000" stroke="#000000" points="1615.5455,-431.554 1626.1,-430.63 1617.2729,-424.7705 1615.5455,-431.554"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node27" class="node">
<title>zcash/orchard#36</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/orchard/issues/36" xlink:title="zcash/orchard#36&#10;Parsing and serialization&#10;of Orchard keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1061,-256.5 867,-256.5 867,-188.5 1061,-188.5 1061,-256.5"/>
<text text-anchor="middle" x="964" y="-241.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="964" y="-226.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="964" y="-211.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="964" y="-196.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="edge24" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1061.3,-254.09C1082.3,-260.9 1104.4,-268.08 1125.1,-274.82"/>
<polygon fill="#000000" stroke="#000000" points="1124.3082,-278.2424 1134.9,-277.99 1126.4626,-271.5821 1124.3082,-278.2424"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node28" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/librustzcash/issues/371" xlink:title="zcash/librustzcash#371&#10;Implement parsing and&#10;serialization of Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1310.5,-254.5 1122.5,-254.5 1122.5,-186.5 1310.5,-186.5 1310.5,-254.5"/>
<text text-anchor="middle" x="1216.5" y="-239.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="1216.5" y="-224.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="1216.5" y="-209.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="1216.5" y="-194.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="edge25" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M1061.3,-221.73C1077.8,-221.6 1095.1,-221.46 1111.8,-221.33"/>
<polygon fill="#000000" stroke="#000000" points="1112.2273,-224.8269 1122.2,-221.25 1112.1733,-217.8271 1112.2273,-224.8269"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node29" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node29"><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,-252.5 1360,-252.5 1360,-184.5 1575,-184.5 1575,-252.5"/>
<text text-anchor="middle" x="1467.5" y="-237.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1467.5" y="-222.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1467.5" y="-207.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1467.5" y="-192.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="edge26" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M1310.7,-219.75C1323.3,-219.65 1336.4,-219.54 1349.3,-219.44"/>
<polygon fill="#000000" stroke="#000000" points="1349.7273,-222.9369 1359.7,-219.36 1349.6733,-215.9371 1349.7273,-222.9369"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge27" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1565.1,-252.63C1568.6,-255.37 1571.9,-258.32 1575,-261.5 1607.8,-295.48 1576.2,-329.58 1611,-361.5 1612.7,-363.04 1614.4,-364.5 1616.2,-365.88"/>
<polygon fill="#000000" stroke="#000000" points="1614.3358,-368.8436 1624.6,-371.47 1618.214,-363.016 1614.3358,-368.8436"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge28" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1558.5,-252.61C1564.2,-255.44 1569.7,-258.4 1575,-261.5 1592.7,-271.87 1592.9,-280.69 1611,-290.5 1614.3,-292.3 1617.7,-294.03 1621.2,-295.7"/>
<polygon fill="#000000" stroke="#000000" points="1620.0453,-299.0187 1630.6,-299.94 1622.9235,-292.6378 1620.0453,-299.0187"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge29" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1575.2,-230.84C1588.6,-232.38 1602.2,-233.94 1615.6,-235.48"/>
<polygon fill="#000000" stroke="#000000" points="1615.3659,-238.976 1625.7,-236.64 1616.1647,-232.0218 1615.3659,-238.976"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node30" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node30"><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="edge30" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M1490.5,-184.25C1516,-148.74 1560.3,-93.973 1611,-61.5 1615.7,-58.472 1620.7,-55.686 1625.9,-53.127"/>
<polygon fill="#000000" stroke="#000000" points="1627.7752,-56.1172 1635.4,-48.761 1624.8521,-49.7567 1627.7752,-56.1172"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node31" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node31"><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="edge31" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M1575.2,-197.22C1586.7,-194.94 1598.5,-192.62 1610,-190.33"/>
<polygon fill="#000000" stroke="#000000" points="1611.0603,-193.6888 1620.2,-188.33 1609.7134,-186.8196 1611.0603,-193.6888"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node32" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node32"><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="edge32" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5191</title>
<path fill="none" stroke="#000000" d="M1517.8,-184.48C1544.6,-167.31 1578.7,-147.1 1611,-132.5 1615.9,-130.26 1621.1,-128.11 1626.3,-126.04"/>
<polygon fill="#000000" stroke="#000000" points="1627.7017,-129.2514 1635.8,-122.42 1625.2091,-122.7102 1627.7017,-129.2514"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node33" class="node">
<title>zcash/orchard#30</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/orchard/issues/30" xlink:title="zcash/orchard#30&#10;Implement ZIP 32 for&#10;Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1050,-331 878,-331 878,-278 1050,-278 1050,-331"/>
<text text-anchor="middle" x="964" y="-315.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="964" y="-300.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="964" y="-285.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="edge33" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1050.2,-304.5C1070.9,-304.5 1093.2,-304.5 1114.6,-304.5"/>
<polygon fill="#000000" stroke="#000000" points="1114.7,-308.0001 1124.7,-304.5 1114.7,-301.0001 1114.7,-308.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node34" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node34"><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,-1231 52.5,-1231 52.5,-1227 48.5,-1227 48.5,-1223 52.5,-1223 52.5,-1186 48.5,-1186 48.5,-1182 52.5,-1182 52.5,-1178 252.5,-1178 252.5,-1231"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1227 56.5,-1227 56.5,-1223 52.5,-1223 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1186 56.5,-1186 56.5,-1182 52.5,-1182 "/>
<text text-anchor="middle" x="152.5" y="-1215.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1200.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="-1185.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node35" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node35"><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,-1266 348,-1266 348,-1262 344,-1262 344,-1258 348,-1258 348,-1221 344,-1221 344,-1217 348,-1217 348,-1213 560,-1213 560,-1266"/>
<polyline fill="none" stroke="#000000" points="348,-1262 352,-1262 352,-1258 348,-1258 "/>
<polyline fill="none" stroke="#000000" points="348,-1221 352,-1221 352,-1217 348,-1217 "/>
<text text-anchor="middle" x="454" y="-1250.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="454" y="-1235.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="454" y="-1220.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="edge34" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.9,-1216.2C280.05,-1219.3 309.67,-1222.7 337.63,-1226"/>
<polygon fill="#000000" stroke="#000000" points="337.4998,-1229.5087 347.84,-1227.2 338.3169,-1222.5566 337.4998,-1229.5087"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node36" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node36"><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,-1190.5 615.5,-1190.5 615.5,-1186.5 611.5,-1186.5 611.5,-1182.5 615.5,-1182.5 615.5,-1130.5 611.5,-1130.5 611.5,-1126.5 615.5,-1126.5 615.5,-1122.5 806.5,-1122.5 806.5,-1190.5"/>
<polyline fill="none" stroke="#000000" points="615.5,-1186.5 619.5,-1186.5 619.5,-1182.5 615.5,-1182.5 "/>
<polyline fill="none" stroke="#000000" points="615.5,-1130.5 619.5,-1130.5 619.5,-1126.5 615.5,-1126.5 "/>
<text text-anchor="middle" x="711" y="-1175.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="711" y="-1160.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="711" y="-1145.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="711" y="-1130.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="edge35" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.67,-1195.9C352.06,-1187.3 503.8,-1174.3 605.14,-1165.6"/>
<polygon fill="#000000" stroke="#000000" points="605.7345,-1169.0614 615.39,-1164.7 605.1222,-1162.0882 605.7345,-1169.0614"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node37" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node37"><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,-1292 624,-1292 624,-1288 620,-1288 620,-1284 624,-1284 624,-1217 620,-1217 620,-1213 624,-1213 624,-1209 798,-1209 798,-1292"/>
<polyline fill="none" stroke="#000000" points="624,-1288 628,-1288 628,-1284 624,-1284 "/>
<polyline fill="none" stroke="#000000" points="624,-1217 628,-1217 628,-1213 624,-1213 "/>
<text text-anchor="middle" x="711" y="-1276.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="711" y="-1261.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="711" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="711" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="711" y="-1216.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="edge36" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M560.02,-1244C577.7,-1244.8 595.97,-1245.6 613.43,-1246.3"/>
<polygon fill="#000000" stroke="#000000" points="613.4503,-1249.8051 623.61,-1246.8 613.7938,-1242.8136 613.4503,-1249.8051"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node38" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node38"><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,-1222.5 855,-1222.5 855,-1218.5 851,-1218.5 851,-1214.5 855,-1214.5 855,-1192.5 851,-1192.5 851,-1188.5 855,-1188.5 855,-1184.5 1073,-1184.5 1073,-1222.5"/>
<polyline fill="none" stroke="#000000" points="855,-1218.5 859,-1218.5 859,-1214.5 855,-1214.5 "/>
<polyline fill="none" stroke="#000000" points="855,-1192.5 859,-1192.5 859,-1188.5 855,-1188.5 "/>
<text text-anchor="middle" x="964" y="-1207.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="964" y="-1192.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="edge37" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M806.65,-1174.3C821.2,-1177 836.33,-1179.8 851.21,-1182.5"/>
<polygon fill="#000000" stroke="#000000" points="850.9748,-1186.02 861.46,-1184.5 852.3154,-1179.1496 850.9748,-1186.02"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge38" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M798.07,-1234.3C815.31,-1231.1 833.65,-1227.7 851.6,-1224.4"/>
<polygon fill="#000000" stroke="#000000" points="852.3569,-1227.8187 861.52,-1222.5 851.0401,-1220.9437 852.3569,-1227.8187"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node39" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node39"><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,-1237.5 1122,-1237.5 1122,-1233.5 1118,-1233.5 1118,-1229.5 1122,-1229.5 1122,-1177.5 1118,-1177.5 1118,-1173.5 1122,-1173.5 1122,-1169.5 1311,-1169.5 1311,-1237.5"/>
<polyline fill="none" stroke="#000000" points="1122,-1233.5 1126,-1233.5 1126,-1229.5 1122,-1229.5 "/>
<polyline fill="none" stroke="#000000" points="1122,-1177.5 1126,-1177.5 1126,-1173.5 1122,-1173.5 "/>
<text text-anchor="middle" x="1216.5" y="-1222.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1216.5" y="-1207.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1216.5" y="-1192.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1216.5" y="-1177.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="edge39" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1073.3,-1203.5C1086,-1203.5 1099,-1203.5 1111.6,-1203.5"/>
<polygon fill="#000000" stroke="#000000" points="1111.7,-1207.0001 1121.7,-1203.5 1111.7,-1200.0001 1111.7,-1207.0001"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node40" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node40"><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,-1348.5 56,-1348.5 56,-1344.5 52,-1344.5 52,-1340.5 56,-1340.5 56,-1318.5 52,-1318.5 52,-1314.5 56,-1314.5 56,-1310.5 249,-1310.5 249,-1348.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1344.5 60,-1344.5 60,-1340.5 56,-1340.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1318.5 60,-1318.5 60,-1314.5 56,-1314.5 "/>
<text text-anchor="middle" x="152.5" y="-1333.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-1318.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="node41" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node41"><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,-1348.5 357.5,-1348.5 357.5,-1344.5 353.5,-1344.5 353.5,-1340.5 357.5,-1340.5 357.5,-1318.5 353.5,-1318.5 353.5,-1314.5 357.5,-1314.5 357.5,-1310.5 550.5,-1310.5 550.5,-1348.5"/>
<polyline fill="none" stroke="#000000" points="357.5,-1344.5 361.5,-1344.5 361.5,-1340.5 357.5,-1340.5 "/>
<polyline fill="none" stroke="#000000" points="357.5,-1318.5 361.5,-1318.5 361.5,-1314.5 357.5,-1314.5 "/>
<text text-anchor="middle" x="454" y="-1333.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="454" y="-1318.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="edge40" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.14,-1329.5C280.38,-1329.5 315.19,-1329.5 347.13,-1329.5"/>
<polygon fill="#000000" stroke="#000000" points="347.39,-1333.0001 357.39,-1329.5 347.39,-1326.0001 347.39,-1333.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node42" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node42"><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,-1348.5 614.5,-1348.5 614.5,-1344.5 610.5,-1344.5 610.5,-1340.5 614.5,-1340.5 614.5,-1318.5 610.5,-1318.5 610.5,-1314.5 614.5,-1314.5 614.5,-1310.5 807.5,-1310.5 807.5,-1348.5"/>
<polyline fill="none" stroke="#000000" points="614.5,-1344.5 618.5,-1344.5 618.5,-1340.5 614.5,-1340.5 "/>
<polyline fill="none" stroke="#000000" points="614.5,-1318.5 618.5,-1318.5 618.5,-1314.5 614.5,-1314.5 "/>
<text text-anchor="middle" x="711" y="-1333.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="711" y="-1318.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="edge41" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M550.79,-1329.5C568.16,-1329.5 586.35,-1329.5 603.98,-1329.5"/>
<polygon fill="#000000" stroke="#000000" points="604.29,-1333.0001 614.29,-1329.5 604.29,-1326.0001 604.29,-1333.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node43" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node43"><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="#a6cfff" stroke="#000000" points="1056.5,-406 871.5,-406 871.5,-353 1056.5,-353 1056.5,-406"/>
<text text-anchor="middle" x="964" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="964" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="964" y="-360.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="edge42" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1053.4,-352.95C1074.2,-346.78 1096.4,-340.17 1117.6,-333.88"/>
<polygon fill="#000000" stroke="#000000" points="1118.6215,-337.2277 1127.2,-331.01 1116.6165,-330.521 1118.6215,-337.2277"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node44" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node44"><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,-417.5 1115.5,-417.5 1115.5,-349.5 1317.5,-349.5 1317.5,-417.5"/>
<text text-anchor="middle" x="1216.5" y="-402.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="1216.5" y="-387.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="1216.5" y="-372.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="1216.5" y="-357.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="edge43" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M1056.6,-380.97C1072.4,-381.22 1089.1,-381.48 1105.3,-381.74"/>
<polygon fill="#000000" stroke="#000000" points="1105.3458,-385.2411 1115.4,-381.9 1105.4567,-378.2419 1105.3458,-385.2411"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge44" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1317.5,-386.32C1330.2,-386.67 1343.2,-387.03 1356.1,-387.39"/>
<polygon fill="#000000" stroke="#000000" points="1356.2045,-390.8943 1366.3,-387.68 1356.4035,-383.8971 1356.2045,-390.8943"/>
</g>
<!-- zcash/zips#364 -->
<g id="node45" class="node">
<title>zcash/zips#364</title>
<g id="a_node45"><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="#a6cfff" stroke="#000000" stroke-width="2" points="813.5,-406 608.5,-406 608.5,-353 813.5,-353 813.5,-406"/>
<text text-anchor="middle" x="711" y="-390.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="711" y="-375.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="711" y="-360.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="edge45" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M813.54,-379.5C829.16,-379.5 845.28,-379.5 860.91,-379.5"/>
<polygon fill="#000000" stroke="#000000" points="861.1,-383.0001 871.1,-379.5 861.1,-376.0001 861.1,-383.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node46" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node46"><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,-1420 61.5,-1420 61.5,-1367 243.5,-1367 243.5,-1420"/>
<text text-anchor="middle" x="152.5" y="-1404.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="152.5" y="-1389.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="152.5" y="-1374.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node47" class="node">
<title>zcash/zips#511</title>
<g id="a_node47"><a xlink:href="https://github.com/zcash/zips/issues/511" xlink:title="zcash/zips#511&#10;ZIP 32: Document standard&#10;key structure for Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1324,-503.5 1109,-503.5 1109,-435.5 1324,-435.5 1324,-503.5"/>
<text text-anchor="middle" x="1216.5" y="-488.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="1216.5" y="-473.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="1216.5" y="-458.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="1216.5" y="-443.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="edge46" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1324,-435.65C1334.7,-432.29 1345.6,-428.86 1356.3,-425.49"/>
<polygon fill="#000000" stroke="#000000" points="1357.6154,-428.7452 1366.1,-422.4 1355.5103,-422.0692 1357.6154,-428.7452"/>
</g>
<!-- zcash/librustzcash#387 -->
<g id="node48" class="node">
<title>zcash/librustzcash#387</title>
<g id="a_node48"><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,-496 1360,-496 1360,-443 1575,-443 1575,-496"/>
<text text-anchor="middle" x="1467.5" y="-480.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#387</text>
<text text-anchor="middle" x="1467.5" y="-465.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1467.5" y="-450.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="edge47" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/librustzcash#387</title>
<path fill="none" stroke="#000000" d="M1324,-469.5C1332.6,-469.5 1341.2,-469.5 1349.8,-469.5"/>
<polygon fill="#000000" stroke="#000000" points="1349.8,-473.0001 1359.8,-469.5 1349.8,-466.0001 1349.8,-473.0001"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node49" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node49"><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,-1491 51,-1491 51,-1438 254,-1438 254,-1491"/>
<text text-anchor="middle" x="152.5" y="-1475.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="152.5" y="-1460.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="152.5" y="-1445.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5196 -->
<g id="node50" class="node">
<title>zcash/zcash#5196</title>
<g id="a_node50"><a xlink:href="https://github.com/zcash/zcash/issues/5196" xlink:title="zcash/zcash#5196&#10;Implement v5 transaction&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1065.5,-786 862.5,-786 862.5,-733 1065.5,-733 1065.5,-786"/>
<text text-anchor="middle" x="964" y="-770.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5196</text>
<text text-anchor="middle" x="964" y="-755.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement v5 transaction</text>
<text text-anchor="middle" x="964" y="-740.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5196&#45;&gt;zcash/zcash#5024 -->
<g id="edge48" class="edge">
<title>zcash/zcash#5196&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1065.6,-775.6C1077,-777.39 1088.6,-779.23 1100.1,-781.06"/>
<polygon fill="#000000" stroke="#000000" points="1099.6744,-784.5362 1110.1,-782.65 1100.7737,-777.6231 1099.6744,-784.5362"/>
</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,-1622 54.5,-1622 54.5,-1509 250.5,-1509 250.5,-1622"/>
<text text-anchor="middle" x="152.5" y="-1606.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5198</text>
<text text-anchor="middle" x="152.5" y="-1591.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch to a `(txid,</text>
<text text-anchor="middle" x="152.5" y="-1576.8" font-family="Times,serif" font-size="14.00" fill="#000000">auth_digest)` identifier</text>
<text text-anchor="middle" x="152.5" y="-1561.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="-1546.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="-1531.8" font-family="Times,serif" font-size="14.00" fill="#000000">specific instance of a</text>
<text text-anchor="middle" x="152.5" y="-1516.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,-1723 58,-1723 58,-1640 247,-1640 247,-1723"/>
<text text-anchor="middle" x="152.5" y="-1707.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5199</text>
<text text-anchor="middle" x="152.5" y="-1692.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 239] Relay v5+</text>
<text text-anchor="middle" x="152.5" y="-1677.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions with a</text>
<text text-anchor="middle" x="152.5" y="-1662.8" font-family="Times,serif" font-size="14.00" fill="#000000">(txid, auth_digest) tuple</text>
<text text-anchor="middle" x="152.5" y="-1647.8" font-family="Times,serif" font-size="14.00" fill="#000000">(or digest thereof)</text>
</a>
</g>
</g>
<!-- zcash/zips#506 -->
<g id="node53" class="node">
<title>zcash/zips#506</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash/zips/issues/506" xlink:title="zcash/zips#506&#10;Orchard anchor should be&#10;a base field element, not&#10;a bitstring" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="556,-875.5 352,-875.5 352,-807.5 556,-807.5 556,-875.5"/>
<text text-anchor="middle" x="454" y="-860.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#506</text>
<text text-anchor="middle" x="454" y="-845.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard anchor should be</text>
<text text-anchor="middle" x="454" y="-830.3" font-family="Times,serif" font-size="14.00" fill="#000000">a base field element, not</text>
<text text-anchor="middle" x="454" y="-815.3" font-family="Times,serif" font-size="14.00" fill="#000000">a bitstring</text>
</a>
</g>
</g>
<!-- zcash/zips#506&#45;&gt;zcash/zcash#4707 -->
<g id="edge49" class="edge">
<title>zcash/zips#506&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M556.31,-843.09C576.1,-843.4 596.75,-843.72 616.28,-844.03"/>
<polygon fill="#000000" stroke="#000000" points="616.3291,-847.531 626.38,-844.18 616.4331,-840.5318 616.3291,-847.531"/>
</g>
<!-- zcash/zcash#5223 -->
<g id="node54" class="node">
<title>zcash/zcash#5223</title>
<g id="a_node54"><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,-1809.5 58.5,-1809.5 58.5,-1741.5 246.5,-1741.5 246.5,-1809.5"/>
<text text-anchor="middle" x="152.5" y="-1794.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5223</text>
<text text-anchor="middle" x="152.5" y="-1779.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="-1764.3" font-family="Times,serif" font-size="14.00" fill="#000000">checks the auth data</text>
<text text-anchor="middle" x="152.5" y="-1749.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitments for v4 txs</text>
</a>
</g>
</g>
<!-- zcash/orchard#54 -->
<g id="node55" class="node">
<title>zcash/orchard#54</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/orchard/pull/54" xlink:title="zcash/orchard#54&#10;[book] Document ECC&#10;gadget in circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="542.5,-947 365.5,-947 365.5,-943 361.5,-943 361.5,-939 365.5,-939 365.5,-902 361.5,-902 361.5,-898 365.5,-898 365.5,-894 542.5,-894 542.5,-947"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="365.5,-943 369.5,-943 369.5,-939 365.5,-939 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="365.5,-902 369.5,-902 369.5,-898 365.5,-898 "/>
<text text-anchor="middle" x="454" y="-931.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#54</text>
<text text-anchor="middle" x="454" y="-916.8" font-family="Times,serif" font-size="14.00" fill="#000000">[book] Document ECC</text>
<text text-anchor="middle" x="454" y="-901.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget in circuit</text>
</a>
</g>
</g>
<!-- zcash/orchard#54&#45;&gt;zcash/zcash#4707 -->
<g id="edge50" class="edge">
<title>zcash/orchard#54&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M542.8,-894.58C566.52,-887.66 592.24,-880.16 616.27,-873.15"/>
<polygon fill="#000000" stroke="#000000" points="617.4734,-876.4448 626.09,-870.28 615.5097,-869.7259 617.4734,-876.4448"/>
</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="#c2e0c6" stroke="#000000" points="819,-801 603,-801 603,-748 819,-748 819,-801"/>
<text text-anchor="middle" x="711" y="-785.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="711" y="-770.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="711" y="-755.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="edge51" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M816.1,-801.09C828.2,-804.15 840.58,-807.28 852.76,-810.36"/>
<polygon fill="#000000" stroke="#000000" points="851.9269,-813.7594 862.48,-812.82 853.6444,-806.9734 851.9269,-813.7594"/>
</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="#c2e0c6" stroke="#000000" stroke-width="2" points="305,-861 0,-861 0,-808 305,-808 305,-861"/>
<text text-anchor="middle" x="152.5" y="-845.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="-830.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard Merkle path test</text>
<text text-anchor="middle" x="152.5" y="-815.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="edge52" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M187.33,-807.9C223.96,-780.91 284.08,-739.4 341,-712.5 345.09,-710.57 349.31,-708.7 353.61,-706.91"/>
<polygon fill="#000000" stroke="#000000" points="355.1515,-710.0624 363.12,-703.08 352.5365,-703.5692 355.1515,-710.0624"/>
</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="#c2e0c6" stroke="#000000" points="547.5,-1018 360.5,-1018 360.5,-965 547.5,-965 547.5,-1018"/>
<text text-anchor="middle" x="454" y="-1002.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#95</text>
<text text-anchor="middle" x="454" y="-987.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Merkle path</text>
<text text-anchor="middle" x="454" y="-972.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="edge53" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#36&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M187.7,-861.12C224.39,-887.87 284.34,-928.86 341,-955.5 345.09,-957.42 349.32,-959.28 353.62,-961.08"/>
<polygon fill="#000000" stroke="#000000" points="352.5456,-964.4199 363.13,-964.89 355.1489,-957.922 352.5456,-964.4199"/>
</g>
<!-- zcash/orchard#95&#45;&gt;zcash/orchard#4 -->
<g id="edge54" class="edge">
<title>zcash/orchard#95&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M547.51,-991.5C569.19,-991.5 592.31,-991.5 614.14,-991.5"/>
<polygon fill="#000000" stroke="#000000" points="614.4,-995.0001 624.4,-991.5 614.4,-988.0001 614.4,-995.0001"/>
</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,-552 874.5,-552 874.5,-499 1053.5,-499 1053.5,-552"/>
<text text-anchor="middle" x="964" y="-536.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="964" y="-521.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="964" y="-506.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,-575 1111.5,-575 1111.5,-522 1321.5,-522 1321.5,-575"/>
<text text-anchor="middle" x="1216.5" y="-559.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1216.5" y="-544.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="-529.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="edge55" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1053.7,-533.67C1069,-535.06 1085,-536.52 1100.8,-537.96"/>
<polygon fill="#000000" stroke="#000000" points="1100.8233,-541.4766 1111.1,-538.9 1101.4595,-534.5056 1100.8233,-541.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,-629 630.5,-629 630.5,-546 791.5,-546 791.5,-629"/>
<text text-anchor="middle" x="711" y="-613.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="711" y="-598.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="711" y="-583.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="711" y="-568.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="711" y="-553.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,-628.5 352,-628.5 352,-560.5 556,-560.5 556,-628.5"/>
<text text-anchor="middle" x="454" y="-613.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="454" y="-598.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="454" y="-583.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="454" y="-568.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="edge56" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M556.31,-591.71C577.48,-591.14 599.65,-590.53 620.37,-589.97"/>
<polygon fill="#000000" stroke="#000000" points="620.5077,-593.4677 630.41,-589.7 620.3195,-586.4702 620.5077,-593.4677"/>
</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,-528 614,-528 614,-475 808,-475 808,-528"/>
<text text-anchor="middle" x="711" y="-512.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="711" y="-497.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="711" y="-482.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="edge57" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M544.15,-560.48C551.89,-557.48 559.59,-554.45 567,-551.5 583.1,-545.08 586.74,-542.51 603,-536.5 607.56,-534.82 612.23,-533.13 616.97,-531.46"/>
<polygon fill="#000000" stroke="#000000" points="618.4478,-534.6521 626.75,-528.07 616.1552,-528.0382 618.4478,-534.6521"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge58" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M808.09,-510.71C826.43,-512.45 845.65,-514.27 864.08,-516.02"/>
<polygon fill="#000000" stroke="#000000" points="863.9346,-519.5218 874.22,-516.98 864.5944,-512.553 863.9346,-519.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,-1895.5 81,-1895.5 81,-1827.5 224,-1827.5 224,-1895.5"/>
<text text-anchor="middle" x="152.5" y="-1880.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-1865.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-1850.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-1835.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,-1997 56,-1997 56,-1914 249,-1914 249,-1997"/>
<text text-anchor="middle" x="152.5" y="-1981.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-1966.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-1951.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="-1936.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-1921.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,-456 352.5,-456 352.5,-403 555.5,-403 555.5,-456"/>
<text text-anchor="middle" x="454" y="-440.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="454" y="-425.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="454" y="-410.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="edge59" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M548.6,-456C567.46,-461.29 587.36,-466.86 606.53,-472.23"/>
<polygon fill="#000000" stroke="#000000" points="605.5966,-475.6032 616.17,-474.93 607.4846,-468.8626 605.5966,-475.6032"/>
</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,-384.5 361.5,-384.5 361.5,-316.5 546.5,-316.5 546.5,-384.5"/>
<text text-anchor="middle" x="454" y="-369.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="454" y="-354.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="454" y="-339.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="454" y="-324.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="edge60" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M546.56,-383.25C553.58,-386.48 560.47,-389.9 567,-393.5 605.36,-414.64 644.89,-445 672.8,-468.16"/>
<polygon fill="#000000" stroke="#000000" points="670.7977,-471.0486 680.71,-474.79 675.2944,-465.6838 670.7977,-471.0486"/>
</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,-291 63,-291 63,-238 242,-238 242,-291"/>
<text text-anchor="middle" x="152.5" y="-275.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="152.5" y="-260.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="152.5" y="-245.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,-298.5 366,-298.5 366,-230.5 542,-230.5 542,-298.5"/>
<text text-anchor="middle" x="454" y="-283.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="454" y="-268.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="454" y="-253.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="454" y="-238.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="edge61" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M242.14,-264.5C277.92,-264.5 319.23,-264.5 355.81,-264.5"/>
<polygon fill="#000000" stroke="#000000" points="356,-268.0001 366,-264.5 356,-261.0001 356,-268.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge62" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M542.18,-288.84C551.33,-293.94 559.87,-300.09 567,-307.5 601.78,-343.67 574.31,-373.33 603,-414.5 617.75,-435.67 639.09,-454.37 658.9,-468.95"/>
<polygon fill="#000000" stroke="#000000" points="657.1093,-471.9722 667.28,-474.94 661.1799,-466.2774 657.1093,-471.9722"/>
</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="#c2e0c6" stroke="#000000" stroke-width="2" points="557,-789.5 351,-789.5 351,-721.5 557,-721.5 557,-789.5"/>
<text text-anchor="middle" x="454" y="-774.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="454" y="-759.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="454" y="-744.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="-729.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="edge63" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M557.05,-763.12C568.83,-763.99 580.91,-764.88 592.87,-765.77"/>
<polygon fill="#000000" stroke="#000000" points="592.6491,-769.2631 602.88,-766.51 593.1653,-762.2822 592.6491,-769.2631"/>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge64" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M557.15,-721.29C560.7,-718.29 564.01,-715.04 567,-711.5 618.23,-650.83 550.04,-595.66 603,-536.5 604.03,-535.35 605.09,-534.24 606.19,-533.17"/>
<polygon fill="#000000" stroke="#000000" points="608.567,-535.7431 613.92,-526.6 604.0337,-530.4094 608.567,-535.7431"/>
</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,-542.5 345,-542.5 345,-474.5 563,-474.5 563,-542.5"/>
<text text-anchor="middle" x="454" y="-527.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="454" y="-512.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="454" y="-497.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="454" y="-482.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="edge65" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M563.36,-505.52C576.75,-505.16 590.43,-504.78 603.79,-504.42"/>
<polygon fill="#000000" stroke="#000000" points="604.0305,-507.9148 613.93,-504.14 603.8372,-500.9175 604.0305,-507.9148"/>
</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,-2068 55,-2068 55,-2015 250,-2015 250,-2068"/>
<text text-anchor="middle" x="152.5" y="-2052.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#312</text>
<text text-anchor="middle" x="152.5" y="-2037.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Book] Document gadget</text>
<text text-anchor="middle" x="152.5" y="-2022.8" font-family="Times,serif" font-size="14.00" fill="#000000">API</text>
</a>
</g>
</g>
<!-- zcash/orchard#38 -->
<g id="node73" class="node">
<title>zcash/orchard#38</title>
<g id="a_node73"><a xlink:href="https://github.com/zcash/orchard/issues/38" xlink:title="zcash/orchard#38&#10;Implement generic ECC&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="248,-1089 57,-1089 57,-1036 248,-1036 248,-1089"/>
<text text-anchor="middle" x="152.5" y="-1073.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="152.5" y="-1058.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="152.5" y="-1043.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#96 -->
<g id="node74" class="node">
<title>zcash/orchard#96</title>
<g id="a_node74"><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,-1089 367.5,-1089 367.5,-1036 540.5,-1036 540.5,-1089"/>
<text text-anchor="middle" x="454" y="-1073.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#96</text>
<text text-anchor="middle" x="454" y="-1058.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="454" y="-1043.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/orchard#96 -->
<g id="edge66" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#96</title>
<path fill="none" stroke="#000000" d="M248.31,-1062.5C283.07,-1062.5 322.35,-1062.5 357.2,-1062.5"/>
<polygon fill="#000000" stroke="#000000" points="357.38,-1066.0001 367.38,-1062.5 357.38,-1059.0001 357.38,-1066.0001"/>
</g>
<!-- zcash/orchard#96&#45;&gt;zcash/orchard#4 -->
<g id="edge67" class="edge">
<title>zcash/orchard#96&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M540.65,-1038.6C564.34,-1032 590.17,-1024.9 614.38,-1018.2"/>
<polygon fill="#000000" stroke="#000000" points="615.5618,-1021.5057 624.29,-1015.5 613.7216,-1014.7519 615.5618,-1021.5057"/>
</g>
</g>
</svg>