developers/zcash-core-dag.svg

1305 lines
92 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="1749pt" height="2088pt"
viewBox="0.00 0.00 1749.00 2088.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 2084)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2084 1745,-2084 1745,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,-45.5 58.5,-45.5 58.5,-7.5 246.5,-7.5 246.5,-45.5"/>
<text text-anchor="middle" x="152.5" y="-30.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="152.5" y="-15.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,-53 397.5,-53 397.5,0 589.5,0 589.5,-53"/>
<text text-anchor="middle" x="493.5" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="493.5" y="-22.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="-7.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,-26.5C290.2,-26.5 342.24,-26.5 387.26,-26.5"/>
<polygon fill="#000000" stroke="#000000" points="387.35,-30.0001 397.35,-26.5 387.35,-23.0001 387.35,-30.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,-132 59.5,-132 59.5,-79 245.5,-79 245.5,-132"/>
<text text-anchor="middle" x="152.5" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-101.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-86.8" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/halo2#73 -->
<g id="node4" class="node">
<title>zcash/halo2#73</title>
<g id="a_node4"><a xlink:href="https://github.com/zcash/halo2/issues/73" xlink:title="zcash/halo2#73&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="580,-1251 407,-1251 407,-1198 580,-1198 580,-1251"/>
<text text-anchor="middle" x="493.5" y="-1235.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="493.5" y="-1220.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="493.5" y="-1205.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#4 -->
<g id="node5" class="node">
<title>zcash/orchard#4</title>
<g id="a_node5"><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="921,-1191 748,-1191 748,-1138 921,-1138 921,-1191"/>
<text text-anchor="middle" x="834.5" y="-1175.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="834.5" y="-1160.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="834.5" y="-1145.8" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#73&#45;&gt;zcash/orchard#4 -->
<g id="edge2" class="edge">
<title>zcash/halo2#73&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M580.43,-1209.2C628.43,-1200.8 688.16,-1190.2 737.65,-1181.5"/>
<polygon fill="#000000" stroke="#000000" points="738.4513,-1184.9144 747.73,-1179.8 737.2872,-1178.0118 738.4513,-1184.9144"/>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node6" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard as a&#10;future NU feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1228,-1434 1036,-1434 1036,-1381 1228,-1381 1228,-1434"/>
<text text-anchor="middle" x="1132" y="-1418.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="1132" y="-1403.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard as a</text>
<text text-anchor="middle" x="1132" y="-1388.8" font-family="Times,serif" font-size="14.00" fill="#000000">future NU feature</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge3" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M921.36,-1168C945.46,-1173.1 969.72,-1182.8 987,-1200.5 1041.5,-1256.4 970.73,-1314.5 1023,-1372.5 1024.6,-1374.2 1026.2,-1375.9 1027.9,-1377.5"/>
<polygon fill="#000000" stroke="#000000" points="1025.9577,-1380.4233 1036,-1383.8 1030.2553,-1374.8978 1025.9577,-1380.4233"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node7" class="node">
<title>zcash/orchard#35</title>
<g id="a_node7"><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="1214.5,-1198 1049.5,-1198 1049.5,-1145 1214.5,-1145 1214.5,-1198"/>
<text text-anchor="middle" x="1132" y="-1182.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="1132" y="-1167.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="1132" y="-1152.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="edge4" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M921.35,-1166.5C958.27,-1167.4 1001.4,-1168.4 1038.9,-1169.3"/>
<polygon fill="#000000" stroke="#000000" points="1039.3041,-1172.8129 1049.4,-1169.6 1039.5041,-1165.8157 1039.3041,-1172.8129"/>
</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="1466,-1398 1307,-1398 1307,-1345 1466,-1345 1466,-1398"/>
<text text-anchor="middle" x="1386.5" y="-1382.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1386.5" y="-1367.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1386.5" y="-1352.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="M1228.2,-1393.9C1250.7,-1390.7 1274.5,-1387.3 1296.7,-1384.2"/>
<polygon fill="#000000" stroke="#000000" points="1297.2819,-1387.6528 1306.7,-1382.8 1296.3113,-1380.7204 1297.2819,-1387.6528"/>
</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="1480.5,-1198 1292.5,-1198 1292.5,-1145 1480.5,-1145 1480.5,-1198"/>
<text text-anchor="middle" x="1386.5" y="-1182.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1386.5" y="-1167.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1386.5" y="-1152.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="M1214.6,-1171.5C1236.2,-1171.5 1259.6,-1171.5 1282.1,-1171.5"/>
<polygon fill="#000000" stroke="#000000" points="1282.4,-1175.0001 1292.4,-1171.5 1282.4,-1168.0001 1282.4,-1175.0001"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node12" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node12"><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="1741,-1084.5 1532,-1084.5 1532,-1016.5 1741,-1016.5 1741,-1084.5"/>
<text text-anchor="middle" x="1636.5" y="-1069.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1636.5" y="-1054.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1636.5" y="-1039.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1636.5" y="-1024.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="edge10" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1441.4,-1144.9C1475.2,-1128.6 1519,-1107.3 1556.7,-1089.1"/>
<polygon fill="#000000" stroke="#000000" points="1558.5916,-1092.0749 1566.1,-1084.6 1555.569,-1085.7611 1558.5916,-1092.0749"/>
</g>
<!-- zcash/zcash#4714 -->
<g id="node10" class="node">
<title>zcash/zcash#4714</title>
<g id="a_node10"><a xlink:href="https://github.com/zcash/zcash/issues/4714" xlink:title="zcash/zcash#4714&#10;[Orchard] Encoding of&#10;Halo 2 proofs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="582,-1505 405,-1505 405,-1452 582,-1452 582,-1505"/>
<text text-anchor="middle" x="493.5" y="-1489.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="493.5" y="-1474.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="493.5" y="-1459.8" font-family="Times,serif" font-size="14.00" fill="#000000">Halo 2 proofs</text>
</a>
</g>
</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" stroke-width="2" points="919,-1505 750,-1505 750,-1452 919,-1452 919,-1505"/>
<text text-anchor="middle" x="834.5" y="-1489.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="834.5" y="-1474.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="834.5" y="-1459.8" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4714&#45;&gt;zcash/zcash#4707 -->
<g id="edge7" class="edge">
<title>zcash/zcash#4714&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M582.2,-1478.5C630.57,-1478.5 690.45,-1478.5 739.74,-1478.5"/>
<polygon fill="#000000" stroke="#000000" points="739.77,-1482.0001 749.77,-1478.5 739.77,-1475.0001 739.77,-1482.0001"/>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge8" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M919.26,-1459.3C941.33,-1454.3 965.07,-1448.7 987,-1443.5 999.56,-1440.5 1012.7,-1437.3 1025.8,-1434.1"/>
<polygon fill="#000000" stroke="#000000" points="1026.8061,-1437.4576 1035.7,-1431.7 1025.1569,-1430.6546 1026.8061,-1437.4576"/>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/zcash#5024 -->
<g id="edge9" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M919.03,-1480.3C1002.4,-1480 1132.7,-1473.8 1241,-1443.5 1273.7,-1434.4 1307.8,-1417.9 1334.8,-1403"/>
<polygon fill="#000000" stroke="#000000" points="1336.6345,-1405.9832 1343.6,-1398 1333.1764,-1399.897 1336.6345,-1405.9832"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node13" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node13"><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,-1580 55,-1580 55,-1527 250,-1527 250,-1580"/>
<text text-anchor="middle" x="152.5" y="-1564.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-1549.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-1534.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/halo2#144 -->
<g id="node14" class="node">
<title>zcash/halo2#144</title>
<g id="a_node14"><a xlink:href="https://github.com/zcash/halo2/issues/144" xlink:title="zcash/halo2#144&#10;book: Specify proof&#10;encoding" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="230,-1505 75,-1505 75,-1452 230,-1452 230,-1505"/>
<text text-anchor="middle" x="152.5" y="-1489.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="152.5" y="-1474.8" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="152.5" y="-1459.8" font-family="Times,serif" font-size="14.00" fill="#000000">encoding</text>
</a>
</g>
</g>
<!-- zcash/halo2#144&#45;&gt;zcash/zcash#4714 -->
<g id="edge11" class="edge">
<title>zcash/halo2#144&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M230.3,-1478.5C279.05,-1478.5 342.31,-1478.5 394.6,-1478.5"/>
<polygon fill="#000000" stroke="#000000" points="394.9,-1482.0001 404.9,-1478.5 394.9,-1475.0001 394.9,-1482.0001"/>
</g>
<!-- zcash/orchard#33 -->
<g id="node15" class="node">
<title>zcash/orchard#33</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/orchard/issues/33" xlink:title="zcash/orchard#33&#10;Implement note commitment&#10;tree logic for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="606.5,-1322 380.5,-1322 380.5,-1269 606.5,-1269 606.5,-1322"/>
<text text-anchor="middle" x="493.5" y="-1306.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="493.5" y="-1291.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="493.5" y="-1276.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node16" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node16"><a xlink:href="https://github.com/zcash/zcash/issues/5018" xlink:title="zcash/zcash#5018&#10;Add Orchard note&#10;commitment tree and&#10;nullifier set to&#10;CCoinsView" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="920.5,-1292 748.5,-1292 748.5,-1209 920.5,-1209 920.5,-1292"/>
<text text-anchor="middle" x="834.5" y="-1276.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="834.5" y="-1261.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="834.5" y="-1246.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="834.5" y="-1231.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="834.5" y="-1216.8" font-family="Times,serif" font-size="14.00" fill="#000000">CCoinsView</text>
</a>
</g>
</g>
<!-- zcash/orchard#33&#45;&gt;zcash/zcash#5018 -->
<g id="edge12" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M606.57,-1280.6C649.29,-1274.9 697.45,-1268.6 738.46,-1263.2"/>
<polygon fill="#000000" stroke="#000000" points="738.9853,-1266.6612 748.45,-1261.9 738.0819,-1259.7198 738.9853,-1266.6612"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node17" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node17"><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="1232,-1363 1032,-1363 1032,-1310 1232,-1310 1232,-1363"/>
<text text-anchor="middle" x="1132" y="-1347.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="1132" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="1132" y="-1317.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="edge13" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M920.55,-1275.4C954.82,-1285.3 994.53,-1296.8 1030.2,-1307.1"/>
<polygon fill="#000000" stroke="#000000" points="1029.6208,-1310.5762 1040.2,-1310 1031.5706,-1303.8532 1029.6208,-1310.5762"/>
</g>
<!-- zcash/zcash#5037&#45;&gt;zcash/zcash#5024 -->
<g id="edge14" class="edge">
<title>zcash/zcash#5037&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1232.2,-1350.3C1253.5,-1353.2 1275.8,-1356.3 1296.7,-1359.1"/>
<polygon fill="#000000" stroke="#000000" points="1296.4141,-1362.5938 1306.8,-1360.5 1297.3753,-1355.6601 1296.4141,-1362.5938"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node18" class="node">
<title>zcash/orchard#32</title>
<g id="a_node18"><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" points="940.5,-1038 728.5,-1038 728.5,-985 940.5,-985 940.5,-1038"/>
<text text-anchor="middle" x="834.5" y="-1022.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="834.5" y="-1007.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="834.5" y="-992.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="M940.85,-1024.3C957.63,-1030 973.77,-1038.1 987,-1049.5 1018.7,-1076.8 992.23,-1108.1 1023,-1136.5 1028.2,-1141.3 1034,-1145.4 1040.1,-1148.9"/>
<polygon fill="#000000" stroke="#000000" points="1038.9085,-1152.2237 1049.4,-1153.7 1042.1191,-1146.0033 1038.9085,-1152.2237"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node19" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node19"><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="1228,-1025.5 1036,-1025.5 1036,-957.5 1228,-957.5 1228,-1025.5"/>
<text text-anchor="middle" x="1132" y="-1010.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1132" y="-995.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1132" y="-980.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1132" y="-965.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="M940.64,-1004.4C968.29,-1002.5 998.07,-1000.5 1025.7,-998.64"/>
<polygon fill="#000000" stroke="#000000" points="1026.0536,-1002.1243 1035.8,-997.97 1025.5902,-995.1397 1026.0536,-1002.1243"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node20" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node20"><a xlink:href="https://github.com/zcash/zcash/issues/5019" xlink:title="zcash/zcash#5019&#10;Add Orchard keys and&#10;addresses to the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="926,-960 743,-960 743,-907 926,-907 926,-960"/>
<text text-anchor="middle" x="834.5" y="-944.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="834.5" y="-929.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="834.5" y="-914.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="M926.23,-931.27C1008.9,-930.59 1133.7,-932.87 1241,-948.5 1337.1,-962.49 1443.5,-990.69 1521.7,-1013.9"/>
<polygon fill="#000000" stroke="#000000" points="1521.0193,-1017.3476 1531.6,-1016.8 1522.9872,-1010.6299 1521.0193,-1017.3476"/>
</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="M926.19,-951.38C957.75,-957.53 993.35,-964.47 1026,-970.83"/>
<polygon fill="#000000" stroke="#000000" points="1025.515,-974.3013 1036,-972.78 1026.8548,-967.4307 1025.515,-974.3013"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node21" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node21"><a xlink:href="https://github.com/zcash/zcash/issues/5179" xlink:title="zcash/zcash#5179&#10;Add Unified Address key&#10;generation and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1233,-821.5 1031,-821.5 1031,-753.5 1233,-753.5 1233,-821.5"/>
<text text-anchor="middle" x="1132" y="-806.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1132" y="-791.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1132" y="-776.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1132" y="-761.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="M926.12,-918.41C946.71,-913.24 968.05,-906.43 987,-897.5 1024.2,-879.97 1061.1,-851.83 1088.3,-828.4"/>
<polygon fill="#000000" stroke="#000000" points="1090.8488,-830.8219 1096.1,-821.62 1086.2565,-825.5388 1090.8488,-830.8219"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node22" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node22"><a xlink:href="https://github.com/zcash/zcash/issues/5178" xlink:title="zcash/zcash#5178&#10;New RPC: z_getnewaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1496,-758.5 1277,-758.5 1277,-720.5 1496,-720.5 1496,-758.5"/>
<text text-anchor="middle" x="1386.5" y="-743.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1386.5" y="-728.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="M1233.3,-768.39C1247.1,-765.78 1261.4,-763.09 1275.4,-760.45"/>
<polygon fill="#000000" stroke="#000000" points="1276.3245,-763.8373 1285.5,-758.54 1275.0238,-756.9592 1276.3245,-763.8373"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node23" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node23"><a xlink:href="https://github.com/zcash/zcash/issues/5182" xlink:title="zcash/zcash#5182&#10;New RPC:&#10;z_getbalanceforaddress" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1480,-702 1293,-702 1293,-649 1480,-649 1480,-702"/>
<text text-anchor="middle" x="1386.5" y="-686.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1386.5" y="-671.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1386.5" y="-656.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="M1191.6,-753.42C1217.4,-739.43 1248.2,-723.68 1277,-711.5 1281.7,-709.5 1286.6,-707.55 1291.5,-705.64"/>
<polygon fill="#000000" stroke="#000000" points="1292.9595,-708.831 1301.1,-702.05 1290.5075,-702.2745 1292.9595,-708.831"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node24" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node24"><a xlink:href="https://github.com/zcash/zcash/issues/5185" xlink:title="zcash/zcash#5185&#10;Add support for funding&#10;z_sendmany from a UA&#10;account" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1481,-630.5 1292,-630.5 1292,-562.5 1481,-562.5 1481,-630.5"/>
<text text-anchor="middle" x="1386.5" y="-615.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1386.5" y="-600.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1386.5" y="-585.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="1386.5" y="-570.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="M1158.1,-753.46C1184.9,-720.52 1229.3,-671.08 1277,-639.5 1278.9,-638.22 1280.9,-636.96 1282.9,-635.74"/>
<polygon fill="#000000" stroke="#000000" points="1285.0408,-638.5488 1292,-630.56 1281.5779,-632.4653 1285.0408,-638.5488"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node25" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/zcash/issues/5180" xlink:title="zcash/zcash#5180&#10;New RPC:&#10;z_getaddressforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1480.5,-901 1292.5,-901 1292.5,-848 1480.5,-848 1480.5,-901"/>
<text text-anchor="middle" x="1386.5" y="-885.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1386.5" y="-870.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1386.5" y="-855.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="M1227.8,-821.52C1244.2,-827.25 1261.1,-833.09 1277,-838.5 1283,-840.53 1289.1,-842.61 1295.3,-844.69"/>
<polygon fill="#000000" stroke="#000000" points="1294.5064,-848.1145 1305.1,-847.95 1296.716,-841.4724 1294.5064,-848.1145"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node26" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node26"><a xlink:href="https://github.com/zcash/zcash/issues/5183" xlink:title="zcash/zcash#5183&#10;New RPC:&#10;z_getbalanceforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1480.5,-830 1292.5,-830 1292.5,-777 1480.5,-777 1480.5,-830"/>
<text text-anchor="middle" x="1386.5" y="-814.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1386.5" y="-799.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1386.5" y="-784.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="M1233.3,-793.87C1249.2,-794.87 1265.7,-795.91 1281.7,-796.91"/>
<polygon fill="#000000" stroke="#000000" points="1281.8984,-800.4295 1292.1,-797.57 1282.3418,-793.4436 1281.8984,-800.4295"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node27" class="node">
<title>zcash/orchard#36</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/orchard/issues/36" xlink:title="zcash/orchard#36&#10;Parsing and serialization&#10;of Orchard keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="590.5,-717.5 396.5,-717.5 396.5,-649.5 590.5,-649.5 590.5,-717.5"/>
<text text-anchor="middle" x="493.5" y="-702.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="493.5" y="-687.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="493.5" y="-672.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="493.5" y="-657.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="M590.72,-711.06C611.41,-720.9 631.4,-734.04 646,-751.5 688.88,-802.76 634.51,-850.48 682,-897.5 695.97,-911.34 714.22,-920.23 733.2,-925.87"/>
<polygon fill="#000000" stroke="#000000" points="732.3057,-929.2538 742.87,-928.45 734.1103,-922.4903 732.3057,-929.2538"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node28" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/librustzcash/issues/371" xlink:title="zcash/librustzcash#371&#10;Implement parsing and&#10;serialization of Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="928.5,-614.5 740.5,-614.5 740.5,-546.5 928.5,-546.5 928.5,-614.5"/>
<text text-anchor="middle" x="834.5" y="-599.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="834.5" y="-584.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="834.5" y="-569.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="834.5" y="-554.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="M590.79,-653.14C609.15,-647.34 628.18,-641.28 646,-635.5 662.04,-630.3 665.88,-628.46 682,-623.5 697.57,-618.71 714.09,-613.84 730.3,-609.18"/>
<polygon fill="#000000" stroke="#000000" points="731.6927,-612.4217 740.34,-606.3 729.7626,-605.6931 731.6927,-612.4217"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node29" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node29"><a xlink:href="https://github.com/zcash/zcash/issues/5133" xlink:title="zcash/zcash#5133&#10;Implement Unified Address&#10;parsing and serialization&#10;to KeyIO" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1239.5,-614.5 1024.5,-614.5 1024.5,-546.5 1239.5,-546.5 1239.5,-614.5"/>
<text text-anchor="middle" x="1132" y="-599.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1132" y="-584.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1132" y="-569.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1132" y="-554.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="M928.63,-580.5C955.89,-580.5 985.99,-580.5 1014.5,-580.5"/>
<polygon fill="#000000" stroke="#000000" points="1014.5,-584.0001 1024.5,-580.5 1014.5,-577.0001 1014.5,-584.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="M1161.4,-614.77C1188.6,-644.3 1231.5,-685.93 1277,-710.5 1281.2,-712.75 1285.5,-714.83 1290,-716.75"/>
<polygon fill="#000000" stroke="#000000" points="1288.7162,-720.0061 1299.3,-720.49 1291.328,-713.5116 1288.7162,-720.0061"/>
</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="M1212.9,-614.57C1233.7,-623 1256.1,-631.82 1277,-639.5 1282.5,-641.53 1288.2,-643.58 1294,-645.6"/>
<polygon fill="#000000" stroke="#000000" points="1293.2053,-649.0282 1303.8,-648.98 1295.4877,-642.4107 1293.2053,-649.0282"/>
</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="M1239.6,-587.26C1253.5,-588.14 1267.8,-589.04 1281.8,-589.92"/>
<polygon fill="#000000" stroke="#000000" points="1281.5997,-593.4142 1291.8,-590.55 1282.0399,-586.4281 1281.5997,-593.4142"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node30" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node30"><a xlink:href="https://github.com/zcash/zcash/issues/5181" xlink:title="zcash/zcash#5181&#10;New RPC:&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1471.5,-544 1301.5,-544 1301.5,-491 1471.5,-491 1471.5,-544"/>
<text text-anchor="middle" x="1386.5" y="-528.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="1386.5" y="-513.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1386.5" y="-498.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="M1239.6,-553.87C1256.8,-549.61 1274.5,-545.22 1291.4,-541.03"/>
<polygon fill="#000000" stroke="#000000" points="1292.4281,-544.3814 1301.3,-538.59 1290.753,-537.5848 1292.4281,-544.3814"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node31" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node31"><a xlink:href="https://github.com/zcash/zcash/issues/5184" xlink:title="zcash/zcash#5184&#10;Add support for UA&#10;recipients to z_sendmany" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1486.5,-473 1286.5,-473 1286.5,-420 1486.5,-420 1486.5,-473"/>
<text text-anchor="middle" x="1386.5" y="-457.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="1386.5" y="-442.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="1386.5" y="-427.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="M1174.7,-546.45C1202.6,-525.51 1240.4,-499.35 1277,-481.5 1280.1,-479.96 1283.4,-478.48 1286.7,-477.03"/>
<polygon fill="#000000" stroke="#000000" points="1288.1511,-480.2165 1296,-473.1 1285.4263,-473.7686 1288.1511,-480.2165"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node32" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/zcash/issues/5191" xlink:title="zcash/zcash#5191&#10;z_getbalance: Return&#10;error if given a UA" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1471,-402 1302,-402 1302,-349 1471,-349 1471,-402"/>
<text text-anchor="middle" x="1386.5" y="-386.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5191</text>
<text text-anchor="middle" x="1386.5" y="-371.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalance: Return</text>
<text text-anchor="middle" x="1386.5" y="-356.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="M1152.6,-546.5C1177.5,-508.16 1222.9,-446.49 1277,-410.5 1281.9,-407.24 1287.1,-404.27 1292.5,-401.56"/>
<polygon fill="#000000" stroke="#000000" points="1294.1987,-404.6304 1301.8,-397.25 1291.2553,-398.2793 1294.1987,-404.6304"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node33" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node33"><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="1209.5,-1284.5 1054.5,-1284.5 1054.5,-1216.5 1209.5,-1216.5 1209.5,-1284.5"/>
<text text-anchor="middle" x="1132" y="-1269.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="1132" y="-1254.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="1132" y="-1239.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="1132" y="-1224.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#5024 -->
<g id="edge34" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1205,-1284.5C1217.1,-1290.2 1229.4,-1296 1241,-1301.5 1267.7,-1314.2 1297.1,-1328.3 1322.5,-1340.5"/>
<polygon fill="#000000" stroke="#000000" points="1321.0736,-1343.6979 1331.6,-1344.9 1324.1207,-1337.3959 1321.0736,-1343.6979"/>
</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="M1209.7,-1226.4C1235.4,-1218.4 1264.2,-1209.5 1291,-1201.1"/>
<polygon fill="#000000" stroke="#000000" points="1292.2625,-1204.3739 1300.8,-1198.1 1290.2135,-1197.6805 1292.2625,-1204.3739"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node34" class="node">
<title>zcash/orchard#30</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/orchard/issues/30" xlink:title="zcash/orchard#30&#10;Implement ZIP 32 for&#10;Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="579.5,-960 407.5,-960 407.5,-907 579.5,-907 579.5,-960"/>
<text text-anchor="middle" x="493.5" y="-944.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="493.5" y="-929.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="493.5" y="-914.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="edge36" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M579.55,-933.5C626.06,-933.5 683.79,-933.5 732.54,-933.5"/>
<polygon fill="#000000" stroke="#000000" points="732.8,-937.0001 742.8,-933.5 732.8,-930.0001 732.8,-937.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node35" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node35"><a xlink:href="https://github.com/zcash/zcash/pull/2534" xlink:title="zcash/zcash#2534&#10;Bitcoin 0.12 P2P/Net PRs&#10;1" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="252.5,-1659 52.5,-1659 52.5,-1655 48.5,-1655 48.5,-1651 52.5,-1651 52.5,-1614 48.5,-1614 48.5,-1610 52.5,-1610 52.5,-1606 252.5,-1606 252.5,-1659"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1655 56.5,-1655 56.5,-1651 52.5,-1651 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1614 56.5,-1614 56.5,-1610 52.5,-1610 "/>
<text text-anchor="middle" x="152.5" y="-1643.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1628.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="-1613.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node36" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node36"><a xlink:href="https://github.com/zcash/zcash/pull/5003" xlink:title="zcash/zcash#5003&#10;net: prerequisites for&#10;p2p encapsulation changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="599.5,-1674 387.5,-1674 387.5,-1670 383.5,-1670 383.5,-1666 387.5,-1666 387.5,-1629 383.5,-1629 383.5,-1625 387.5,-1625 387.5,-1621 599.5,-1621 599.5,-1674"/>
<polyline fill="none" stroke="#000000" points="387.5,-1670 391.5,-1670 391.5,-1666 387.5,-1666 "/>
<polyline fill="none" stroke="#000000" points="387.5,-1629 391.5,-1629 391.5,-1625 387.5,-1625 "/>
<text text-anchor="middle" x="493.5" y="-1658.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="493.5" y="-1643.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="493.5" y="-1628.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="edge37" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.51,-1636.9C291.55,-1638.6 336.58,-1640.6 377.07,-1642.4"/>
<polygon fill="#000000" stroke="#000000" points="377.1304,-1645.905 387.26,-1642.8 377.405,-1638.9104 377.1304,-1645.905"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node37" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node37"><a xlink:href="https://github.com/zcash/zcash/pull/5005" xlink:title="zcash/zcash#5005&#10;net: Split DNS resolving&#10;functionality out of net&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="930,-1591.5 739,-1591.5 739,-1587.5 735,-1587.5 735,-1583.5 739,-1583.5 739,-1531.5 735,-1531.5 735,-1527.5 739,-1527.5 739,-1523.5 930,-1523.5 930,-1591.5"/>
<polyline fill="none" stroke="#000000" points="739,-1587.5 743,-1587.5 743,-1583.5 739,-1583.5 "/>
<polyline fill="none" stroke="#000000" points="739,-1531.5 743,-1531.5 743,-1527.5 739,-1527.5 "/>
<text text-anchor="middle" x="834.5" y="-1576.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="834.5" y="-1561.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="834.5" y="-1546.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="834.5" y="-1531.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="edge38" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.76,-1621.5C380.15,-1607.5 599,-1583.4 728.89,-1569.1"/>
<polygon fill="#000000" stroke="#000000" points="729.2947,-1572.5767 738.85,-1568 728.5262,-1565.619 729.2947,-1572.5767"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node38" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node38"><a xlink:href="https://github.com/zcash/zcash/pull/5004" xlink:title="zcash/zcash#5004&#10;Verify that expected&#10;services are available&#10;from peer nodes &amp;&#10;disconnect otherwise." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="921.5,-1693 747.5,-1693 747.5,-1689 743.5,-1689 743.5,-1685 747.5,-1685 747.5,-1618 743.5,-1618 743.5,-1614 747.5,-1614 747.5,-1610 921.5,-1610 921.5,-1693"/>
<polyline fill="none" stroke="#000000" points="747.5,-1689 751.5,-1689 751.5,-1685 747.5,-1685 "/>
<polyline fill="none" stroke="#000000" points="747.5,-1618 751.5,-1618 751.5,-1614 747.5,-1614 "/>
<text text-anchor="middle" x="834.5" y="-1677.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="834.5" y="-1662.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="834.5" y="-1647.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="834.5" y="-1632.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="834.5" y="-1617.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="edge39" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M599.53,-1648.7C643.51,-1649.3 694.2,-1649.9 737.22,-1650.4"/>
<polygon fill="#000000" stroke="#000000" points="737.3761,-1653.9016 747.41,-1650.5 737.4449,-1646.9019 737.3761,-1653.9016"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node39" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node39"><a xlink:href="https://github.com/zcash/zcash/pull/5006" xlink:title="zcash/zcash#5006&#10;Rework AddNode behaviour" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1241,-1623.5 1023,-1623.5 1023,-1619.5 1019,-1619.5 1019,-1615.5 1023,-1615.5 1023,-1593.5 1019,-1593.5 1019,-1589.5 1023,-1589.5 1023,-1585.5 1241,-1585.5 1241,-1623.5"/>
<polyline fill="none" stroke="#000000" points="1023,-1619.5 1027,-1619.5 1027,-1615.5 1023,-1615.5 "/>
<polyline fill="none" stroke="#000000" points="1023,-1593.5 1027,-1593.5 1027,-1589.5 1023,-1589.5 "/>
<text text-anchor="middle" x="1132" y="-1608.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1132" y="-1593.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="edge40" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M930.27,-1572.6C956.59,-1576.8 985.46,-1581.3 1012.9,-1585.7"/>
<polygon fill="#000000" stroke="#000000" points="1012.5755,-1589.1922 1023,-1587.3 1013.6708,-1582.2784 1012.5755,-1589.1922"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge41" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M921.75,-1637.7C950.17,-1633.2 982.23,-1628.2 1012.6,-1623.4"/>
<polygon fill="#000000" stroke="#000000" points="1013.4632,-1626.8075 1022.8,-1621.8 1012.3784,-1619.892 1013.4632,-1626.8075"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node40" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node40"><a xlink:href="https://github.com/zcash/zcash/pull/5008" xlink:title="zcash/zcash#5008&#10;net: Feeler connections&#10;to increase online addrs&#10;in the tried table." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1481,-1638.5 1292,-1638.5 1292,-1634.5 1288,-1634.5 1288,-1630.5 1292,-1630.5 1292,-1578.5 1288,-1578.5 1288,-1574.5 1292,-1574.5 1292,-1570.5 1481,-1570.5 1481,-1638.5"/>
<polyline fill="none" stroke="#000000" points="1292,-1634.5 1296,-1634.5 1296,-1630.5 1292,-1630.5 "/>
<polyline fill="none" stroke="#000000" points="1292,-1578.5 1296,-1578.5 1296,-1574.5 1292,-1574.5 "/>
<text text-anchor="middle" x="1386.5" y="-1623.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1386.5" y="-1608.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1386.5" y="-1593.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1386.5" y="-1578.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="edge42" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1241,-1604.5C1254.5,-1604.5 1268.2,-1604.5 1281.6,-1604.5"/>
<polygon fill="#000000" stroke="#000000" points="1281.7,-1608.0001 1291.7,-1604.5 1281.7,-1601.0001 1281.7,-1608.0001"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node41" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node41"><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="928.5,-1363 740.5,-1363 740.5,-1310 928.5,-1310 928.5,-1363"/>
<text text-anchor="middle" x="834.5" y="-1347.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="834.5" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="834.5" y="-1317.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="edge43" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M928.63,-1336.5C958.15,-1336.5 991,-1336.5 1021.5,-1336.5"/>
<polygon fill="#000000" stroke="#000000" points="1021.8,-1340.0001 1031.8,-1336.5 1021.8,-1333.0001 1021.8,-1340.0001"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node42" class="node">
<title>zcash/orchard#45</title>
<g id="a_node42"><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="602,-798.5 385,-798.5 385,-760.5 602,-760.5 602,-798.5"/>
<text text-anchor="middle" x="493.5" y="-783.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="493.5" y="-768.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="edge44" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M602.01,-791.42C618.76,-797.76 634.33,-807.03 646,-820.5 733.92,-922.01 595.01,-1018.2 682,-1120.5 696.4,-1137.4 716.86,-1148.1 738.13,-1154.7"/>
<polygon fill="#000000" stroke="#000000" points="737.3799,-1158.1236 747.95,-1157.4 739.2357,-1151.3741 737.3799,-1158.1236"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node43" class="node">
<title>zcash/halo2#79</title>
<g id="a_node43"><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="915,-716 754,-716 754,-633 915,-633 915,-716"/>
<text text-anchor="middle" x="834.5" y="-700.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="834.5" y="-685.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="834.5" y="-670.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="834.5" y="-655.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="834.5" y="-640.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="edge45" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M555.25,-760.49C607.98,-744.25 684.51,-720.68 744.13,-702.33"/>
<polygon fill="#000000" stroke="#000000" points="745.396,-705.6023 753.92,-699.31 743.3326,-698.9133 745.396,-705.6023"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node44" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node44"><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,-1749.5 56,-1749.5 56,-1745.5 52,-1745.5 52,-1741.5 56,-1741.5 56,-1719.5 52,-1719.5 52,-1715.5 56,-1715.5 56,-1711.5 249,-1711.5 249,-1749.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1745.5 60,-1745.5 60,-1741.5 56,-1741.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-1719.5 60,-1719.5 60,-1715.5 56,-1715.5 "/>
<text text-anchor="middle" x="152.5" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-1719.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="node45" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node45"><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,-1749.5 397,-1749.5 397,-1745.5 393,-1745.5 393,-1741.5 397,-1741.5 397,-1719.5 393,-1719.5 393,-1715.5 397,-1715.5 397,-1711.5 590,-1711.5 590,-1749.5"/>
<polyline fill="none" stroke="#000000" points="397,-1745.5 401,-1745.5 401,-1741.5 397,-1741.5 "/>
<polyline fill="none" stroke="#000000" points="397,-1719.5 401,-1719.5 401,-1715.5 397,-1715.5 "/>
<text text-anchor="middle" x="493.5" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="493.5" y="-1719.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="edge46" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.3,-1730.5C292.14,-1730.5 342.66,-1730.5 386.61,-1730.5"/>
<polygon fill="#000000" stroke="#000000" points="386.75,-1734.0001 396.75,-1730.5 386.75,-1727.0001 386.75,-1734.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node46" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node46"><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="931,-1749.5 738,-1749.5 738,-1745.5 734,-1745.5 734,-1741.5 738,-1741.5 738,-1719.5 734,-1719.5 734,-1715.5 738,-1715.5 738,-1711.5 931,-1711.5 931,-1749.5"/>
<polyline fill="none" stroke="#000000" points="738,-1745.5 742,-1745.5 742,-1741.5 738,-1741.5 "/>
<polyline fill="none" stroke="#000000" points="738,-1719.5 742,-1719.5 742,-1715.5 738,-1715.5 "/>
<text text-anchor="middle" x="834.5" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="834.5" y="-1719.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="edge47" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M590.3,-1730.5C633.14,-1730.5 683.66,-1730.5 727.61,-1730.5"/>
<polygon fill="#000000" stroke="#000000" points="727.75,-1734.0001 737.75,-1730.5 727.75,-1727.0001 727.75,-1734.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node47" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node47"><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="586,-883 401,-883 401,-830 586,-830 586,-883"/>
<text text-anchor="middle" x="493.5" y="-867.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="493.5" y="-852.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="493.5" y="-837.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="edge48" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M586.23,-877.44C631.71,-887.71 686.58,-900.1 733.16,-910.62"/>
<polygon fill="#000000" stroke="#000000" points="732.4453,-914.0466 742.97,-912.83 733.9837,-907.2178 732.4453,-914.0466"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node48" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node48"><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="935.5,-802.5 733.5,-802.5 733.5,-734.5 935.5,-734.5 935.5,-802.5"/>
<text text-anchor="middle" x="834.5" y="-787.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="834.5" y="-772.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="834.5" y="-757.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="834.5" y="-742.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="edge49" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M586.23,-832.57C628.58,-821.64 679.09,-808.61 723.45,-797.16"/>
<polygon fill="#000000" stroke="#000000" points="724.6016,-800.4776 733.41,-794.59 722.8527,-793.6996 724.6016,-800.4776"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge50" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M935.64,-774.96C963.01,-776.71 992.8,-778.61 1020.7,-780.39"/>
<polygon fill="#000000" stroke="#000000" points="1020.6976,-783.8969 1030.9,-781.04 1021.1429,-776.911 1020.6976,-783.8969"/>
</g>
<!-- zcash/zips#364 -->
<g id="node49" class="node">
<title>zcash/zips#364</title>
<g id="a_node49"><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="255,-883 50,-883 50,-830 255,-830 255,-883"/>
<text text-anchor="middle" x="152.5" y="-867.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="152.5" y="-852.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="152.5" y="-837.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="edge51" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M255.27,-856.5C298.12,-856.5 347.78,-856.5 390.63,-856.5"/>
<polygon fill="#000000" stroke="#000000" points="390.8,-860.0001 400.8,-856.5 390.8,-853.0001 390.8,-860.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node50" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node50"><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,-1821 61.5,-1821 61.5,-1768 243.5,-1768 243.5,-1821"/>
<text text-anchor="middle" x="152.5" y="-1805.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="152.5" y="-1790.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="152.5" y="-1775.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node51" class="node">
<title>zcash/zips#511</title>
<g id="a_node51"><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="942,-888.5 727,-888.5 727,-820.5 942,-820.5 942,-888.5"/>
<text text-anchor="middle" x="834.5" y="-873.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="834.5" y="-858.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="834.5" y="-843.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="834.5" y="-828.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="edge52" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M942.32,-830.22C967.98,-824.44 995.4,-818.26 1021.2,-812.46"/>
<polygon fill="#000000" stroke="#000000" points="1022.0149,-815.8642 1031,-810.25 1020.475,-809.0357 1022.0149,-815.8642"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node52" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node52"><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="987,-1112 682,-1112 682,-1059 987,-1059 987,-1112"/>
<text text-anchor="middle" x="834.5" y="-1096.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="834.5" y="-1081.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="834.5" y="-1066.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/zcash#5022 -->
<g id="edge53" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M960.64,-1112C970.11,-1116.9 979.06,-1122.7 987,-1129.5 1016,-1154.4 995.25,-1181.3 1023,-1207.5 1029.6,-1213.8 1037.3,-1219.1 1045.4,-1223.8"/>
<polygon fill="#000000" stroke="#000000" points="1043.8229,-1226.9252 1054.3,-1228.5 1047.0917,-1220.7353 1043.8229,-1226.9252"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node53" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node53"><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="1226,-1127 1038,-1127 1038,-1044 1226,-1044 1226,-1127"/>
<text text-anchor="middle" x="1132" y="-1111.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="1132" y="-1096.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="1132" y="-1081.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="1132" y="-1066.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="1132" y="-1051.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash.</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350 -->
<g id="edge54" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M987.17,-1085.5C1000.8,-1085.5 1014.4,-1085.5 1027.4,-1085.5"/>
<polygon fill="#000000" stroke="#000000" points="1027.8,-1089.0001 1037.8,-1085.5 1027.8,-1082.0001 1027.8,-1089.0001"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node54" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node54"><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,-1892 51,-1892 51,-1839 254,-1839 254,-1892"/>
<text text-anchor="middle" x="152.5" y="-1876.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="152.5" y="-1861.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="152.5" y="-1846.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/halo2#63 -->
<g id="node55" class="node">
<title>zcash/halo2#63</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/halo2/issues/63" xlink:title="zcash/halo2#63&#10;Implement zero&#45;knowledge&#45;&#10;ness" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="942.5,-1434 726.5,-1434 726.5,-1381 942.5,-1381 942.5,-1434"/>
<text text-anchor="middle" x="834.5" y="-1418.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="834.5" y="-1403.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="834.5" y="-1388.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="edge55" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M942.75,-1407.5C969.71,-1407.5 998.59,-1407.5 1025.5,-1407.5"/>
<polygon fill="#000000" stroke="#000000" points="1025.7,-1411.0001 1035.7,-1407.5 1025.7,-1404.0001 1025.7,-1411.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node56" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node56"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="646,-627 341,-627 341,-574 646,-574 646,-627"/>
<text text-anchor="middle" x="493.5" y="-611.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="493.5" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="493.5" y="-581.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="edge56" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M646.05,-591.55C674.51,-589.88 703.64,-588.17 730.23,-586.62"/>
<polygon fill="#000000" stroke="#000000" points="730.5121,-590.1096 740.29,-586.03 730.1022,-583.1216 730.5121,-590.1096"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node57" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node57"><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="646,-1109 341,-1109 341,-1056 646,-1056 646,-1109"/>
<text text-anchor="middle" x="493.5" y="-1093.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="493.5" y="-1078.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="493.5" y="-1063.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="edge57" 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="M646.05,-1083.8C654.59,-1083.9 663.19,-1084 671.76,-1084.1"/>
<polygon fill="#000000" stroke="#000000" points="671.7756,-1087.6002 681.81,-1084.2 671.8454,-1080.6006 671.7756,-1087.6002"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="node58" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/24" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#10;Implement Orchard key&#10;components test vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="305,-627 0,-627 0,-574 305,-574 305,-627"/>
<text text-anchor="middle" x="152.5" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</text>
<text text-anchor="middle" x="152.5" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="152.5" y="-581.8" font-family="Times,serif" font-size="14.00" fill="#000000">components test vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge58" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M305.05,-600.5C313.59,-600.5 322.19,-600.5 330.76,-600.5"/>
<polygon fill="#000000" stroke="#000000" points="330.81,-604.0001 340.81,-600.5 330.81,-597.0001 330.81,-604.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#30 -->
<g id="node59" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#30</title>
<g id="a_node59"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/30" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#10;Orchard note encryption" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="646,-1030.5 341,-1030.5 341,-1026.5 337,-1026.5 337,-1022.5 341,-1022.5 341,-1000.5 337,-1000.5 337,-996.5 341,-996.5 341,-992.5 646,-992.5 646,-1030.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="341,-1026.5 345,-1026.5 345,-1022.5 341,-1022.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="341,-1000.5 345,-1000.5 345,-996.5 341,-996.5 "/>
<text text-anchor="middle" x="493.5" y="-1015.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#30</text>
<text text-anchor="middle" x="493.5" y="-1000.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard note encryption</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#45;&gt;zcash/orchard#32 -->
<g id="edge59" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M646.05,-1011.5C670.3,-1011.5 695.04,-1011.5 718.28,-1011.5"/>
<polygon fill="#000000" stroke="#000000" points="718.49,-1015.0001 728.49,-1011.5 718.49,-1008.0001 718.49,-1015.0001"/>
</g>
<!-- zcash/halo2#64 -->
<g id="node60" class="node">
<title>zcash/halo2#64</title>
<g id="a_node60"><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="237.5,-1180 67.5,-1180 67.5,-1127 237.5,-1127 237.5,-1180"/>
<text text-anchor="middle" x="152.5" y="-1164.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="152.5" y="-1149.8" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="152.5" y="-1134.8" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#73 -->
<g id="edge60" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M237.67,-1171.2C286.03,-1181.3 346.73,-1193.9 396.87,-1204.4"/>
<polygon fill="#000000" stroke="#000000" points="396.2544,-1207.8463 406.75,-1206.4 397.6432,-1200.9855 396.2544,-1207.8463"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node61" class="node">
<title>zcash/halo2#235</title>
<g id="a_node61"><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="581.5,-1180 405.5,-1180 405.5,-1127 581.5,-1127 581.5,-1180"/>
<text text-anchor="middle" x="493.5" y="-1164.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="493.5" y="-1149.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="493.5" y="-1134.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="edge61" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M237.67,-1153.5C285.47,-1153.5 345.32,-1153.5 395.12,-1153.5"/>
<polygon fill="#000000" stroke="#000000" points="395.26,-1157.0001 405.26,-1153.5 395.26,-1150.0001 395.26,-1157.0001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge62" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M581.76,-1156.3C629.48,-1157.9 688.49,-1159.8 737.49,-1161.4"/>
<polygon fill="#000000" stroke="#000000" points="737.6923,-1164.9073 747.79,-1161.7 737.8962,-1157.9103 737.6923,-1164.9073"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node62" class="node">
<title>zcash/halo2#75</title>
<g id="a_node62"><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="1221.5,-313 1042.5,-313 1042.5,-260 1221.5,-260 1221.5,-313"/>
<text text-anchor="middle" x="1132" y="-297.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="1132" y="-282.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1132" y="-267.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node63" class="node">
<title>zcash/halo2#251</title>
<g id="a_node63"><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="1491.5,-313 1281.5,-313 1281.5,-260 1491.5,-260 1491.5,-313"/>
<text text-anchor="middle" x="1386.5" y="-297.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1386.5" y="-282.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="1386.5" y="-267.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="edge63" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1221.7,-286.5C1237.7,-286.5 1254.6,-286.5 1271.2,-286.5"/>
<polygon fill="#000000" stroke="#000000" points="1271.5,-290.0001 1281.5,-286.5 1271.5,-283.0001 1271.5,-290.0001"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node64" class="node">
<title>zcash/halo2#78</title>
<g id="a_node64"><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="595.5,-555.5 391.5,-555.5 391.5,-487.5 595.5,-487.5 595.5,-555.5"/>
<text text-anchor="middle" x="493.5" y="-540.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="493.5" y="-525.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="493.5" y="-510.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="493.5" y="-495.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="edge64" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M595.72,-538.86C613.61,-544.99 631.21,-553.28 646,-564.5 670.47,-583.06 657.98,-604.36 682,-623.5 699.97,-637.82 722.15,-648.21 743.98,-655.7"/>
<polygon fill="#000000" stroke="#000000" points="743.0375,-659.074 753.63,-658.85 745.2098,-652.4196 743.0375,-659.074"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node65" class="node">
<title>zcash/halo2#250</title>
<g id="a_node65"><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="931.5,-313 737.5,-313 737.5,-260 931.5,-260 931.5,-313"/>
<text text-anchor="middle" x="834.5" y="-297.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="834.5" y="-282.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="834.5" y="-267.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="edge65" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595.81,-500.62C613.21,-494.87 630.62,-487.61 646,-478.5 715.33,-437.44 776.82,-364.54 809.55,-321.35"/>
<polygon fill="#000000" stroke="#000000" points="812.5118,-323.2338 815.7,-313.13 806.9069,-319.0403 812.5118,-323.2338"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge66" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M931.5,-286.5C963.63,-286.5 999.44,-286.5 1031.8,-286.5"/>
<polygon fill="#000000" stroke="#000000" points="1032.2,-290.0001 1042.2,-286.5 1032.2,-283.0001 1032.2,-290.0001"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node66" class="node">
<title>zcash/halo2#57</title>
<g id="a_node66"><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,-1978.5 81,-1978.5 81,-1910.5 224,-1910.5 224,-1978.5"/>
<text text-anchor="middle" x="152.5" y="-1963.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-1948.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-1933.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-1918.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node67" class="node">
<title>zcash/halo2#82</title>
<g id="a_node67"><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,-2080 56,-2080 56,-1997 249,-1997 249,-2080"/>
<text text-anchor="middle" x="152.5" y="-2064.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-2049.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-2034.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="-2019.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-2004.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node68" class="node">
<title>zcash/halo2#248</title>
<g id="a_node68"><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="595,-383 392,-383 392,-330 595,-330 595,-383"/>
<text text-anchor="middle" x="493.5" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="493.5" y="-352.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="493.5" y="-337.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="edge67" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595.35,-335.59C636.96,-327.05 685.11,-317.17 727.25,-308.52"/>
<polygon fill="#000000" stroke="#000000" points="728.1797,-311.9021 737.27,-306.46 726.77,-305.0455 728.1797,-311.9021"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node69" class="node">
<title>zcash/halo2#249</title>
<g id="a_node69"><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="586,-311.5 401,-311.5 401,-243.5 586,-243.5 586,-311.5"/>
<text text-anchor="middle" x="493.5" y="-296.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="493.5" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="493.5" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="493.5" y="-251.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="edge68" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M586.23,-279.95C629.78,-281.1 681.94,-282.47 727.18,-283.67"/>
<polygon fill="#000000" stroke="#000000" points="727.2303,-287.1725 737.32,-283.94 727.4167,-280.175 727.2303,-287.1725"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node70" class="node">
<title>zcash/halo2#246</title>
<g id="a_node70"><a xlink:href="https://github.com/zcash/halo2/issues/246" xlink:title="zcash/halo2#246&#10;Create recursive proof&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="242,-218 63,-218 63,-165 242,-165 242,-218"/>
<text text-anchor="middle" x="152.5" y="-202.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="152.5" y="-187.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="152.5" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node71" class="node">
<title>zcash/halo2#247</title>
<g id="a_node71"><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="581.5,-225.5 405.5,-225.5 405.5,-157.5 581.5,-157.5 581.5,-225.5"/>
<text text-anchor="middle" x="493.5" y="-210.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="493.5" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="493.5" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="493.5" y="-165.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="edge69" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M242.09,-191.5C289.16,-191.5 346.94,-191.5 395.24,-191.5"/>
<polygon fill="#000000" stroke="#000000" points="395.39,-195.0001 405.39,-191.5 395.39,-188.0001 395.39,-195.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge70" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M581.76,-216.09C626.9,-228.66 682.15,-244.06 729.47,-257.24"/>
<polygon fill="#000000" stroke="#000000" points="728.5576,-260.619 739.13,-259.93 730.4355,-253.8756 728.5576,-260.619"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node72" class="node">
<title>zcash/halo2#245</title>
<g id="a_node72"><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="596.5,-139.5 390.5,-139.5 390.5,-71.5 596.5,-71.5 596.5,-139.5"/>
<text text-anchor="middle" x="493.5" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="493.5" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="493.5" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="493.5" y="-79.3" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge71" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M596.68,-129.16C613.55,-134.55 630.54,-140.97 646,-148.5 703.29,-176.41 761.26,-222.04 797.5,-253.13"/>
<polygon fill="#000000" stroke="#000000" points="795.4895,-256.0189 805.34,-259.92 800.0722,-250.7275 795.4895,-256.0189"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node73" class="node">
<title>zcash/halo2#210</title>
<g id="a_node73"><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="602.5,-469.5 384.5,-469.5 384.5,-401.5 602.5,-401.5 602.5,-469.5"/>
<text text-anchor="middle" x="493.5" y="-454.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="493.5" y="-439.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="493.5" y="-424.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="493.5" y="-409.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="edge72" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M602.85,-407.23C617.54,-402.48 632.26,-397.22 646,-391.5 694.98,-371.1 747.47,-341.13 784.59,-318.43"/>
<polygon fill="#000000" stroke="#000000" points="786.5315,-321.3449 793.21,-313.12 782.8601,-315.3849 786.5315,-321.3449"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node74" class="node">
<title>zcash/orchard#38</title>
<g id="a_node74"><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,-1251 57,-1251 57,-1198 248,-1198 248,-1251"/>
<text text-anchor="middle" x="152.5" y="-1235.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="152.5" y="-1220.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="152.5" y="-1205.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/halo2#73 -->
<g id="edge73" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M248.39,-1224.5C294.73,-1224.5 350.23,-1224.5 396.69,-1224.5"/>
<polygon fill="#000000" stroke="#000000" points="396.77,-1228.0001 406.77,-1224.5 396.77,-1221.0001 396.77,-1228.0001"/>
</g>
</g>
</svg>