developers/zcash-core-dag.svg

1530 lines
109 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="2268pt" height="1957pt"
viewBox="0.00 0.00 2268.00 1957.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 1953)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1953 2264,-1953 2264,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,-314.5 58.5,-314.5 58.5,-276.5 246.5,-276.5 246.5,-314.5"/>
<text text-anchor="middle" x="152.5" y="-299.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="152.5" y="-284.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="589.5,-322 397.5,-322 397.5,-269 589.5,-269 589.5,-322"/>
<text text-anchor="middle" x="493.5" y="-306.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="493.5" y="-291.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="493.5" y="-276.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.58,-295.5C290.2,-295.5 342.24,-295.5 387.26,-295.5"/>
<polygon fill="#000000" stroke="#000000" points="387.35,-299.0001 397.35,-295.5 387.35,-292.0001 387.35,-299.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,-571 59.5,-571 59.5,-518 245.5,-518 245.5,-571"/>
<text text-anchor="middle" x="152.5" y="-555.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-540.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-525.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="1139.5,-720 966.5,-720 966.5,-667 1139.5,-667 1139.5,-720"/>
<text text-anchor="middle" x="1053" y="-704.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="1053" y="-689.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="1053" y="-674.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="1452,-676.5 1249,-676.5 1249,-608.5 1452,-608.5 1452,-676.5"/>
<text text-anchor="middle" x="1350.5" y="-661.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="1350.5" y="-646.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1350.5" y="-631.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules as an NU</text>
<text text-anchor="middle" x="1350.5" y="-616.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="M1139.8,-678.61C1170.8,-673.31 1206.1,-667.26 1238.8,-661.65"/>
<polygon fill="#000000" stroke="#000000" points="1239.538,-665.0745 1248.8,-659.93 1238.3514,-658.1758 1239.538,-665.0745"/>
</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="#fad8c7" stroke="#000000" points="1433,-590 1268,-590 1268,-537 1433,-537 1433,-590"/>
<text text-anchor="middle" x="1350.5" y="-574.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="1350.5" y="-559.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="1350.5" y="-544.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="M1139.6,-671.35C1147.5,-667.44 1155.2,-662.86 1162,-657.5 1185.8,-638.73 1173.4,-617.22 1198,-599.5 1215.5,-586.88 1236.9,-578.63 1258,-573.25"/>
<polygon fill="#000000" stroke="#000000" points="1258.9787,-576.615 1267.9,-570.9 1257.362,-569.8043 1258.9787,-576.615"/>
</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="#c2e0c6" stroke="#000000" points="1451,-800.5 1250,-800.5 1250,-732.5 1451,-732.5 1451,-800.5"/>
<text text-anchor="middle" x="1350.5" y="-785.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5195</text>
<text text-anchor="middle" x="1350.5" y="-770.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard proof</text>
<text text-anchor="middle" x="1350.5" y="-755.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification consensus</text>
<text text-anchor="middle" x="1350.5" y="-740.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="M1139.8,-714.81C1171.2,-722.51 1207.1,-731.31 1240.2,-739.43"/>
<polygon fill="#000000" stroke="#000000" points="1239.353,-742.8259 1249.9,-741.82 1241.0277,-736.0292 1239.353,-742.8259"/>
</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 Orchard&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1726,-1151 1567,-1151 1567,-1098 1726,-1098 1726,-1151"/>
<text text-anchor="middle" x="1646.5" y="-1135.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1646.5" y="-1120.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1646.5" y="-1105.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus 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="M1441,-676.63C1463.7,-688.64 1486.2,-704.11 1503,-723.5 1598.2,-833.53 1631.8,-1011.3 1642.3,-1087.7"/>
<polygon fill="#000000" stroke="#000000" points="1638.852,-1088.3287 1643.6,-1097.8 1645.7947,-1087.435 1638.852,-1088.3287"/>
</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="1740.5,-590 1552.5,-590 1552.5,-537 1740.5,-537 1740.5,-590"/>
<text text-anchor="middle" x="1646.5" y="-574.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1646.5" y="-559.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1646.5" y="-544.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="M1433.3,-563.5C1467,-563.5 1506.4,-563.5 1542,-563.5"/>
<polygon fill="#000000" stroke="#000000" points="1542.5,-567.0001 1552.5,-563.5 1542.5,-560.0001 1542.5,-567.0001"/>
</g>
<!-- zcash/zcash#5195&#45;&gt;zcash/zcash#5024 -->
<g id="edge7" class="edge">
<title>zcash/zcash#5195&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1451.1,-781.49C1469.8,-787.81 1488.2,-796.78 1503,-809.5 1589.8,-883.97 1626.9,-1021.8 1640.2,-1087.6"/>
<polygon fill="#000000" stroke="#000000" points="1636.7948,-1088.4291 1642.1,-1097.6 1643.6718,-1087.1224 1636.7948,-1088.4291"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node10" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node10"><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="2002,-592.5 1793,-592.5 1793,-524.5 2002,-524.5 2002,-592.5"/>
<text text-anchor="middle" x="1897.5" y="-577.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1897.5" y="-562.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1897.5" y="-547.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1897.5" y="-532.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="edge8" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1740.7,-561.62C1754.3,-561.35 1768.5,-561.07 1782.5,-560.79"/>
<polygon fill="#000000" stroke="#000000" points="1782.7706,-564.2855 1792.7,-560.59 1782.6333,-557.2868 1782.7706,-564.2855"/>
</g>
<!-- zcash/zcash#4707 -->
<g id="node11" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node11"><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="1137.5,-850 968.5,-850 968.5,-797 1137.5,-797 1137.5,-850"/>
<text text-anchor="middle" x="1053" y="-834.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="1053" y="-819.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="1053" y="-804.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="edge9" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M1085.2,-796.84C1107.3,-778.21 1137,-752.48 1162,-728.5 1178.8,-712.39 1178.3,-702.83 1198,-690.5 1210.7,-682.53 1224.9,-675.79 1239.3,-670.11"/>
<polygon fill="#000000" stroke="#000000" points="1240.7533,-673.3036 1248.9,-666.53 1238.3073,-666.7448 1240.7533,-673.3036"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node12" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node12"><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,-1255 55,-1255 55,-1202 250,-1202 250,-1255"/>
<text text-anchor="middle" x="152.5" y="-1239.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-1224.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-1209.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/orchard#33 -->
<g id="node13" class="node">
<title>zcash/orchard#33</title>
<g id="a_node13"><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" stroke-width="2" points="908,-1262 682,-1262 682,-1209 908,-1209 908,-1262"/>
<text text-anchor="middle" x="795" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="795" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="795" y="-1216.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node14" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node14"><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="1139,-1277 967,-1277 967,-1194 1139,-1194 1139,-1277"/>
<text text-anchor="middle" x="1053" y="-1261.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="1053" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1053" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="1053" y="-1216.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="1053" y="-1201.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="edge10" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M908.16,-1235.5C924.27,-1235.5 940.71,-1235.5 956.45,-1235.5"/>
<polygon fill="#000000" stroke="#000000" points="956.69,-1239.0001 966.69,-1235.5 956.69,-1232.0001 956.69,-1239.0001"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node15" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/zcash/issues/5037" xlink:title="zcash/zcash#5037&#10;Add Orchard metadata to&#10;history trees" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1450.5,-1333 1250.5,-1333 1250.5,-1280 1450.5,-1280 1450.5,-1333"/>
<text text-anchor="middle" x="1350.5" y="-1317.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="1350.5" y="-1302.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="1350.5" y="-1287.8" font-family="Times,serif" font-size="14.00" fill="#000000">history trees</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5037 -->
<g id="edge11" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M1139.2,-1256.4C1158.6,-1261.1 1179,-1266 1198,-1270.5 1211.8,-1273.8 1226.2,-1277.2 1240.5,-1280.6"/>
<polygon fill="#000000" stroke="#000000" points="1239.8673,-1284.0462 1250.4,-1282.9 1241.4515,-1277.2278 1239.8673,-1284.0462"/>
</g>
<!-- zcash/zcash#5197 -->
<g id="node16" class="node">
<title>zcash/zcash#5197</title>
<g id="a_node16"><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="1438.5,-1262 1262.5,-1262 1262.5,-1209 1438.5,-1209 1438.5,-1262"/>
<text text-anchor="middle" x="1350.5" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5197</text>
<text text-anchor="middle" x="1350.5" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 block</text>
<text text-anchor="middle" x="1350.5" y="-1216.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="edge12" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M1139,-1235.5C1174.4,-1235.5 1215.6,-1235.5 1252.1,-1235.5"/>
<polygon fill="#000000" stroke="#000000" points="1252.3,-1239.0001 1262.3,-1235.5 1252.3,-1232.0001 1252.3,-1239.0001"/>
</g>
<!-- zcash/zcash#5037&#45;&gt;zcash/zcash#5024 -->
<g id="edge13" class="edge">
<title>zcash/zcash#5037&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1450.8,-1291.3C1468.8,-1286.3 1487,-1279.5 1503,-1270.5 1552.4,-1242.7 1595.9,-1192.9 1621.7,-1159.2"/>
<polygon fill="#000000" stroke="#000000" points="1624.6011,-1161.1682 1627.9,-1151.1 1619.0425,-1156.9135 1624.6011,-1161.1682"/>
</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="M1438.7,-1218.6C1460.1,-1213.5 1482.6,-1207.1 1503,-1199.5 1534.2,-1187.9 1567.3,-1170.9 1593.9,-1156.1"/>
<polygon fill="#000000" stroke="#000000" points="1595.6739,-1159.1174 1602.6,-1151.1 1592.1858,-1153.0483 1595.6739,-1159.1174"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node17" class="node">
<title>zcash/orchard#32</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/orchard/issues/32" xlink:title="zcash/orchard#32&#10;Implement note encryption&#10;for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="1159,-477 947,-477 947,-424 1159,-424 1159,-477"/>
<text text-anchor="middle" x="1053" y="-461.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="1053" y="-446.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="1053" y="-431.8" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/orchard#35 -->
<g id="edge15" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1146.6,-477.09C1151.9,-479.67 1157.1,-482.46 1162,-485.5 1181.5,-497.59 1178.2,-510.88 1198,-522.5 1216.3,-533.22 1237.4,-541.21 1258,-547.13"/>
<polygon fill="#000000" stroke="#000000" points="1257.1304,-550.5207 1267.7,-549.79 1258.9817,-543.7699 1257.1304,-550.5207"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node18" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node18"><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="1993.5,-502.5 1801.5,-502.5 1801.5,-434.5 1993.5,-434.5 1993.5,-502.5"/>
<text text-anchor="middle" x="1897.5" y="-487.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1897.5" y="-472.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1897.5" y="-457.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1897.5" y="-442.3" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/zcash#5020 -->
<g id="edge16" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M1139.7,-477.08C1158.7,-481.83 1178.9,-486.04 1198,-488.5 1443.1,-520.08 1507.5,-505.6 1754,-488.5 1766.1,-487.66 1778.7,-486.43 1791.2,-484.99"/>
<polygon fill="#000000" stroke="#000000" points="1791.6883,-488.4566 1801.2,-483.79 1790.8542,-481.5065 1791.6883,-488.4566"/>
</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="1738,-480 1555,-480 1555,-427 1738,-427 1738,-480"/>
<text text-anchor="middle" x="1646.5" y="-464.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="1646.5" y="-449.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="1646.5" y="-434.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="edge18" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1710.2,-480.13C1739.4,-492.35 1774.5,-507.07 1806.5,-520.43"/>
<polygon fill="#000000" stroke="#000000" points="1805.2251,-523.6907 1815.8,-524.34 1807.9381,-517.2378 1805.2251,-523.6907"/>
</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="M1738.2,-458.98C1755.4,-460.01 1773.5,-461.09 1791.1,-462.14"/>
<polygon fill="#000000" stroke="#000000" points="1791.2077,-465.6527 1801.4,-462.76 1791.6284,-458.6654 1791.2077,-465.6527"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node20" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node20"><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="1998.5,-408.5 1796.5,-408.5 1796.5,-340.5 1998.5,-340.5 1998.5,-408.5"/>
<text text-anchor="middle" x="1897.5" y="-393.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1897.5" y="-378.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1897.5" y="-363.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1897.5" y="-348.3" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5179 -->
<g id="edge19" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1730.8,-426.97C1748.7,-421.33 1767.9,-415.28 1786.7,-409.37"/>
<polygon fill="#000000" stroke="#000000" points="1788.0036,-412.6294 1796.5,-406.3 1785.911,-405.9495 1788.0036,-412.6294"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node21" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node21"><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="2260,-322.5 2041,-322.5 2041,-284.5 2260,-284.5 2260,-322.5"/>
<text text-anchor="middle" x="2150.5" y="-307.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="2150.5" y="-292.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC: z_getnewaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5178 -->
<g id="edge20" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1998.9,-343.56C2013,-339.42 2027.3,-335.29 2041,-331.5 2048.7,-329.37 2056.6,-327.22 2064.6,-325.1"/>
<polygon fill="#000000" stroke="#000000" points="2065.6149,-328.4523 2074.4,-322.53 2063.8392,-321.6812 2065.6149,-328.4523"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node22" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node22"><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="2244,-266 2057,-266 2057,-213 2244,-213 2244,-266"/>
<text text-anchor="middle" x="2150.5" y="-250.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="2150.5" y="-235.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2150.5" y="-220.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaddress</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5182 -->
<g id="edge21" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1980.2,-340.47C1988.9,-335.37 1997.4,-329.71 2005,-323.5 2025.6,-306.63 2019.3,-291.05 2041,-275.5 2043.2,-273.94 2045.4,-272.45 2047.7,-271.02"/>
<polygon fill="#000000" stroke="#000000" points="2049.8607,-273.816 2056.8,-265.81 2046.3826,-267.7412 2049.8607,-273.816"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node23" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node23"><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="2245,-408.5 2056,-408.5 2056,-340.5 2245,-340.5 2245,-408.5"/>
<text text-anchor="middle" x="2150.5" y="-393.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="2150.5" y="-378.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="2150.5" y="-363.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="2150.5" y="-348.3" font-family="Times,serif" font-size="14.00" fill="#000000">account</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5185 -->
<g id="edge22" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1998.6,-374.5C2014.1,-374.5 2030,-374.5 2045.6,-374.5"/>
<polygon fill="#000000" stroke="#000000" points="2045.7,-378.0001 2055.7,-374.5 2045.7,-371.0001 2045.7,-378.0001"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node24" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node24"><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="2244.5,-551 2056.5,-551 2056.5,-498 2244.5,-498 2244.5,-551"/>
<text text-anchor="middle" x="2150.5" y="-535.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="2150.5" y="-520.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2150.5" y="-505.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getaddressforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5180 -->
<g id="edge23" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M1982.6,-408.62C1990.6,-413.64 1998.3,-419.25 2005,-425.5 2028.7,-447.42 2016,-468.11 2041,-488.5 2043.1,-490.19 2045.2,-491.8 2047.4,-493.33"/>
<polygon fill="#000000" stroke="#000000" points="2045.9664,-496.5617 2056.3,-498.9 2049.68,-490.628 2045.9664,-496.5617"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node25" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node25"><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="2244.5,-480 2056.5,-480 2056.5,-427 2244.5,-427 2244.5,-480"/>
<text text-anchor="middle" x="2150.5" y="-464.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="2150.5" y="-449.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2150.5" y="-434.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5183 -->
<g id="edge24" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5183</title>
<path fill="none" stroke="#000000" d="M1998.6,-406.06C2017.5,-411.96 2037.1,-418.09 2055.8,-423.92"/>
<polygon fill="#000000" stroke="#000000" points="2054.8105,-427.2778 2065.4,-426.94 2056.9112,-420.6004 2054.8105,-427.2778"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node26" class="node">
<title>zcash/orchard#36</title>
<g id="a_node26"><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="1447.5,-322.5 1253.5,-322.5 1253.5,-254.5 1447.5,-254.5 1447.5,-322.5"/>
<text text-anchor="middle" x="1350.5" y="-307.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="1350.5" y="-292.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="1350.5" y="-277.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="1350.5" y="-262.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/zcash#5019 -->
<g id="edge25" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1447.5,-310.05C1467.5,-317.82 1487.2,-328.33 1503,-342.5 1530.5,-367.21 1511.3,-393.03 1539,-417.5 1541.3,-419.51 1543.7,-421.42 1546.2,-423.21"/>
<polygon fill="#000000" stroke="#000000" points="1544.7081,-426.4146 1555,-428.93 1548.523,-420.5455 1544.7081,-426.4146"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node27" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node27"><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="1740.5,-236.5 1552.5,-236.5 1552.5,-168.5 1740.5,-168.5 1740.5,-236.5"/>
<text text-anchor="middle" x="1646.5" y="-221.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="1646.5" y="-206.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="1646.5" y="-191.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="1646.5" y="-176.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge26" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M1447.8,-260.22C1478.2,-251.41 1511.7,-241.66 1542.5,-232.72"/>
<polygon fill="#000000" stroke="#000000" points="1543.7757,-235.9941 1552.4,-229.84 1541.8204,-229.2727 1543.7757,-235.9941"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node28" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node28"><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="2005,-236.5 1790,-236.5 1790,-168.5 2005,-168.5 2005,-236.5"/>
<text text-anchor="middle" x="1897.5" y="-221.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1897.5" y="-206.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1897.5" y="-191.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1897.5" y="-176.3" font-family="Times,serif" font-size="14.00" fill="#000000">to KeyIO</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#371&#45;&gt;zcash/zcash#5133 -->
<g id="edge27" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M1740.7,-202.5C1753.3,-202.5 1766.4,-202.5 1779.3,-202.5"/>
<polygon fill="#000000" stroke="#000000" points="1779.7,-206.0001 1789.7,-202.5 1779.7,-199.0001 1779.7,-206.0001"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge28" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1973.5,-236.54C1984.2,-241.7 1994.9,-247.1 2005,-252.5 2021.5,-261.36 2023.8,-267.13 2041,-274.5 2046.6,-276.91 2052.5,-279.16 2058.5,-281.26"/>
<polygon fill="#000000" stroke="#000000" points="2057.4063,-284.5847 2068,-284.43 2059.622,-277.9446 2057.4063,-284.5847"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge29" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M2005.2,-218.24C2019,-220.27 2033.2,-222.34 2047,-224.36"/>
<polygon fill="#000000" stroke="#000000" points="2046.4983,-227.8238 2056.9,-225.81 2047.5128,-220.8977 2046.4983,-227.8238"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge30" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1985.3,-236.56C1992.4,-241.29 1999.1,-246.58 2005,-252.5 2032.2,-279.89 2013,-304.95 2041,-331.5 2043.1,-333.51 2045.3,-335.43 2047.7,-337.26"/>
<polygon fill="#000000" stroke="#000000" points="2045.6562,-340.1014 2055.8,-343.16 2049.7776,-334.4432 2045.6562,-340.1014"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node29" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node29"><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="2235.5,-195 2065.5,-195 2065.5,-142 2235.5,-142 2235.5,-195"/>
<text text-anchor="middle" x="2150.5" y="-179.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="2150.5" y="-164.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2150.5" y="-149.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5181 -->
<g id="edge31" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M2005.2,-188.03C2021.8,-185.8 2038.8,-183.51 2055.1,-181.32"/>
<polygon fill="#000000" stroke="#000000" points="2055.6582,-184.7765 2065.1,-179.97 2054.7216,-177.8394 2055.6582,-184.7765"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node30" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node30"><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="2250.5,-124 2050.5,-124 2050.5,-71 2250.5,-71 2250.5,-124"/>
<text text-anchor="middle" x="2150.5" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="2150.5" y="-93.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="2150.5" y="-78.8" font-family="Times,serif" font-size="14.00" fill="#000000">recipients to z_sendmany</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5184 -->
<g id="edge32" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M1962.3,-168.41C1986.6,-156.28 2014.8,-143.03 2041,-132.5 2045.2,-130.82 2049.5,-129.17 2053.8,-127.55"/>
<polygon fill="#000000" stroke="#000000" points="2055.1976,-130.7661 2063.4,-124.06 2052.8059,-124.1873 2055.1976,-130.7661"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node31" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node31"><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="2235,-53 2066,-53 2066,0 2235,0 2235,-53"/>
<text text-anchor="middle" x="2150.5" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5191</text>
<text text-anchor="middle" x="2150.5" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalance: Return</text>
<text text-anchor="middle" x="2150.5" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">error if given a UA</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5191 -->
<g id="edge33" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5191</title>
<path fill="none" stroke="#000000" d="M1924.2,-168.26C1950.7,-136.45 1994.1,-89.833 2041,-61.5 2046,-58.494 2051.2,-55.719 2056.7,-53.161"/>
<polygon fill="#000000" stroke="#000000" points="2058.192,-56.328 2065.9,-49.059 2055.3414,-49.9347 2058.192,-56.328"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node32" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/zcash/issues/5022" xlink:title="zcash/zcash#5022&#10;Implement ZIP&#45;225&#10;transaction format&#10;changes in zcashd." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1130.5,-1025.5 975.5,-1025.5 975.5,-957.5 1130.5,-957.5 1130.5,-1025.5"/>
<text text-anchor="middle" x="1053" y="-1010.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="1053" y="-995.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="1053" y="-980.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="1053" y="-965.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5195 -->
<g id="edge34" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M1081.7,-957.46C1104,-930.82 1135.5,-892.7 1162,-858.5 1178.6,-837.15 1175.8,-824.89 1198,-809.5 1210.7,-800.7 1225.2,-793.69 1240,-788.1"/>
<polygon fill="#000000" stroke="#000000" points="1241.5357,-791.2696 1249.8,-784.64 1239.2052,-784.6689 1241.5357,-791.2696"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5021 -->
<g id="edge35" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M1088.1,-957.24C1112.1,-931.99 1142.9,-895.7 1162,-858.5 1190.3,-803.24 1151.2,-764.31 1198,-723.5 1301,-633.73 1378,-740.49 1503,-685.5 1548.6,-665.44 1590.8,-626.04 1617.4,-597.42"/>
<polygon fill="#000000" stroke="#000000" points="1620.0043,-599.7587 1624.2,-590.03 1614.8532,-595.0188 1620.0043,-599.7587"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5197 -->
<g id="edge36" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M1067.3,-1025.8C1088.7,-1072.6 1133.4,-1155.6 1198,-1199.5 1214.3,-1210.6 1233.5,-1218.2 1252.7,-1223.6"/>
<polygon fill="#000000" stroke="#000000" points="1251.9451,-1227.0195 1262.5,-1226.1 1253.6755,-1220.2367 1251.9451,-1227.0195"/>
</g>
<!-- zcash/zcash#5196 -->
<g id="node33" class="node">
<title>zcash/zcash#5196</title>
<g id="a_node33"><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" points="1452,-1191 1249,-1191 1249,-1138 1452,-1138 1452,-1191"/>
<text text-anchor="middle" x="1350.5" y="-1175.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5196</text>
<text text-anchor="middle" x="1350.5" y="-1160.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement v5 transaction</text>
<text text-anchor="middle" x="1350.5" y="-1145.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5196 -->
<g id="edge37" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5196</title>
<path fill="none" stroke="#000000" d="M1079.8,-1025.5C1106.4,-1057 1150.1,-1102.7 1198,-1128.5 1210.7,-1135.4 1224.8,-1140.9 1239,-1145.5"/>
<polygon fill="#000000" stroke="#000000" points="1238.3193,-1148.9476 1248.9,-1148.4 1240.2872,-1142.2299 1238.3193,-1148.9476"/>
</g>
<!-- zcash/zcash#5194 -->
<g id="node34" class="node">
<title>zcash/zcash#5194</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/zcash/issues/5194" xlink:title="zcash/zcash#5194&#10;Implement Orchard&#10;signature verification&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1436,-1119.5 1265,-1119.5 1265,-1051.5 1436,-1051.5 1436,-1119.5"/>
<text text-anchor="middle" x="1350.5" y="-1104.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5194</text>
<text text-anchor="middle" x="1350.5" y="-1089.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1350.5" y="-1074.3" font-family="Times,serif" font-size="14.00" fill="#000000">signature verification</text>
<text text-anchor="middle" x="1350.5" y="-1059.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5194 -->
<g id="edge38" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5194</title>
<path fill="none" stroke="#000000" d="M1130.6,-1019.1C1152.4,-1026.6 1176,-1034.6 1198,-1041.5 1216.3,-1047.3 1236,-1053.2 1255,-1058.7"/>
<polygon fill="#000000" stroke="#000000" points="1254.2179,-1062.1185 1264.8,-1061.6 1256.2042,-1055.4062 1254.2179,-1062.1185"/>
</g>
<!-- zcash/zcash#5198 -->
<g id="node35" class="node">
<title>zcash/zcash#5198</title>
<g id="a_node35"><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" points="1448.5,-932 1252.5,-932 1252.5,-819 1448.5,-819 1448.5,-932"/>
<text text-anchor="middle" x="1350.5" y="-916.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5198</text>
<text text-anchor="middle" x="1350.5" y="-901.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch to a `(txid,</text>
<text text-anchor="middle" x="1350.5" y="-886.8" font-family="Times,serif" font-size="14.00" fill="#000000">auth_digest)` identifier</text>
<text text-anchor="middle" x="1350.5" y="-871.8" font-family="Times,serif" font-size="14.00" fill="#000000">in places where the node</text>
<text text-anchor="middle" x="1350.5" y="-856.8" font-family="Times,serif" font-size="14.00" fill="#000000">needs to commit to a</text>
<text text-anchor="middle" x="1350.5" y="-841.8" font-family="Times,serif" font-size="14.00" fill="#000000">specific instance of a</text>
<text text-anchor="middle" x="1350.5" y="-826.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5198 -->
<g id="edge39" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5198</title>
<path fill="none" stroke="#000000" d="M1130.8,-961.17C1165.1,-947.81 1205.9,-931.88 1243,-917.4"/>
<polygon fill="#000000" stroke="#000000" points="1244.3386,-920.635 1252.4,-913.76 1241.8109,-914.1073 1244.3386,-920.635"/>
</g>
<!-- zcash/zcash#5199 -->
<g id="node36" class="node">
<title>zcash/zcash#5199</title>
<g id="a_node36"><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" points="1445,-1033 1256,-1033 1256,-950 1445,-950 1445,-1033"/>
<text text-anchor="middle" x="1350.5" y="-1017.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5199</text>
<text text-anchor="middle" x="1350.5" y="-1002.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 239] Relay v5+</text>
<text text-anchor="middle" x="1350.5" y="-987.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions with a</text>
<text text-anchor="middle" x="1350.5" y="-972.8" font-family="Times,serif" font-size="14.00" fill="#000000">(txid, auth_digest) tuple</text>
<text text-anchor="middle" x="1350.5" y="-957.8" font-family="Times,serif" font-size="14.00" fill="#000000">(or digest thereof)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5199 -->
<g id="edge40" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5199</title>
<path fill="none" stroke="#000000" d="M1130.8,-991.5C1165.9,-991.5 1208,-991.5 1245.9,-991.5"/>
<polygon fill="#000000" stroke="#000000" points="1245.9,-995.0001 1255.9,-991.5 1245.9,-988.0001 1245.9,-995.0001"/>
</g>
<!-- zcash/zcash#5196&#45;&gt;zcash/zcash#5024 -->
<g id="edge41" class="edge">
<title>zcash/zcash#5196&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1452.4,-1150.7C1486.3,-1146.1 1523.9,-1141.1 1556.8,-1136.6"/>
<polygon fill="#000000" stroke="#000000" points="1557.4287,-1140.048 1566.9,-1135.3 1556.535,-1133.1053 1557.4287,-1140.048"/>
</g>
<!-- zcash/zcash#5194&#45;&gt;zcash/zcash#5024 -->
<g id="edge42" class="edge">
<title>zcash/zcash#5194&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1436.1,-1096.8C1474,-1101.8 1518.5,-1107.6 1556.8,-1112.7"/>
<polygon fill="#000000" stroke="#000000" points="1556.535,-1116.1947 1566.9,-1114 1557.4287,-1109.252 1556.535,-1116.1947"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node37" class="node">
<title>zcash/orchard#30</title>
<g id="a_node37"><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="1436.5,-480 1264.5,-480 1264.5,-427 1436.5,-427 1436.5,-480"/>
<text text-anchor="middle" x="1350.5" y="-464.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="1350.5" y="-449.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="1350.5" y="-434.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="edge43" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1436.5,-453.5C1470.3,-453.5 1509.4,-453.5 1544.5,-453.5"/>
<polygon fill="#000000" stroke="#000000" points="1544.8,-457.0001 1554.8,-453.5 1544.8,-450.0001 1544.8,-457.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node38" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node38"><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,-1429 52.5,-1429 52.5,-1425 48.5,-1425 48.5,-1421 52.5,-1421 52.5,-1384 48.5,-1384 48.5,-1380 52.5,-1380 52.5,-1376 252.5,-1376 252.5,-1429"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1425 56.5,-1425 56.5,-1421 52.5,-1421 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1384 56.5,-1384 56.5,-1380 52.5,-1380 "/>
<text text-anchor="middle" x="152.5" y="-1413.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1398.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="-1383.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node39" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node39"><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="599.5,-1457 387.5,-1457 387.5,-1453 383.5,-1453 383.5,-1449 387.5,-1449 387.5,-1412 383.5,-1412 383.5,-1408 387.5,-1408 387.5,-1404 599.5,-1404 599.5,-1457"/>
<polyline fill="none" stroke="#000000" points="387.5,-1453 391.5,-1453 391.5,-1449 387.5,-1449 "/>
<polyline fill="none" stroke="#000000" points="387.5,-1412 391.5,-1412 391.5,-1408 387.5,-1408 "/>
<text text-anchor="middle" x="493.5" y="-1441.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="493.5" y="-1426.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="493.5" y="-1411.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="edge44" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.51,-1410.7C291.55,-1413.9 336.58,-1417.6 377.07,-1420.9"/>
<polygon fill="#000000" stroke="#000000" points="376.9908,-1424.4065 387.26,-1421.8 377.6067,-1417.4337 376.9908,-1424.4065"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node40" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node40"><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="890.5,-1389.5 699.5,-1389.5 699.5,-1385.5 695.5,-1385.5 695.5,-1381.5 699.5,-1381.5 699.5,-1329.5 695.5,-1329.5 695.5,-1325.5 699.5,-1325.5 699.5,-1321.5 890.5,-1321.5 890.5,-1389.5"/>
<polyline fill="none" stroke="#000000" points="699.5,-1385.5 703.5,-1385.5 703.5,-1381.5 699.5,-1381.5 "/>
<polyline fill="none" stroke="#000000" points="699.5,-1329.5 703.5,-1329.5 703.5,-1325.5 699.5,-1325.5 "/>
<text text-anchor="middle" x="795" y="-1374.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="795" y="-1359.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="795" y="-1344.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="795" y="-1329.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="edge45" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.54,-1395.2C371.24,-1386.5 568.26,-1372.1 689.36,-1363.2"/>
<polygon fill="#000000" stroke="#000000" points="689.658,-1366.6878 699.39,-1362.5 689.1706,-1359.7048 689.658,-1366.6878"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node41" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node41"><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="882,-1491 708,-1491 708,-1487 704,-1487 704,-1483 708,-1483 708,-1416 704,-1416 704,-1412 708,-1412 708,-1408 882,-1408 882,-1491"/>
<polyline fill="none" stroke="#000000" points="708,-1487 712,-1487 712,-1483 708,-1483 "/>
<polyline fill="none" stroke="#000000" points="708,-1416 712,-1416 712,-1412 708,-1412 "/>
<text text-anchor="middle" x="795" y="-1475.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="795" y="-1460.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="795" y="-1445.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="795" y="-1430.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="795" y="-1415.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="edge46" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M599.8,-1437.2C631.62,-1439.2 666.34,-1441.4 697.56,-1443.4"/>
<polygon fill="#000000" stroke="#000000" points="697.3785,-1446.8953 707.57,-1444 697.7974,-1439.9078 697.3785,-1446.8953"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node42" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node42"><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="1162,-1415.5 944,-1415.5 944,-1411.5 940,-1411.5 940,-1407.5 944,-1407.5 944,-1385.5 940,-1385.5 940,-1381.5 944,-1381.5 944,-1377.5 1162,-1377.5 1162,-1415.5"/>
<polyline fill="none" stroke="#000000" points="944,-1411.5 948,-1411.5 948,-1407.5 944,-1407.5 "/>
<polyline fill="none" stroke="#000000" points="944,-1385.5 948,-1385.5 948,-1381.5 944,-1381.5 "/>
<text text-anchor="middle" x="1053" y="-1400.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1053" y="-1385.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="edge47" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M890.7,-1370.7C904.8,-1372.9 919.47,-1375.3 933.97,-1377.6"/>
<polygon fill="#000000" stroke="#000000" points="933.5426,-1381.0761 943.97,-1379.2 934.6486,-1374.164 933.5426,-1381.0761"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge48" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M882.35,-1431.6C904.25,-1427.1 927.95,-1422.2 950.51,-1417.6"/>
<polygon fill="#000000" stroke="#000000" points="951.3895,-1420.9915 960.45,-1415.5 949.9425,-1414.1427 951.3895,-1420.9915"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node43" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node43"><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="1445,-1430.5 1256,-1430.5 1256,-1426.5 1252,-1426.5 1252,-1422.5 1256,-1422.5 1256,-1370.5 1252,-1370.5 1252,-1366.5 1256,-1366.5 1256,-1362.5 1445,-1362.5 1445,-1430.5"/>
<polyline fill="none" stroke="#000000" points="1256,-1426.5 1260,-1426.5 1260,-1422.5 1256,-1422.5 "/>
<polyline fill="none" stroke="#000000" points="1256,-1370.5 1260,-1370.5 1260,-1366.5 1256,-1366.5 "/>
<text text-anchor="middle" x="1350.5" y="-1415.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1350.5" y="-1400.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1350.5" y="-1385.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1350.5" y="-1370.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="edge49" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1162.1,-1396.5C1189.3,-1396.5 1218.4,-1396.5 1245.4,-1396.5"/>
<polygon fill="#000000" stroke="#000000" points="1245.7,-1400.0001 1255.7,-1396.5 1245.7,-1393.0001 1245.7,-1400.0001"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node44" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node44"><a xlink:href="https://github.com/zcash/librustzcash/issues/368" xlink:title="zcash/librustzcash#368&#10;zcash_history: Add&#10;Orchard support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1147,-1348 959,-1348 959,-1295 1147,-1295 1147,-1348"/>
<text text-anchor="middle" x="1053" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="1053" y="-1317.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="1053" y="-1302.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard support</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#368&#45;&gt;zcash/zcash#5037 -->
<g id="edge50" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M1147.1,-1316.8C1176.6,-1315.3 1209.5,-1313.6 1240,-1312.1"/>
<polygon fill="#000000" stroke="#000000" points="1240.4815,-1315.5808 1250.3,-1311.6 1240.142,-1308.5891 1240.4815,-1315.5808"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node45" class="node">
<title>zcash/orchard#45</title>
<g id="a_node45"><a xlink:href="https://github.com/zcash/orchard/issues/45" xlink:title="zcash/orchard#45&#10;Implement Poseidon gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="903.5,-628.5 686.5,-628.5 686.5,-590.5 903.5,-590.5 903.5,-628.5"/>
<text text-anchor="middle" x="795" y="-613.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="795" y="-598.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/orchard#4 -->
<g id="edge51" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M881.81,-628.51C890.76,-631.21 899.63,-634.21 908,-637.5 925.03,-644.2 927.24,-650.15 944,-657.5 948.44,-659.45 953.03,-661.35 957.69,-663.2"/>
<polygon fill="#000000" stroke="#000000" points="956.7402,-666.5847 967.33,-666.91 959.2544,-660.0518 956.7402,-666.5847"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node46" class="node">
<title>zcash/halo2#79</title>
<g id="a_node46"><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="1133.5,-649 972.5,-649 972.5,-566 1133.5,-566 1133.5,-649"/>
<text text-anchor="middle" x="1053" y="-633.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="1053" y="-618.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="1053" y="-603.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="1053" y="-588.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="1053" y="-573.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/halo2#79 -->
<g id="edge52" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M903.67,-608.66C923.16,-608.51 943.29,-608.35 962.22,-608.2"/>
<polygon fill="#000000" stroke="#000000" points="962.3146,-611.6995 972.29,-608.13 962.2659,-604.6997 962.3146,-611.6995"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node47" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node47"><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="#a6cfff" stroke="#000000" stroke-width="2" points="249,-1547.5 56,-1547.5 56,-1543.5 52,-1543.5 52,-1539.5 56,-1539.5 56,-1517.5 52,-1517.5 52,-1513.5 56,-1513.5 56,-1509.5 249,-1509.5 249,-1547.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1543.5 60,-1543.5 60,-1539.5 56,-1539.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1517.5 60,-1517.5 60,-1513.5 56,-1513.5 "/>
<text text-anchor="middle" x="152.5" y="-1532.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-1517.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="node48" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node48"><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="#a6cfff" stroke="#000000" points="590,-1547.5 397,-1547.5 397,-1543.5 393,-1543.5 393,-1539.5 397,-1539.5 397,-1517.5 393,-1517.5 393,-1513.5 397,-1513.5 397,-1509.5 590,-1509.5 590,-1547.5"/>
<polyline fill="none" stroke="#000000" points="397,-1543.5 401,-1543.5 401,-1539.5 397,-1539.5 "/>
<polyline fill="none" stroke="#000000" points="397,-1517.5 401,-1517.5 401,-1513.5 397,-1513.5 "/>
<text text-anchor="middle" x="493.5" y="-1532.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="493.5" y="-1517.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="edge53" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.3,-1528.5C292.14,-1528.5 342.66,-1528.5 386.61,-1528.5"/>
<polygon fill="#000000" stroke="#000000" points="386.75,-1532.0001 396.75,-1528.5 386.75,-1525.0001 386.75,-1532.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node49" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node49"><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="#a6cfff" stroke="#000000" points="891.5,-1547.5 698.5,-1547.5 698.5,-1543.5 694.5,-1543.5 694.5,-1539.5 698.5,-1539.5 698.5,-1517.5 694.5,-1517.5 694.5,-1513.5 698.5,-1513.5 698.5,-1509.5 891.5,-1509.5 891.5,-1547.5"/>
<polyline fill="none" stroke="#000000" points="698.5,-1543.5 702.5,-1543.5 702.5,-1539.5 698.5,-1539.5 "/>
<polyline fill="none" stroke="#000000" points="698.5,-1517.5 702.5,-1517.5 702.5,-1513.5 698.5,-1513.5 "/>
<text text-anchor="middle" x="795" y="-1532.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="795" y="-1517.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="edge54" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M590.14,-1528.5C621.38,-1528.5 656.19,-1528.5 688.13,-1528.5"/>
<polygon fill="#000000" stroke="#000000" points="688.39,-1532.0001 698.39,-1528.5 688.39,-1525.0001 688.39,-1532.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node50" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node50"><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="1443,-405 1258,-405 1258,-352 1443,-352 1443,-405"/>
<text text-anchor="middle" x="1350.5" y="-389.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="1350.5" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="1350.5" y="-359.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="edge55" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M1443.3,-402.02C1475.5,-410.18 1511.8,-419.37 1544.7,-427.7"/>
<polygon fill="#000000" stroke="#000000" points="1544.1452,-431.1705 1554.7,-430.25 1545.8749,-424.3875 1544.1452,-431.1705"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node51" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node51"><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="1747.5,-408.5 1545.5,-408.5 1545.5,-340.5 1747.5,-340.5 1747.5,-408.5"/>
<text text-anchor="middle" x="1646.5" y="-393.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="1646.5" y="-378.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="1646.5" y="-363.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="1646.5" y="-348.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="edge56" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M1443.3,-377.25C1472.4,-376.85 1504.9,-376.41 1535.1,-376.01"/>
<polygon fill="#000000" stroke="#000000" points="1535.349,-379.507 1545.3,-375.87 1535.2529,-372.5077 1535.349,-379.507"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge57" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1747.5,-374.5C1760.2,-374.5 1773.2,-374.5 1786.1,-374.5"/>
<polygon fill="#000000" stroke="#000000" points="1786.3,-378.0001 1796.3,-374.5 1786.3,-371.0001 1786.3,-378.0001"/>
</g>
<!-- zcash/zips#364 -->
<g id="node52" class="node">
<title>zcash/zips#364</title>
<g id="a_node52"><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="1155.5,-405 950.5,-405 950.5,-352 1155.5,-352 1155.5,-405"/>
<text text-anchor="middle" x="1053" y="-389.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="1053" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="1053" y="-359.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="edge58" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M1155.8,-378.5C1185.4,-378.5 1217.7,-378.5 1247.3,-378.5"/>
<polygon fill="#000000" stroke="#000000" points="1247.7,-382.0001 1257.7,-378.5 1247.7,-375.0001 1247.7,-382.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node53" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node53"><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,-1619 61.5,-1619 61.5,-1566 243.5,-1566 243.5,-1619"/>
<text text-anchor="middle" x="152.5" y="-1603.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="152.5" y="-1588.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="152.5" y="-1573.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node54" class="node">
<title>zcash/zips#511</title>
<g id="a_node54"><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="1754,-322.5 1539,-322.5 1539,-254.5 1754,-254.5 1754,-322.5"/>
<text text-anchor="middle" x="1646.5" y="-307.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="1646.5" y="-292.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="1646.5" y="-277.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="1646.5" y="-262.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="edge59" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1746.1,-322.61C1760,-327.38 1774.3,-332.29 1788.4,-337.11"/>
<polygon fill="#000000" stroke="#000000" points="1787.5054,-340.5031 1798.1,-340.43 1789.7722,-333.8803 1787.5054,-340.5031"/>
</g>
<!-- zcash/librustzcash#387 -->
<g id="node55" class="node">
<title>zcash/librustzcash#387</title>
<g id="a_node55"><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="2005,-315 1790,-315 1790,-262 2005,-262 2005,-315"/>
<text text-anchor="middle" x="1897.5" y="-299.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#387</text>
<text text-anchor="middle" x="1897.5" y="-284.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1897.5" y="-269.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="edge60" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/librustzcash#387</title>
<path fill="none" stroke="#000000" d="M1754,-288.5C1762.6,-288.5 1771.2,-288.5 1779.8,-288.5"/>
<polygon fill="#000000" stroke="#000000" points="1779.8,-292.0001 1789.8,-288.5 1779.8,-285.0001 1779.8,-292.0001"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node56" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node56"><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,-1690 51,-1690 51,-1637 254,-1637 254,-1690"/>
<text text-anchor="middle" x="152.5" y="-1674.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="152.5" y="-1659.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="152.5" y="-1644.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/zips#506 -->
<g id="node57" class="node">
<title>zcash/zips#506</title>
<g id="a_node57"><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="897,-857.5 693,-857.5 693,-789.5 897,-789.5 897,-857.5"/>
<text text-anchor="middle" x="795" y="-842.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#506</text>
<text text-anchor="middle" x="795" y="-827.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard anchor should be</text>
<text text-anchor="middle" x="795" y="-812.3" font-family="Times,serif" font-size="14.00" fill="#000000">a base field element, not</text>
<text text-anchor="middle" x="795" y="-797.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="edge61" class="edge">
<title>zcash/zips#506&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M897.34,-823.5C917.35,-823.5 938.25,-823.5 958,-823.5"/>
<polygon fill="#000000" stroke="#000000" points="958.22,-827.0001 968.22,-823.5 958.22,-820.0001 958.22,-827.0001"/>
</g>
<!-- zcash/zips#507 -->
<g id="node58" class="node">
<title>zcash/zips#507</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash/zips/pull/507" xlink:title="zcash/zips#507&#10;Fix Orchard Action byte&#10;size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="890.5,-929 699.5,-929 699.5,-925 695.5,-925 695.5,-921 699.5,-921 699.5,-884 695.5,-884 695.5,-880 699.5,-880 699.5,-876 890.5,-876 890.5,-929"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="699.5,-925 703.5,-925 703.5,-921 699.5,-921 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="699.5,-884 703.5,-884 703.5,-880 699.5,-880 "/>
<text text-anchor="middle" x="795" y="-913.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#507</text>
<text text-anchor="middle" x="795" y="-898.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix Orchard Action byte</text>
<text text-anchor="middle" x="795" y="-883.8" font-family="Times,serif" font-size="14.00" fill="#000000">size</text>
</a>
</g>
</g>
<!-- zcash/zips#507&#45;&gt;zcash/zcash#4707 -->
<g id="edge62" class="edge">
<title>zcash/zips#507&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M881.63,-875.97C906.42,-868.38 933.56,-860.07 958.79,-852.35"/>
<polygon fill="#000000" stroke="#000000" points="959.8146,-855.6967 968.35,-849.42 957.7633,-849.004 959.8146,-855.6967"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node59" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node59"><a xlink:href="https://github.com/zcash/librustzcash/issues/350" xlink:title="zcash/librustzcash#350&#10;Implement ZIP&#45;225&#10;transaction format &amp;&#10;hashing changes in&#10;librustzcash." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="889,-1033 701,-1033 701,-950 889,-950 889,-1033"/>
<text text-anchor="middle" x="795" y="-1017.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="795" y="-1002.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="795" y="-987.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="795" y="-972.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="795" y="-957.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#350&#45;&gt;zcash/zcash#5022 -->
<g id="edge63" class="edge">
<title>zcash/librustzcash#350&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M889.24,-991.5C913.93,-991.5 940.45,-991.5 964.81,-991.5"/>
<polygon fill="#000000" stroke="#000000" points="965.1,-995.0001 975.1,-991.5 965.1,-988.0001 965.1,-995.0001"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node60" class="node">
<title>zcash/halo2#63</title>
<g id="a_node60"><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="1161,-548 945,-548 945,-495 1161,-495 1161,-548"/>
<text text-anchor="middle" x="1053" y="-532.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="1053" y="-517.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="1053" y="-502.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="edge64" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M1147.3,-548.01C1152.4,-550.6 1157.4,-553.42 1162,-556.5 1182.5,-570.11 1177.3,-585.2 1198,-598.5 1210.6,-606.63 1224.8,-613.29 1239.3,-618.75"/>
<polygon fill="#000000" stroke="#000000" points="1238.3053,-622.1109 1248.9,-622.16 1240.6484,-615.5146 1238.3053,-622.1109"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node61" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node61"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1503,-229 1198,-229 1198,-176 1503,-176 1503,-229"/>
<text text-anchor="middle" x="1350.5" y="-213.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</text>
<text text-anchor="middle" x="1350.5" y="-198.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1350.5" y="-183.8" font-family="Times,serif" font-size="14.00" fill="#000000">encodings</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371 -->
<g id="edge65" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M1503.3,-202.5C1516.4,-202.5 1529.5,-202.5 1542.2,-202.5"/>
<polygon fill="#000000" stroke="#000000" points="1542.2,-206.0001 1552.2,-202.5 1542.2,-199.0001 1542.2,-206.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node62" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node62"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/23" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#10;Implement ZIP 244 test&#10;vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="646,-977 341,-977 341,-924 646,-924 646,-977"/>
<text text-anchor="middle" x="493.5" y="-961.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</text>
<text text-anchor="middle" x="493.5" y="-946.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="493.5" y="-931.8" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350 -->
<g id="edge66" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M646.02,-971.24C661.21,-973.31 676.37,-975.37 690.9,-977.34"/>
<polygon fill="#000000" stroke="#000000" points="690.4578,-980.812 700.84,-978.7 691.4068,-973.8766 690.4578,-980.812"/>
</g>
<!-- zcash/librustzcash#386 -->
<g id="node63" class="node">
<title>zcash/librustzcash#386</title>
<g id="a_node63"><a xlink:href="https://github.com/zcash/librustzcash/pull/386" xlink:title="zcash/librustzcash#386&#10;ZIP&#45;225/244 #2: Refactor&#10;transaction builder to&#10;create separate builders&#10;for each section." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="252.5,-1076 52.5,-1076 52.5,-1072 48.5,-1072 48.5,-1068 52.5,-1068 52.5,-1001 48.5,-1001 48.5,-997 52.5,-997 52.5,-993 252.5,-993 252.5,-1076"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1072 56.5,-1072 56.5,-1068 52.5,-1068 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1001 56.5,-1001 56.5,-997 52.5,-997 "/>
<text text-anchor="middle" x="152.5" y="-1060.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#386</text>
<text text-anchor="middle" x="152.5" y="-1045.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;225/244 #2: Refactor</text>
<text text-anchor="middle" x="152.5" y="-1030.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction builder to</text>
<text text-anchor="middle" x="152.5" y="-1015.8" font-family="Times,serif" font-size="14.00" fill="#000000">create separate builders</text>
<text text-anchor="middle" x="152.5" y="-1000.8" font-family="Times,serif" font-size="14.00" fill="#000000">for each section.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#392 -->
<g id="node64" class="node">
<title>zcash/librustzcash#392</title>
<g id="a_node64"><a xlink:href="https://github.com/zcash/librustzcash/pull/392" xlink:title="zcash/librustzcash#392&#10;ZIP&#45;225/244 #3: Create&#10;separate bundles for each&#10;part of the transaction." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="595,-1066.5 392,-1066.5 392,-1062.5 388,-1062.5 388,-1058.5 392,-1058.5 392,-1006.5 388,-1006.5 388,-1002.5 392,-1002.5 392,-998.5 595,-998.5 595,-1066.5"/>
<polyline fill="none" stroke="#000000" points="392,-1062.5 396,-1062.5 396,-1058.5 392,-1058.5 "/>
<polyline fill="none" stroke="#000000" points="392,-1006.5 396,-1006.5 396,-1002.5 392,-1002.5 "/>
<text text-anchor="middle" x="493.5" y="-1051.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#392</text>
<text text-anchor="middle" x="493.5" y="-1036.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;225/244 #3: Create</text>
<text text-anchor="middle" x="493.5" y="-1021.3" font-family="Times,serif" font-size="14.00" fill="#000000">separate bundles for each</text>
<text text-anchor="middle" x="493.5" y="-1006.3" font-family="Times,serif" font-size="14.00" fill="#000000">part of the transaction.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#386&#45;&gt;zcash/librustzcash#392 -->
<g id="edge67" class="edge">
<title>zcash/librustzcash#386&#45;&gt;zcash/librustzcash#392</title>
<path fill="none" stroke="#000000" d="M252.51,-1033.9C292.99,-1033.7 339.92,-1033.4 381.54,-1033.2"/>
<polygon fill="#000000" stroke="#000000" points="381.7549,-1036.6982 391.72,-1033.1 381.6861,-1029.6985 381.7549,-1036.6982"/>
</g>
<!-- zcash/librustzcash#392&#45;&gt;zcash/librustzcash#350 -->
<g id="edge68" class="edge">
<title>zcash/librustzcash#392&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M595.15,-1018.7C626.01,-1014.5 659.94,-1009.9 690.94,-1005.7"/>
<polygon fill="#000000" stroke="#000000" points="691.4846,-1009.158 700.9,-1004.3 690.5101,-1002.2261 691.4846,-1009.158"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node65" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node65"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/15" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#10;Implement ZIP 225 test&#10;vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="305,-975 0,-975 0,-922 305,-922 305,-975"/>
<text text-anchor="middle" x="152.5" y="-959.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</text>
<text text-anchor="middle" x="152.5" y="-944.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="152.5" y="-929.8" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="edge69" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<path fill="none" stroke="#000000" d="M305.05,-949.39C313.59,-949.44 322.19,-949.5 330.76,-949.55"/>
<polygon fill="#000000" stroke="#000000" points="330.7927,-953.0501 340.81,-949.6 330.8276,-946.0502 330.7927,-953.0501"/>
</g>
<!-- zcash/halo2#64 -->
<g id="node66" class="node">
<title>zcash/halo2#64</title>
<g id="a_node66"><a xlink:href="https://github.com/zcash/halo2/issues/64" xlink:title="zcash/halo2#64&#10;Design gadget API or&#10;interaction model" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="578.5,-700 408.5,-700 408.5,-647 578.5,-647 578.5,-700"/>
<text text-anchor="middle" x="493.5" y="-684.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="493.5" y="-669.8" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="493.5" y="-654.8" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#235 -->
<g id="node67" class="node">
<title>zcash/halo2#235</title>
<g id="a_node67"><a xlink:href="https://github.com/zcash/halo2/issues/235" xlink:title="zcash/halo2#235&#10;[Circuit] Implement&#10;Core/Chip abstraction" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="883,-700 707,-700 707,-647 883,-647 883,-700"/>
<text text-anchor="middle" x="795" y="-684.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="795" y="-669.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="795" y="-654.8" font-family="Times,serif" font-size="14.00" fill="#000000">Core/Chip abstraction</text>
</a>
</g>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#235 -->
<g id="edge70" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M578.69,-673.5C615.45,-673.5 658.68,-673.5 696.79,-673.5"/>
<polygon fill="#000000" stroke="#000000" points="696.87,-677.0001 706.87,-673.5 696.87,-670.0001 696.87,-677.0001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge71" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M883.07,-680.33C906.57,-682.15 932.09,-684.13 956.05,-685.98"/>
<polygon fill="#000000" stroke="#000000" points="955.9585,-689.4834 966.2,-686.77 956.5018,-682.5045 955.9585,-689.4834"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node68" class="node">
<title>zcash/halo2#75</title>
<g id="a_node68"><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="1440,-154 1261,-154 1261,-101 1440,-101 1440,-154"/>
<text text-anchor="middle" x="1350.5" y="-138.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="1350.5" y="-123.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1350.5" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node69" class="node">
<title>zcash/halo2#251</title>
<g id="a_node69"><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="1751.5,-150 1541.5,-150 1541.5,-97 1751.5,-97 1751.5,-150"/>
<text text-anchor="middle" x="1646.5" y="-134.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1646.5" y="-119.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="1646.5" y="-104.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="edge72" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1440.1,-126.29C1468.8,-125.9 1500.9,-125.47 1531.2,-125.06"/>
<polygon fill="#000000" stroke="#000000" points="1531.3495,-128.5584 1541.3,-124.92 1531.2524,-121.559 1531.3495,-128.5584"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node70" class="node">
<title>zcash/halo2#78</title>
<g id="a_node70"><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="897,-572.5 693,-572.5 693,-504.5 897,-504.5 897,-572.5"/>
<text text-anchor="middle" x="795" y="-557.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="795" y="-542.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="795" y="-527.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="795" y="-512.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="edge73" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M897.34,-565.87C918.84,-571.62 941.37,-577.64 962.4,-583.27"/>
<polygon fill="#000000" stroke="#000000" points="961.7052,-586.7071 972.27,-585.91 963.514,-579.9449 961.7052,-586.7071"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node71" class="node">
<title>zcash/halo2#250</title>
<g id="a_node71"><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="1150,-307 956,-307 956,-254 1150,-254 1150,-307"/>
<text text-anchor="middle" x="1053" y="-291.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="1053" y="-276.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="1053" y="-261.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="edge74" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M897.03,-505.9C900.99,-502.75 904.68,-499.29 908,-495.5 954.02,-442.94 902.15,-398.43 944,-342.5 952.9,-330.6 964.8,-320.64 977.47,-312.43"/>
<polygon fill="#000000" stroke="#000000" points="979.6184,-315.2197 986.34,-307.03 975.9783,-309.2406 979.6184,-315.2197"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge75" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1079.5,-253.99C1106.9,-228.03 1152.1,-189.17 1198,-166.5 1214.5,-158.35 1232.9,-151.79 1251,-146.55"/>
<polygon fill="#000000" stroke="#000000" points="1252.0889,-149.8805 1260.8,-143.85 1250.2295,-143.1319 1252.0889,-149.8805"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node72" class="node">
<title>zcash/halo2#57</title>
<g id="a_node72"><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,-1776.5 81,-1776.5 81,-1708.5 224,-1708.5 224,-1776.5"/>
<text text-anchor="middle" x="152.5" y="-1761.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-1746.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-1731.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-1716.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node73" class="node">
<title>zcash/halo2#82</title>
<g id="a_node73"><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,-1878 56,-1878 56,-1795 249,-1795 249,-1878"/>
<text text-anchor="middle" x="152.5" y="-1862.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-1847.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-1832.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="-1817.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-1802.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node74" class="node">
<title>zcash/halo2#248</title>
<g id="a_node74"><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="896.5,-228 693.5,-228 693.5,-175 896.5,-175 896.5,-228"/>
<text text-anchor="middle" x="795" y="-212.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="795" y="-197.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="795" y="-182.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="edge76" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M881.63,-228.03C905.67,-235.39 931.91,-243.42 956.48,-250.94"/>
<polygon fill="#000000" stroke="#000000" points="955.5732,-254.3228 966.16,-253.91 957.6265,-247.6307 955.5732,-254.3228"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node75" class="node">
<title>zcash/halo2#249</title>
<g id="a_node75"><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="887.5,-156.5 702.5,-156.5 702.5,-88.5 887.5,-88.5 887.5,-156.5"/>
<text text-anchor="middle" x="795" y="-141.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="795" y="-126.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="795" y="-111.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="795" y="-96.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="edge77" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M887.67,-155.05C894.67,-158.33 901.52,-161.82 908,-165.5 948.34,-188.44 989.31,-222.1 1017.4,-247.08"/>
<polygon fill="#000000" stroke="#000000" points="1015.1407,-249.756 1024.9,-253.88 1019.8426,-244.5702 1015.1407,-249.756"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node76" class="node">
<title>zcash/halo2#246</title>
<g id="a_node76"><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="583,-393 404,-393 404,-340 583,-340 583,-393"/>
<text text-anchor="middle" x="493.5" y="-377.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="493.5" y="-362.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="493.5" y="-347.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node77" class="node">
<title>zcash/halo2#247</title>
<g id="a_node77"><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="883,-400.5 707,-400.5 707,-332.5 883,-332.5 883,-400.5"/>
<text text-anchor="middle" x="795" y="-385.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="795" y="-370.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="795" y="-355.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="795" y="-340.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="edge78" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M583.14,-366.5C618.92,-366.5 660.23,-366.5 696.81,-366.5"/>
<polygon fill="#000000" stroke="#000000" points="697,-370.0001 707,-366.5 697,-363.0001 697,-370.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge79" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M883.07,-337.14C909.07,-328.48 937.55,-318.98 963.63,-310.29"/>
<polygon fill="#000000" stroke="#000000" points="964.7379,-313.6101 973.12,-307.13 962.5264,-306.9686 964.7379,-313.6101"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node78" class="node">
<title>zcash/halo2#245</title>
<g id="a_node78"><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="898,-486.5 692,-486.5 692,-418.5 898,-418.5 898,-486.5"/>
<text text-anchor="middle" x="795" y="-471.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="795" y="-456.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="795" y="-441.3" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="795" y="-426.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="edge80" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M898.08,-480.07C913.16,-484.1 928.74,-488.27 943.94,-492.33"/>
<polygon fill="#000000" stroke="#000000" points="943.2947,-495.7805 953.86,-494.99 945.1077,-489.0194 943.2947,-495.7805"/>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge81" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M896.41,-418.4C900.48,-415.65 904.37,-412.69 908,-409.5 933.4,-387.19 920.39,-366.69 944,-342.5 955.4,-330.82 969.46,-320.67 983.66,-312.15"/>
<polygon fill="#000000" stroke="#000000" points="985.5743,-315.0864 992.49,-307.06 982.0784,-309.0219 985.5743,-315.0864"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node79" class="node">
<title>zcash/halo2#210</title>
<g id="a_node79"><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="904,-314.5 686,-314.5 686,-246.5 904,-246.5 904,-314.5"/>
<text text-anchor="middle" x="795" y="-299.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="795" y="-284.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="795" y="-269.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="795" y="-254.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="edge82" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M904.04,-280.5C917.74,-280.5 931.75,-280.5 945.42,-280.5"/>
<polygon fill="#000000" stroke="#000000" points="945.81,-284.0001 955.81,-280.5 945.81,-277.0001 945.81,-284.0001"/>
</g>
<!-- zcash/orchard#96 -->
<g id="node80" class="node">
<title>zcash/orchard#96</title>
<g id="a_node80"><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="580,-831 407,-831 407,-778 580,-778 580,-831"/>
<text text-anchor="middle" x="493.5" y="-815.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#96</text>
<text text-anchor="middle" x="493.5" y="-800.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="493.5" y="-785.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#95 -->
<g id="node81" class="node">
<title>zcash/orchard#95</title>
<g id="a_node81"><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="888.5,-771 701.5,-771 701.5,-718 888.5,-718 888.5,-771"/>
<text text-anchor="middle" x="795" y="-755.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#95</text>
<text text-anchor="middle" x="795" y="-740.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Merkle path</text>
<text text-anchor="middle" x="795" y="-725.8" font-family="Times,serif" font-size="14.00" fill="#000000">validity chip</text>
</a>
</g>
</g>
<!-- zcash/orchard#96&#45;&gt;zcash/orchard#95 -->
<g id="edge83" class="edge">
<title>zcash/orchard#96&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M580.3,-787.23C614.97,-780.33 655.17,-772.33 691.35,-765.13"/>
<polygon fill="#000000" stroke="#000000" points="692.3165,-768.5063 701.44,-763.12 690.9489,-761.6412 692.3165,-768.5063"/>
</g>
<!-- zcash/orchard#95&#45;&gt;zcash/orchard#4 -->
<g id="edge84" class="edge">
<title>zcash/orchard#95&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M888.51,-726.02C910.52,-721.66 934.02,-717.02 956.18,-712.64"/>
<polygon fill="#000000" stroke="#000000" points="957.1183,-716.0224 966.25,-710.65 955.7612,-709.1552 957.1183,-716.0224"/>
</g>
<!-- zcash/orchard#87 -->
<g id="node82" class="node">
<title>zcash/orchard#87</title>
<g id="a_node82"><a xlink:href="https://github.com/zcash/orchard/issues/87" xlink:title="zcash/orchard#87&#10;Implement utils chip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="576.5,-759.5 410.5,-759.5 410.5,-721.5 576.5,-721.5 576.5,-759.5"/>
<text text-anchor="middle" x="493.5" y="-744.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#87</text>
<text text-anchor="middle" x="493.5" y="-729.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement utils chip</text>
</a>
</g>
</g>
<!-- zcash/orchard#87&#45;&gt;zcash/orchard#95 -->
<g id="edge85" class="edge">
<title>zcash/orchard#87&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M576.68,-741.6C612.05,-742.07 653.68,-742.63 691.05,-743.12"/>
<polygon fill="#000000" stroke="#000000" points="691.4238,-746.6252 701.47,-743.26 691.518,-739.6259 691.4238,-746.6252"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node83" class="node">
<title>zcash/orchard#38</title>
<g id="a_node83"><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,-831 57,-831 57,-778 248,-778 248,-831"/>
<text text-anchor="middle" x="152.5" y="-815.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="152.5" y="-800.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="152.5" y="-785.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="edge86" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#96</title>
<path fill="none" stroke="#000000" d="M248.39,-804.5C294.73,-804.5 350.23,-804.5 396.69,-804.5"/>
<polygon fill="#000000" stroke="#000000" points="396.77,-808.0001 406.77,-804.5 396.77,-801.0001 396.77,-808.0001"/>
</g>
<!-- zcash/orchard#86 -->
<g id="node84" class="node">
<title>zcash/orchard#86</title>
<g id="a_node84"><a xlink:href="https://github.com/zcash/orchard/pull/86" xlink:title="zcash/orchard#86&#10;Update formula for fixed&#45;&#10;base window tables." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="251.5,-1949 53.5,-1949 53.5,-1945 49.5,-1945 49.5,-1941 53.5,-1941 53.5,-1904 49.5,-1904 49.5,-1900 53.5,-1900 53.5,-1896 251.5,-1896 251.5,-1949"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="53.5,-1945 57.5,-1945 57.5,-1941 53.5,-1941 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="53.5,-1904 57.5,-1904 57.5,-1900 53.5,-1900 "/>
<text text-anchor="middle" x="152.5" y="-1933.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#86</text>
<text text-anchor="middle" x="152.5" y="-1918.8" font-family="Times,serif" font-size="14.00" fill="#000000">Update formula for fixed&#45;</text>
<text text-anchor="middle" x="152.5" y="-1903.8" font-family="Times,serif" font-size="14.00" fill="#000000">base window tables.</text>
</a>
</g>
</g>
<!-- zcash/orchard#73 -->
<g id="node85" class="node">
<title>zcash/orchard#73</title>
<g id="a_node85"><a xlink:href="https://github.com/zcash/orchard/pull/73" xlink:title="zcash/orchard#73&#10;Optimized ECC chip" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="575.5,-1941.5 411.5,-1941.5 411.5,-1937.5 407.5,-1937.5 407.5,-1933.5 411.5,-1933.5 411.5,-1911.5 407.5,-1911.5 407.5,-1907.5 411.5,-1907.5 411.5,-1903.5 575.5,-1903.5 575.5,-1941.5"/>
<polyline fill="none" stroke="#000000" points="411.5,-1937.5 415.5,-1937.5 415.5,-1933.5 411.5,-1933.5 "/>
<polyline fill="none" stroke="#000000" points="411.5,-1911.5 415.5,-1911.5 415.5,-1907.5 411.5,-1907.5 "/>
<text text-anchor="middle" x="493.5" y="-1926.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#73</text>
<text text-anchor="middle" x="493.5" y="-1911.3" font-family="Times,serif" font-size="14.00" fill="#000000">Optimized ECC chip</text>
</a>
</g>
</g>
<!-- zcash/orchard#86&#45;&gt;zcash/orchard#73 -->
<g id="edge87" class="edge">
<title>zcash/orchard#86&#45;&gt;zcash/orchard#73</title>
<path fill="none" stroke="#000000" d="M251.59,-1922.5C298.86,-1922.5 355.06,-1922.5 401.39,-1922.5"/>
<polygon fill="#000000" stroke="#000000" points="401.42,-1926.0001 411.42,-1922.5 401.42,-1919.0001 401.42,-1926.0001"/>
</g>
</g>
</svg>