developers/zcash-core-dag.svg

1538 lines
110 KiB
XML

<?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="1898pt" height="2436pt"
viewBox="0.00 0.00 1898.00 2436.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 2432)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2432 1894,-2432 1894,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="195.5,-53.5 7.5,-53.5 7.5,-15.5 195.5,-15.5 195.5,-53.5"/>
<text text-anchor="middle" x="101.5" y="-38.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="101.5" y="-23.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="487.5,-61 295.5,-61 295.5,-8 487.5,-8 487.5,-61"/>
<text text-anchor="middle" x="391.5" y="-45.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="391.5" y="-30.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="391.5" y="-15.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="M195.65,-34.5C224.21,-34.5 255.77,-34.5 285.07,-34.5"/>
<polygon fill="#000000" stroke="#000000" points="285.33,-38.0001 295.33,-34.5 285.33,-31.0001 285.33,-38.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="194.5,-478 8.5,-478 8.5,-425 194.5,-425 194.5,-478"/>
<text text-anchor="middle" x="101.5" y="-462.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="101.5" y="-447.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="101.5" y="-432.8" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/orchard#4 -->
<g id="node4" class="node">
<title>zcash/orchard#4</title>
<g id="a_node4"><a xlink:href="https://github.com/zcash/orchard/issues/4" xlink:title="zcash/orchard#4&#10;Implement the Action&#10;circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1116.5,-780 943.5,-780 943.5,-727 1116.5,-727 1116.5,-780"/>
<text text-anchor="middle" x="1030" y="-764.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="1030" y="-749.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="1030" y="-734.8" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node5" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node5"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard&#10;consensus rules as an NU&#10;feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1384,-587.5 1181,-587.5 1181,-519.5 1384,-519.5 1384,-587.5"/>
<text text-anchor="middle" x="1282.5" y="-572.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="1282.5" y="-557.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1282.5" y="-542.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules as an NU</text>
<text text-anchor="middle" x="1282.5" y="-527.3" font-family="Times,serif" font-size="14.00" fill="#000000">feature</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge2" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M1116.7,-732.51C1124.8,-728.37 1132.4,-723.42 1139,-717.5 1167.7,-691.74 1151.2,-668.87 1175,-638.5 1188,-621.92 1204.8,-606.65 1221.3,-593.76"/>
<polygon fill="#000000" stroke="#000000" points="1223.5451,-596.4501 1229.4,-587.62 1219.3165,-590.8717 1223.5451,-596.4501"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node6" class="node">
<title>zcash/orchard#35</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/orchard/issues/35" xlink:title="zcash/orchard#35&#10;Transaction building&#10;support" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1365,-1320 1200,-1320 1200,-1267 1365,-1267 1365,-1320"/>
<text text-anchor="middle" x="1282.5" y="-1304.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="1282.5" y="-1289.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="1282.5" y="-1274.8" font-family="Times,serif" font-size="14.00" fill="#000000">support</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/orchard#35 -->
<g id="edge3" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1116.7,-770.15C1125.2,-774.86 1133,-780.86 1139,-788.5 1203.8,-870.54 1110.7,-1175.1 1175,-1257.5 1179.5,-1263.3 1185,-1268.2 1191.1,-1272.3"/>
<polygon fill="#000000" stroke="#000000" points="1189.403,-1275.3622 1199.8,-1277.4 1192.943,-1269.3233 1189.403,-1275.3622"/>
</g>
<!-- zcash/zcash#5195 -->
<g id="node7" class="node">
<title>zcash/zcash#5195</title>
<g id="a_node7"><a xlink:href="https://github.com/zcash/zcash/issues/5195" xlink:title="zcash/zcash#5195&#10;Implement Orchard proof&#10;verification consensus&#10;rule" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1383,-787.5 1182,-787.5 1182,-719.5 1383,-719.5 1383,-787.5"/>
<text text-anchor="middle" x="1282.5" y="-772.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5195</text>
<text text-anchor="middle" x="1282.5" y="-757.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard proof</text>
<text text-anchor="middle" x="1282.5" y="-742.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification consensus</text>
<text text-anchor="middle" x="1282.5" y="-727.3" font-family="Times,serif" font-size="14.00" fill="#000000">rule</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/zcash#5195 -->
<g id="edge4" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M1116.5,-753.5C1134.2,-753.5 1153.1,-753.5 1171.5,-753.5"/>
<polygon fill="#000000" stroke="#000000" points="1171.7,-757.0001 1181.7,-753.5 1171.7,-750.0001 1171.7,-757.0001"/>
</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="1615,-820 1456,-820 1456,-767 1615,-767 1615,-820"/>
<text text-anchor="middle" x="1535.5" y="-804.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1535.5" y="-789.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1535.5" y="-774.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="M1328.7,-587.63C1348.2,-602.61 1370.7,-620.79 1390,-638.5 1432.5,-677.52 1477.3,-726.65 1505.8,-759.02"/>
<polygon fill="#000000" stroke="#000000" points="1503.4692,-761.6697 1512.7,-766.87 1508.7268,-757.0483 1503.4692,-761.6697"/>
</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="1629.5,-1375 1441.5,-1375 1441.5,-1322 1629.5,-1322 1629.5,-1375"/>
<text text-anchor="middle" x="1535.5" y="-1359.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1535.5" y="-1344.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1535.5" y="-1329.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="M1365.3,-1311.5C1386.3,-1316.1 1409.2,-1321 1431.1,-1325.8"/>
<polygon fill="#000000" stroke="#000000" points="1430.5815,-1329.2696 1441.1,-1328 1432.0856,-1322.433 1430.5815,-1329.2696"/>
</g>
<!-- zcash/zcash#5195&#45;&gt;zcash/zcash#5024 -->
<g id="edge7" class="edge">
<title>zcash/zcash#5195&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1383.2,-769.42C1403.8,-772.69 1425.4,-776.1 1445.7,-779.29"/>
<polygon fill="#000000" stroke="#000000" points="1445.3755,-782.7822 1455.8,-780.89 1446.4708,-775.8684 1445.3755,-782.7822"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node10" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node10"><a xlink:href="https://github.com/zcash/zcash/issues/5023" xlink:title="zcash/zcash#5023&#10;Implement support for&#10;Orchard shielded coinbase&#10;output" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1890,-1444.5 1681,-1444.5 1681,-1376.5 1890,-1376.5 1890,-1444.5"/>
<text text-anchor="middle" x="1785.5" y="-1429.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1785.5" y="-1414.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1785.5" y="-1399.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1785.5" y="-1384.3" font-family="Times,serif" font-size="14.00" fill="#000000">output</text>
</a>
</g>
</g>
<!-- zcash/zcash#5021&#45;&gt;zcash/zcash#5023 -->
<g id="edge8" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1629.7,-1371.9C1643.1,-1375.2 1657.1,-1378.7 1670.9,-1382.1"/>
<polygon fill="#000000" stroke="#000000" points="1670.452,-1385.5947 1681,-1384.6 1672.1339,-1378.7997 1670.452,-1385.5947"/>
</g>
<!-- zcash/zcash#4707 -->
<g id="node11" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node11"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="1114.5,-537 945.5,-537 945.5,-484 1114.5,-484 1114.5,-537"/>
<text text-anchor="middle" x="1030" y="-521.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="1030" y="-506.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="1030" y="-491.8" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge9" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M1114.8,-524.94C1132.8,-528 1152,-531.27 1170.8,-534.48"/>
<polygon fill="#000000" stroke="#000000" points="1170.456,-537.9715 1180.9,-536.19 1171.6246,-531.0697 1170.456,-537.9715"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node12" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/zcash/issues/4819" xlink:title="zcash/zcash#4819&#10;Backport upstream PRs&#10;that remove Boost usage" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="199,-1512 4,-1512 4,-1459 199,-1459 199,-1512"/>
<text text-anchor="middle" x="101.5" y="-1496.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="101.5" y="-1481.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="101.5" y="-1466.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/orchard#33 -->
<g id="node13" class="node">
<title>zcash/orchard#33</title>
<g id="a_node13"><a xlink:href="https://github.com/zcash/orchard/issues/33" xlink:title="zcash/orchard#33&#10;Implement note commitment&#10;tree logic for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="845.5,-911 619.5,-911 619.5,-858 845.5,-858 845.5,-911"/>
<text text-anchor="middle" x="732.5" y="-895.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="732.5" y="-880.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="732.5" y="-865.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node14" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node14"><a xlink:href="https://github.com/zcash/zcash/issues/5018" xlink:title="zcash/zcash#5018&#10;Add Orchard note&#10;commitment tree and&#10;nullifier set to&#10;CCoinsView" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1116,-881 944,-881 944,-798 1116,-798 1116,-881"/>
<text text-anchor="middle" x="1030" y="-865.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="1030" y="-850.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1030" y="-835.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="1030" y="-820.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="1030" y="-805.8" font-family="Times,serif" font-size="14.00" fill="#000000">CCoinsView</text>
</a>
</g>
</g>
<!-- zcash/orchard#33&#45;&gt;zcash/zcash#5018 -->
<g id="edge10" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M845.82,-867.36C874.78,-862.98 905.64,-858.31 933.65,-854.07"/>
<polygon fill="#000000" stroke="#000000" points="934.4753,-857.4851 943.84,-852.53 933.4292,-850.5637 934.4753,-857.4851"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node15" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/zcash/issues/5037" xlink:title="zcash/zcash#5037&#10;Add Orchard metadata to&#10;history trees" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1382.5,-701 1182.5,-701 1182.5,-648 1382.5,-648 1382.5,-701"/>
<text text-anchor="middle" x="1282.5" y="-685.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="1282.5" y="-670.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="1282.5" y="-655.8" font-family="Times,serif" font-size="14.00" fill="#000000">history trees</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5037 -->
<g id="edge11" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M1116,-806.6C1124.4,-801.32 1132.2,-795.31 1139,-788.5 1165.9,-761.43 1146.6,-735.98 1175,-710.5 1176.3,-709.3 1177.7,-708.15 1179.1,-707.03"/>
<polygon fill="#000000" stroke="#000000" points="1181.4487,-709.6563 1187.6,-701.03 1177.4119,-703.9375 1181.4487,-709.6563"/>
</g>
<!-- zcash/zcash#5197 -->
<g id="node16" class="node">
<title>zcash/zcash#5197</title>
<g id="a_node16"><a xlink:href="https://github.com/zcash/zcash/issues/5197" xlink:title="zcash/zcash#5197&#10;Implement NU5 block&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1370.5,-859 1194.5,-859 1194.5,-806 1370.5,-806 1370.5,-859"/>
<text text-anchor="middle" x="1282.5" y="-843.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5197</text>
<text text-anchor="middle" x="1282.5" y="-828.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 block</text>
<text text-anchor="middle" x="1282.5" y="-813.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5197 -->
<g id="edge12" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M1116.2,-837.11C1138,-836.51 1161.6,-835.85 1183.9,-835.23"/>
<polygon fill="#000000" stroke="#000000" points="1184.1998,-838.7232 1194.1,-834.95 1184.0077,-831.7258 1184.1998,-838.7232"/>
</g>
<!-- zcash/zcash#5037&#45;&gt;zcash/zcash#5024 -->
<g id="edge13" class="edge">
<title>zcash/zcash#5037&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1367,-701.05C1374.9,-704.04 1382.6,-707.2 1390,-710.5 1422.8,-725.18 1457.9,-745.04 1485.3,-761.65"/>
<polygon fill="#000000" stroke="#000000" points="1483.6334,-764.7325 1494,-766.92 1487.2602,-758.7453 1483.6334,-764.7325"/>
</g>
<!-- zcash/zcash#5197&#45;&gt;zcash/zcash#5024 -->
<g id="edge14" class="edge">
<title>zcash/zcash#5197&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1370.6,-818.91C1394.9,-815.17 1421.4,-811.1 1445.8,-807.33"/>
<polygon fill="#000000" stroke="#000000" points="1446.3519,-810.7863 1455.7,-805.8 1445.2827,-803.8685 1446.3519,-810.7863"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node17" class="node">
<title>zcash/orchard#32</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/orchard/issues/32" xlink:title="zcash/orchard#32&#10;Implement note encryption&#10;for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="1136,-1378 924,-1378 924,-1325 1136,-1325 1136,-1378"/>
<text text-anchor="middle" x="1030" y="-1362.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="1030" y="-1347.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="1030" y="-1332.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="M1136.4,-1327.1C1154,-1323 1172.3,-1318.8 1189.6,-1314.8"/>
<polygon fill="#000000" stroke="#000000" points="1190.7268,-1318.1331 1199.7,-1312.5 1189.1725,-1311.3078 1190.7268,-1318.1331"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node18" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node18"><a xlink:href="https://github.com/zcash/zcash/issues/5020" xlink:title="zcash/zcash#5020&#10;Add Orchard note&#10;detection and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1378.5,-1444.5 1186.5,-1444.5 1186.5,-1376.5 1378.5,-1376.5 1378.5,-1444.5"/>
<text text-anchor="middle" x="1282.5" y="-1429.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1282.5" y="-1414.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1282.5" y="-1399.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1282.5" y="-1384.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="M1136.4,-1376.4C1149.6,-1379.4 1163.1,-1382.6 1176.3,-1385.7"/>
<polygon fill="#000000" stroke="#000000" points="1175.7699,-1389.1694 1186.3,-1388 1177.339,-1382.3475 1175.7699,-1389.1694"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node19" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/zcash/issues/5019" xlink:title="zcash/zcash#5019&#10;Add Orchard keys and&#10;addresses to the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1121.5,-1554 938.5,-1554 938.5,-1501 1121.5,-1501 1121.5,-1554"/>
<text text-anchor="middle" x="1030" y="-1538.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="1030" y="-1523.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="1030" y="-1508.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="M1121.5,-1513.3C1259.4,-1492 1520.2,-1451.6 1670.6,-1428.3"/>
<polygon fill="#000000" stroke="#000000" points="1671.4632,-1431.7075 1680.8,-1426.7 1670.3784,-1424.792 1671.4632,-1431.7075"/>
</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="M1084.9,-1501C1112,-1488 1145.1,-1472.3 1175,-1458.5 1181.9,-1455.3 1189.1,-1452 1196.3,-1448.8"/>
<polygon fill="#000000" stroke="#000000" points="1197.8567,-1451.9369 1205.5,-1444.6 1194.9496,-1445.5691 1197.8567,-1451.9369"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node20" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node20"><a xlink:href="https://github.com/zcash/zcash/issues/5179" xlink:title="zcash/zcash#5179&#10;Add Unified Address key&#10;generation and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1383.5,-1644.5 1181.5,-1644.5 1181.5,-1576.5 1383.5,-1576.5 1383.5,-1644.5"/>
<text text-anchor="middle" x="1282.5" y="-1629.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1282.5" y="-1614.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1282.5" y="-1599.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1282.5" y="-1584.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="M1110.9,-1554.1C1130.2,-1560.4 1151.2,-1567.3 1171.6,-1574"/>
<polygon fill="#000000" stroke="#000000" points="1170.6063,-1577.358 1181.2,-1577.2 1172.82,-1570.7173 1170.6063,-1577.358"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node21" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node21"><a xlink:href="https://github.com/zcash/zcash/issues/5178" xlink:title="zcash/zcash#5178&#10;New RPC: z_getnewaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1645,-1681.5 1426,-1681.5 1426,-1643.5 1645,-1643.5 1645,-1681.5"/>
<text text-anchor="middle" x="1535.5" y="-1666.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1535.5" y="-1651.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="M1383.6,-1631.3C1399.8,-1634.6 1416.5,-1638 1432.8,-1641.4"/>
<polygon fill="#000000" stroke="#000000" points="1432.3078,-1644.8708 1442.8,-1643.4 1433.6806,-1638.0067 1432.3078,-1644.8708"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node22" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node22"><a xlink:href="https://github.com/zcash/zcash/issues/5182" xlink:title="zcash/zcash#5182&#10;New RPC:&#10;z_getbalanceforaddress" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1629,-1839 1442,-1839 1442,-1786 1629,-1786 1629,-1839"/>
<text text-anchor="middle" x="1535.5" y="-1823.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1535.5" y="-1808.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1535.5" y="-1793.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="M1376.9,-1644.5C1381.7,-1648.1 1386.1,-1652.1 1390,-1656.5 1427.1,-1698 1387.1,-1736.6 1426,-1776.5 1428.4,-1778.9 1430.9,-1781.2 1433.6,-1783.3"/>
<polygon fill="#000000" stroke="#000000" points="1431.8051,-1786.3164 1442,-1789.2 1435.8285,-1780.5882 1431.8051,-1786.3164"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node23" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node23"><a xlink:href="https://github.com/zcash/zcash/issues/5185" xlink:title="zcash/zcash#5185&#10;Add support for funding&#10;z_sendmany from a UA&#10;account" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1630,-1767.5 1441,-1767.5 1441,-1699.5 1630,-1699.5 1630,-1767.5"/>
<text text-anchor="middle" x="1535.5" y="-1752.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1535.5" y="-1737.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1535.5" y="-1722.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="1535.5" y="-1707.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="M1369.6,-1644.6C1376.6,-1648.3 1383.5,-1652.3 1390,-1656.5 1408.4,-1668.6 1407.4,-1678.7 1426,-1690.5 1428.2,-1691.9 1430.4,-1693.2 1432.6,-1694.5"/>
<polygon fill="#000000" stroke="#000000" points="1430.9604,-1697.593 1441.4,-1699.4 1434.3658,-1691.4772 1430.9604,-1697.593"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node24" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node24"><a xlink:href="https://github.com/zcash/zcash/issues/5180" xlink:title="zcash/zcash#5180&#10;New RPC:&#10;z_getaddressforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1629.5,-1625 1441.5,-1625 1441.5,-1572 1629.5,-1572 1629.5,-1625"/>
<text text-anchor="middle" x="1535.5" y="-1609.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1535.5" y="-1594.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1535.5" y="-1579.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="M1383.6,-1605.7C1399.2,-1605 1415.3,-1604.2 1430.9,-1603.5"/>
<polygon fill="#000000" stroke="#000000" points="1431.2834,-1606.9855 1441.1,-1603 1430.9406,-1599.9939 1431.2834,-1606.9855"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node25" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/zcash/issues/5183" xlink:title="zcash/zcash#5183&#10;New RPC:&#10;z_getbalanceforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1629.5,-1554 1441.5,-1554 1441.5,-1501 1629.5,-1501 1629.5,-1554"/>
<text text-anchor="middle" x="1535.5" y="-1538.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1535.5" y="-1523.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1535.5" y="-1508.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="M1383.6,-1576.5C1397.8,-1571.8 1412.3,-1567 1426,-1562.5 1431.3,-1560.8 1436.7,-1559 1442.2,-1557.2"/>
<polygon fill="#000000" stroke="#000000" points="1443.6612,-1560.4061 1452.1,-1554 1441.5082,-1553.7454 1443.6612,-1560.4061"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node26" class="node">
<title>zcash/orchard#36</title>
<g id="a_node26"><a xlink:href="https://github.com/zcash/orchard/issues/36" xlink:title="zcash/orchard#36&#10;Parsing and serialization&#10;of Orchard keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="829.5,-1747.5 635.5,-1747.5 635.5,-1679.5 829.5,-1679.5 829.5,-1747.5"/>
<text text-anchor="middle" x="732.5" y="-1732.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="732.5" y="-1717.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="732.5" y="-1702.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="732.5" y="-1687.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="M825.22,-1679.4C846.68,-1668.4 868.14,-1654.5 885,-1637.5 910.74,-1611.5 893.47,-1587.6 921,-1563.5 923.71,-1561.1 926.57,-1558.9 929.57,-1556.9"/>
<polygon fill="#000000" stroke="#000000" points="931.6991,-1559.6952 938.29,-1551.4 927.9647,-1553.7745 931.6991,-1559.6952"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node27" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/librustzcash/issues/371" xlink:title="zcash/librustzcash#371&#10;Implement parsing and&#10;serialization of Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1124,-1835.5 936,-1835.5 936,-1767.5 1124,-1767.5 1124,-1835.5"/>
<text text-anchor="middle" x="1030" y="-1820.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="1030" y="-1805.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="1030" y="-1790.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="1030" y="-1775.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="M829.5,-1742.2C860.46,-1751.4 894.85,-1761.5 926.27,-1770.8"/>
<polygon fill="#000000" stroke="#000000" points="925.3358,-1774.1738 935.92,-1773.7 927.3504,-1767.47 925.3358,-1774.1738"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node28" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/zcash/issues/5133" xlink:title="zcash/zcash#5133&#10;Implement Unified Address&#10;parsing and serialization&#10;to KeyIO" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1390,-1846.5 1175,-1846.5 1175,-1778.5 1390,-1778.5 1390,-1846.5"/>
<text text-anchor="middle" x="1282.5" y="-1831.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1282.5" y="-1816.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1282.5" y="-1801.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1282.5" y="-1786.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="M1124,-1805.6C1137.2,-1806.2 1150.9,-1806.8 1164.5,-1807.4"/>
<polygon fill="#000000" stroke="#000000" points="1164.6717,-1810.9092 1174.8,-1807.8 1164.9434,-1803.9145 1164.6717,-1810.9092"/>
</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="M1328.3,-1778.4C1347.8,-1763.4 1370.5,-1745.1 1390,-1727.5 1407,-1712.1 1406.1,-1702 1426,-1690.5 1428.9,-1688.8 1431.9,-1687.3 1434.9,-1685.8"/>
<polygon fill="#000000" stroke="#000000" points="1436.5977,-1688.875 1444.3,-1681.6 1433.7421,-1682.4839 1436.5977,-1688.875"/>
</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="M1390.2,-1812.5C1403.9,-1812.5 1417.9,-1812.5 1431.6,-1812.5"/>
<polygon fill="#000000" stroke="#000000" points="1431.9,-1816.0001 1441.9,-1812.5 1431.9,-1809.0001 1431.9,-1816.0001"/>
</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="M1390.2,-1778.9C1403.7,-1774.7 1417.5,-1770.3 1431,-1766.1"/>
<polygon fill="#000000" stroke="#000000" points="1432.1806,-1769.3985 1440.7,-1763.1 1430.1123,-1762.711 1432.1806,-1769.3985"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node29" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node29"><a xlink:href="https://github.com/zcash/zcash/issues/5181" xlink:title="zcash/zcash#5181&#10;New RPC:&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1620.5,-2052 1450.5,-2052 1450.5,-1999 1620.5,-1999 1620.5,-2052"/>
<text text-anchor="middle" x="1535.5" y="-2036.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="1535.5" y="-2021.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1535.5" y="-2006.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="M1336.2,-1846.7C1355.2,-1860.9 1375.4,-1878.7 1390,-1898.5 1416,-1933.9 1394,-1960.5 1426,-1990.5 1430.7,-1994.9 1435.9,-1998.7 1441.5,-2002.1"/>
<polygon fill="#000000" stroke="#000000" points="1440.0437,-2005.2922 1450.5,-2007 1443.3909,-1999.1443 1440.0437,-2005.2922"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node30" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node30"><a xlink:href="https://github.com/zcash/zcash/issues/5184" xlink:title="zcash/zcash#5184&#10;Add support for UA&#10;recipients to z_sendmany" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1635.5,-1981 1435.5,-1981 1435.5,-1928 1635.5,-1928 1635.5,-1981"/>
<text text-anchor="middle" x="1535.5" y="-1965.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="1535.5" y="-1950.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="1535.5" y="-1935.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="M1321,-1846.7C1348.6,-1869.9 1387.6,-1899.7 1426,-1919.5 1428.9,-1921 1431.9,-1922.5 1435,-1923.9"/>
<polygon fill="#000000" stroke="#000000" points="1433.7378,-1927.1686 1444.3,-1928 1436.5617,-1920.7634 1433.7378,-1927.1686"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node31" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node31"><a xlink:href="https://github.com/zcash/zcash/issues/5191" xlink:title="zcash/zcash#5191&#10;z_getbalance: Return&#10;error if given a UA" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1620,-1910 1451,-1910 1451,-1857 1620,-1857 1620,-1910"/>
<text text-anchor="middle" x="1535.5" y="-1894.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5191</text>
<text text-anchor="middle" x="1535.5" y="-1879.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalance: Return</text>
<text text-anchor="middle" x="1535.5" y="-1864.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="M1390.2,-1842.7C1407.1,-1847.5 1424.6,-1852.4 1441.2,-1857"/>
<polygon fill="#000000" stroke="#000000" points="1440.3216,-1860.3893 1450.9,-1859.8 1442.263,-1853.6639 1440.3216,-1860.3893"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node32" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/zcash/issues/5022" xlink:title="zcash/zcash#5022&#10;Implement ZIP&#45;225&#10;transaction format&#10;changes in zcashd." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1107.5,-1087.5 952.5,-1087.5 952.5,-1019.5 1107.5,-1019.5 1107.5,-1087.5"/>
<text text-anchor="middle" x="1030" y="-1072.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="1030" y="-1057.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="1030" y="-1042.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="1030" y="-1027.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5195 -->
<g id="edge34" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M1107.6,-1033.8C1119.6,-1027.8 1130.7,-1019.8 1139,-1009.5 1199.2,-934.68 1114.7,-871.22 1175,-796.5 1175.4,-796.01 1175.8,-795.53 1176.2,-795.05"/>
<polygon fill="#000000" stroke="#000000" points="1178.817,-797.3797 1183.3,-787.78 1173.8091,-792.4888 1178.817,-797.3797"/>
</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="M1036.7,-1087.9C1050.6,-1148.5 1088.7,-1273.1 1175,-1328.5 1216,-1354.8 1340.1,-1356.5 1431.3,-1353.8"/>
<polygon fill="#000000" stroke="#000000" points="1431.5084,-1357.2955 1441.4,-1353.5 1431.3005,-1350.2985 1431.5084,-1357.2955"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5197 -->
<g id="edge36" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M1107.7,-1032.8C1119.5,-1026.9 1130.5,-1019.3 1139,-1009.5 1181.6,-960.81 1131,-915.88 1175,-868.5 1178.3,-864.95 1182,-861.75 1185.9,-858.86"/>
<polygon fill="#000000" stroke="#000000" points="1187.8441,-861.7707 1194.3,-853.37 1184.0144,-855.9112 1187.8441,-861.7707"/>
</g>
<!-- zcash/zcash#5196 -->
<g id="node33" class="node">
<title>zcash/zcash#5196</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/zcash/issues/5196" xlink:title="zcash/zcash#5196&#10;Implement v5 transaction&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1384,-1017 1181,-1017 1181,-964 1384,-964 1384,-1017"/>
<text text-anchor="middle" x="1282.5" y="-1001.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5196</text>
<text text-anchor="middle" x="1282.5" y="-986.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement v5 transaction</text>
<text text-anchor="middle" x="1282.5" y="-971.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5196 -->
<g id="edge37" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5196</title>
<path fill="none" stroke="#000000" d="M1107.8,-1034.1C1127.8,-1029.1 1149.7,-1023.6 1171,-1018.3"/>
<polygon fill="#000000" stroke="#000000" points="1171.8334,-1021.6994 1180.7,-1015.9 1170.1521,-1014.9043 1171.8334,-1021.6994"/>
</g>
<!-- zcash/zcash#5194 -->
<g id="node34" class="node">
<title>zcash/zcash#5194</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/zcash/issues/5194" xlink:title="zcash/zcash#5194&#10;Implement Orchard&#10;signature verification&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1368,-945.5 1197,-945.5 1197,-877.5 1368,-877.5 1368,-945.5"/>
<text text-anchor="middle" x="1282.5" y="-930.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5194</text>
<text text-anchor="middle" x="1282.5" y="-915.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1282.5" y="-900.3" font-family="Times,serif" font-size="14.00" fill="#000000">signature verification</text>
<text text-anchor="middle" x="1282.5" y="-885.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5194 -->
<g id="edge38" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5194</title>
<path fill="none" stroke="#000000" d="M1107.8,-1029C1118.9,-1023.6 1129.7,-1017.1 1139,-1009.5 1161.6,-990.96 1152.4,-973 1175,-954.5 1179.1,-951.16 1183.4,-948.06 1188,-945.18"/>
<polygon fill="#000000" stroke="#000000" points="1190.1458,-947.979 1197,-939.9 1186.6037,-941.9414 1190.1458,-947.979"/>
</g>
<!-- zcash/zcash#5198 -->
<g id="node35" class="node">
<title>zcash/zcash#5198</title>
<g id="a_node35"><a xlink:href="https://github.com/zcash/zcash/issues/5198" xlink:title="zcash/zcash#5198&#10;Switch to a `(txid,&#10;auth_digest)` identifier&#10;in places where the node&#10;needs to commit to a&#10;specific instance of a&#10;transaction" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1380.5,-1249 1184.5,-1249 1184.5,-1136 1380.5,-1136 1380.5,-1249"/>
<text text-anchor="middle" x="1282.5" y="-1233.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5198</text>
<text text-anchor="middle" x="1282.5" y="-1218.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch to a `(txid,</text>
<text text-anchor="middle" x="1282.5" y="-1203.8" font-family="Times,serif" font-size="14.00" fill="#000000">auth_digest)` identifier</text>
<text text-anchor="middle" x="1282.5" y="-1188.8" font-family="Times,serif" font-size="14.00" fill="#000000">in places where the node</text>
<text text-anchor="middle" x="1282.5" y="-1173.8" font-family="Times,serif" font-size="14.00" fill="#000000">needs to commit to a</text>
<text text-anchor="middle" x="1282.5" y="-1158.8" font-family="Times,serif" font-size="14.00" fill="#000000">specific instance of a</text>
<text text-anchor="middle" x="1282.5" y="-1143.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5198 -->
<g id="edge39" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5198</title>
<path fill="none" stroke="#000000" d="M1091.8,-1087.5C1117,-1101.4 1147,-1117.9 1175.6,-1133.7"/>
<polygon fill="#000000" stroke="#000000" points="1174.037,-1136.8336 1184.5,-1138.5 1177.3599,-1130.6725 1174.037,-1136.8336"/>
</g>
<!-- zcash/zcash#5199 -->
<g id="node36" class="node">
<title>zcash/zcash#5199</title>
<g id="a_node36"><a xlink:href="https://github.com/zcash/zcash/issues/5199" xlink:title="zcash/zcash#5199&#10;[ZIP 239] Relay v5+&#10;transactions with a&#10;(txid, auth_digest) tuple&#10;(or digest thereof)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1377,-1118 1188,-1118 1188,-1035 1377,-1035 1377,-1118"/>
<text text-anchor="middle" x="1282.5" y="-1102.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5199</text>
<text text-anchor="middle" x="1282.5" y="-1087.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 239] Relay v5+</text>
<text text-anchor="middle" x="1282.5" y="-1072.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions with a</text>
<text text-anchor="middle" x="1282.5" y="-1057.8" font-family="Times,serif" font-size="14.00" fill="#000000">(txid, auth_digest) tuple</text>
<text text-anchor="middle" x="1282.5" y="-1042.8" font-family="Times,serif" font-size="14.00" fill="#000000">(or digest thereof)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5199 -->
<g id="edge40" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5199</title>
<path fill="none" stroke="#000000" d="M1107.8,-1060.6C1129.8,-1062.6 1154,-1064.8 1177.3,-1066.9"/>
<polygon fill="#000000" stroke="#000000" points="1177.3086,-1070.4172 1187.6,-1067.9 1177.985,-1063.45 1177.3086,-1070.4172"/>
</g>
<!-- zcash/zcash#5196&#45;&gt;zcash/zcash#5024 -->
<g id="edge41" class="edge">
<title>zcash/zcash#5196&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1373.3,-963.97C1379.1,-961.1 1384.7,-957.95 1390,-954.5 1441.4,-920.88 1486.3,-864.84 1512.2,-828.53"/>
<polygon fill="#000000" stroke="#000000" points="1515.1582,-830.4066 1518,-820.2 1509.4135,-826.4067 1515.1582,-830.4066"/>
</g>
<!-- zcash/zcash#5194&#45;&gt;zcash/zcash#5024 -->
<g id="edge42" class="edge">
<title>zcash/zcash#5194&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1367.6,-877.44C1375.2,-874.16 1382.8,-870.82 1390,-867.5 1418.9,-854.25 1450.5,-838.39 1476.8,-824.76"/>
<polygon fill="#000000" stroke="#000000" points="1478.5696,-827.7841 1485.8,-820.04 1475.3184,-821.5849 1478.5696,-827.7841"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node37" class="node">
<title>zcash/orchard#30</title>
<g id="a_node37"><a xlink:href="https://github.com/zcash/orchard/issues/30" xlink:title="zcash/orchard#30&#10;Implement ZIP 32 for&#10;Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="818.5,-1554 646.5,-1554 646.5,-1501 818.5,-1501 818.5,-1554"/>
<text text-anchor="middle" x="732.5" y="-1538.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="732.5" y="-1523.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="732.5" y="-1508.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#30&#45;&gt;zcash/zcash#5019 -->
<g id="edge43" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M818.55,-1527.5C852.75,-1527.5 892.37,-1527.5 928.01,-1527.5"/>
<polygon fill="#000000" stroke="#000000" points="928.44,-1531.0001 938.44,-1527.5 928.44,-1524.0001 928.44,-1531.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node38" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node38"><a xlink:href="https://github.com/zcash/zcash/pull/2534" xlink:title="zcash/zcash#2534&#10;Bitcoin 0.12 P2P/Net PRs&#10;1" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="201.5,-1979 1.5,-1979 1.5,-1975 -2.5,-1975 -2.5,-1971 1.5,-1971 1.5,-1934 -2.5,-1934 -2.5,-1930 1.5,-1930 1.5,-1926 201.5,-1926 201.5,-1979"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1.5,-1975 5.5,-1975 5.5,-1971 1.5,-1971 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1.5,-1934 5.5,-1934 5.5,-1930 1.5,-1930 "/>
<text text-anchor="middle" x="101.5" y="-1963.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="101.5" y="-1948.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.12 P2P/Net PRs</text>
<text text-anchor="middle" x="101.5" y="-1933.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node39" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node39"><a xlink:href="https://github.com/zcash/zcash/pull/5003" xlink:title="zcash/zcash#5003&#10;net: prerequisites for&#10;p2p encapsulation changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="497.5,-2007 285.5,-2007 285.5,-2003 281.5,-2003 281.5,-1999 285.5,-1999 285.5,-1962 281.5,-1962 281.5,-1958 285.5,-1958 285.5,-1954 497.5,-1954 497.5,-2007"/>
<polyline fill="none" stroke="#000000" points="285.5,-2003 289.5,-2003 289.5,-1999 285.5,-1999 "/>
<polyline fill="none" stroke="#000000" points="285.5,-1962 289.5,-1962 289.5,-1958 285.5,-1958 "/>
<text text-anchor="middle" x="391.5" y="-1991.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="391.5" y="-1976.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="391.5" y="-1961.8" font-family="Times,serif" font-size="14.00" fill="#000000">p2p encapsulation changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5003 -->
<g id="edge44" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M201.71,-1962.2C225.45,-1964.5 250.97,-1966.9 275.35,-1969.3"/>
<polygon fill="#000000" stroke="#000000" points="275.0616,-1972.7885 285.36,-1970.3 275.7575,-1965.8232 275.0616,-1972.7885"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node40" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node40"><a xlink:href="https://github.com/zcash/zcash/pull/5005" xlink:title="zcash/zcash#5005&#10;net: Split DNS resolving&#10;functionality out of net&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="828,-1939.5 637,-1939.5 637,-1935.5 633,-1935.5 633,-1931.5 637,-1931.5 637,-1879.5 633,-1879.5 633,-1875.5 637,-1875.5 637,-1871.5 828,-1871.5 828,-1939.5"/>
<polyline fill="none" stroke="#000000" points="637,-1935.5 641,-1935.5 641,-1931.5 637,-1931.5 "/>
<polyline fill="none" stroke="#000000" points="637,-1879.5 641,-1879.5 641,-1875.5 637,-1875.5 "/>
<text text-anchor="middle" x="732.5" y="-1924.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="732.5" y="-1909.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="732.5" y="-1894.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="732.5" y="-1879.3" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5005 -->
<g id="edge45" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M201.83,-1945C317.98,-1936.4 508.43,-1922.2 626.81,-1913.4"/>
<polygon fill="#000000" stroke="#000000" points="627.2756,-1916.8743 636.97,-1912.6 626.7261,-1909.8959 627.2756,-1916.8743"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node41" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node41"><a xlink:href="https://github.com/zcash/zcash/pull/5004" xlink:title="zcash/zcash#5004&#10;Verify that expected&#10;services are available&#10;from peer nodes &amp;&#10;disconnect otherwise." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="819.5,-2041 645.5,-2041 645.5,-2037 641.5,-2037 641.5,-2033 645.5,-2033 645.5,-1966 641.5,-1966 641.5,-1962 645.5,-1962 645.5,-1958 819.5,-1958 819.5,-2041"/>
<polyline fill="none" stroke="#000000" points="645.5,-2037 649.5,-2037 649.5,-2033 645.5,-2033 "/>
<polyline fill="none" stroke="#000000" points="645.5,-1966 649.5,-1966 649.5,-1962 645.5,-1962 "/>
<text text-anchor="middle" x="732.5" y="-2025.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="732.5" y="-2010.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="732.5" y="-1995.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="732.5" y="-1980.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="732.5" y="-1965.8" font-family="Times,serif" font-size="14.00" fill="#000000">disconnect otherwise.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003&#45;&gt;zcash/zcash#5004 -->
<g id="edge46" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M497.53,-1986.4C541.51,-1988.9 592.2,-1991.7 635.22,-1994.1"/>
<polygon fill="#000000" stroke="#000000" points="635.2505,-1997.6056 645.41,-1994.6 635.5936,-1990.614 635.2505,-1997.6056"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node42" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node42"><a xlink:href="https://github.com/zcash/zcash/pull/5006" xlink:title="zcash/zcash#5006&#10;Rework AddNode behaviour" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1139,-1960.5 921,-1960.5 921,-1956.5 917,-1956.5 917,-1952.5 921,-1952.5 921,-1930.5 917,-1930.5 917,-1926.5 921,-1926.5 921,-1922.5 1139,-1922.5 1139,-1960.5"/>
<polyline fill="none" stroke="#000000" points="921,-1956.5 925,-1956.5 925,-1952.5 921,-1952.5 "/>
<polyline fill="none" stroke="#000000" points="921,-1930.5 925,-1930.5 925,-1926.5 921,-1926.5 "/>
<text text-anchor="middle" x="1030" y="-1945.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1030" y="-1930.3" font-family="Times,serif" font-size="14.00" fill="#000000">Rework AddNode behaviour</text>
</a>
</g>
</g>
<!-- zcash/zcash#5005&#45;&gt;zcash/zcash#5006 -->
<g id="edge47" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M828.27,-1917.1C854.59,-1920.3 883.46,-1923.8 910.92,-1927.1"/>
<polygon fill="#000000" stroke="#000000" points="910.6255,-1930.5896 920.97,-1928.3 911.4555,-1923.639 910.6255,-1930.5896"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge48" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M819.75,-1982.5C851.9,-1976.2 888.69,-1969 922.42,-1962.5"/>
<polygon fill="#000000" stroke="#000000" points="923.2111,-1965.911 932.32,-1960.5 921.8249,-1959.0496 923.2111,-1965.911"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node43" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node43"><a xlink:href="https://github.com/zcash/zcash/pull/5008" xlink:title="zcash/zcash#5008&#10;net: Feeler connections&#10;to increase online addrs&#10;in the tried table." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1377,-1975.5 1188,-1975.5 1188,-1971.5 1184,-1971.5 1184,-1967.5 1188,-1967.5 1188,-1915.5 1184,-1915.5 1184,-1911.5 1188,-1911.5 1188,-1907.5 1377,-1907.5 1377,-1975.5"/>
<polyline fill="none" stroke="#000000" points="1188,-1971.5 1192,-1971.5 1192,-1967.5 1188,-1967.5 "/>
<polyline fill="none" stroke="#000000" points="1188,-1915.5 1192,-1915.5 1192,-1911.5 1188,-1911.5 "/>
<text text-anchor="middle" x="1282.5" y="-1960.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1282.5" y="-1945.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1282.5" y="-1930.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1282.5" y="-1915.3" font-family="Times,serif" font-size="14.00" fill="#000000">in the tried table.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5006&#45;&gt;zcash/zcash#5008 -->
<g id="edge49" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1139.3,-1941.5C1152,-1941.5 1165,-1941.5 1177.6,-1941.5"/>
<polygon fill="#000000" stroke="#000000" points="1177.7,-1945.0001 1187.7,-1941.5 1177.7,-1938.0001 1177.7,-1945.0001"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node44" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node44"><a xlink:href="https://github.com/zcash/librustzcash/issues/368" xlink:title="zcash/librustzcash#368&#10;zcash_history: Add&#10;Orchard support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1124,-608 936,-608 936,-555 1124,-555 1124,-608"/>
<text text-anchor="middle" x="1030" y="-592.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="1030" y="-577.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="1030" y="-562.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard support</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#368&#45;&gt;zcash/zcash#5037 -->
<g id="edge50" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M1114.7,-608.02C1122.9,-610.81 1131.2,-613.66 1139,-616.5 1162.3,-624.95 1187.5,-634.84 1210.1,-644.04"/>
<polygon fill="#000000" stroke="#000000" points="1209.118,-647.4188 1219.7,-647.94 1211.7527,-640.9335 1209.118,-647.4188"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node45" class="node">
<title>zcash/orchard#45</title>
<g id="a_node45"><a xlink:href="https://github.com/zcash/orchard/issues/45" xlink:title="zcash/orchard#45&#10;Implement Poseidon gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="841,-697.5 624,-697.5 624,-659.5 841,-659.5 841,-697.5"/>
<text text-anchor="middle" x="732.5" y="-682.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="732.5" y="-667.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/orchard#4 -->
<g id="edge51" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M841.18,-696.64C855.97,-699.63 870.91,-702.94 885,-706.5 891.31,-708.1 914.2,-715.41 939.99,-723.81"/>
<polygon fill="#000000" stroke="#000000" points="938.9974,-727.1677 949.59,-726.95 941.1736,-720.5146 938.9974,-727.1677"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node46" class="node">
<title>zcash/halo2#79</title>
<g id="a_node46"><a xlink:href="https://github.com/zcash/halo2/issues/79" xlink:title="zcash/halo2#79&#10;Migrate Rescue and&#10;Poseidon gadgets to&#10;algebraic hash&#10;abstraction" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1110.5,-709 949.5,-709 949.5,-626 1110.5,-626 1110.5,-709"/>
<text text-anchor="middle" x="1030" y="-693.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="1030" y="-678.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="1030" y="-663.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="1030" y="-648.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="1030" y="-633.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/halo2#79 -->
<g id="edge52" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M841.17,-674.48C873.23,-673.3 907.98,-672.01 938.82,-670.87"/>
<polygon fill="#000000" stroke="#000000" points="939.2559,-674.3564 949.12,-670.49 938.9977,-667.3612 939.2559,-674.3564"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node47" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node47"><a xlink:href="https://github.com/zcash/zcash/pull/5034" xlink:title="zcash/zcash#5034&#10;Bitcoin 0.17 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="198,-2097.5 5,-2097.5 5,-2093.5 1,-2093.5 1,-2089.5 5,-2089.5 5,-2067.5 1,-2067.5 1,-2063.5 5,-2063.5 5,-2059.5 198,-2059.5 198,-2097.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="5,-2093.5 9,-2093.5 9,-2089.5 5,-2089.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="5,-2067.5 9,-2067.5 9,-2063.5 5,-2063.5 "/>
<text text-anchor="middle" x="101.5" y="-2082.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="101.5" y="-2067.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.17 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050 -->
<g id="node48" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node48"><a xlink:href="https://github.com/zcash/zcash/pull/5050" xlink:title="zcash/zcash#5050&#10;Bitcoin 0.18 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="488,-2097.5 295,-2097.5 295,-2093.5 291,-2093.5 291,-2089.5 295,-2089.5 295,-2067.5 291,-2067.5 291,-2063.5 295,-2063.5 295,-2059.5 488,-2059.5 488,-2097.5"/>
<polyline fill="none" stroke="#000000" points="295,-2093.5 299,-2093.5 299,-2089.5 295,-2089.5 "/>
<polyline fill="none" stroke="#000000" points="295,-2067.5 299,-2067.5 299,-2063.5 295,-2063.5 "/>
<text text-anchor="middle" x="391.5" y="-2082.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="391.5" y="-2067.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.18 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5034&#45;&gt;zcash/zcash#5050 -->
<g id="edge53" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M198.07,-2078.5C225.8,-2078.5 256.21,-2078.5 284.53,-2078.5"/>
<polygon fill="#000000" stroke="#000000" points="284.86,-2082.0001 294.86,-2078.5 284.86,-2075.0001 284.86,-2082.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node49" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node49"><a xlink:href="https://github.com/zcash/zcash/pull/5163" xlink:title="zcash/zcash#5163&#10;Bitcoin 0.19 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="829,-2097.5 636,-2097.5 636,-2093.5 632,-2093.5 632,-2089.5 636,-2089.5 636,-2067.5 632,-2067.5 632,-2063.5 636,-2063.5 636,-2059.5 829,-2059.5 829,-2097.5"/>
<polyline fill="none" stroke="#000000" points="636,-2093.5 640,-2093.5 640,-2089.5 636,-2089.5 "/>
<polyline fill="none" stroke="#000000" points="636,-2067.5 640,-2067.5 640,-2063.5 636,-2063.5 "/>
<text text-anchor="middle" x="732.5" y="-2082.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="732.5" y="-2067.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.19 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050&#45;&gt;zcash/zcash#5163 -->
<g id="edge54" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M488.3,-2078.5C531.14,-2078.5 581.66,-2078.5 625.61,-2078.5"/>
<polygon fill="#000000" stroke="#000000" points="625.75,-2082.0001 635.75,-2078.5 625.75,-2075.0001 625.75,-2082.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node50" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node50"><a xlink:href="https://github.com/zcash/zcash/issues/5176" xlink:title="zcash/zcash#5176&#10;Implement BIP 39 seed&#10;phrase support" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="825,-1629 640,-1629 640,-1576 825,-1576 825,-1629"/>
<text text-anchor="middle" x="732.5" y="-1613.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="732.5" y="-1598.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="732.5" y="-1583.8" font-family="Times,serif" font-size="14.00" fill="#000000">phrase support</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#5019 -->
<g id="edge55" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M825,-1579.2C857.83,-1570.9 894.96,-1561.5 928.5,-1553.1"/>
<polygon fill="#000000" stroke="#000000" points="929.4926,-1556.459 938.32,-1550.6 927.7656,-1549.6754 929.4926,-1556.459"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node51" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node51"><a xlink:href="https://github.com/zcash/zcash/issues/2673" xlink:title="zcash/zcash#2673&#10;Support Hierarchical&#10;Deterministic t&#45;addresses&#10;(BIP 32)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1131,-1640.5 929,-1640.5 929,-1572.5 1131,-1572.5 1131,-1640.5"/>
<text text-anchor="middle" x="1030" y="-1625.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="1030" y="-1610.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="1030" y="-1595.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="1030" y="-1580.3" font-family="Times,serif" font-size="14.00" fill="#000000">(BIP 32)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#2673 -->
<g id="edge56" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M825,-1603.7C854.58,-1604.1 887.63,-1604.6 918.42,-1605"/>
<polygon fill="#000000" stroke="#000000" points="918.7266,-1608.503 928.76,-1605.1 918.7943,-1601.5034 918.7266,-1608.503"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge57" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1131.2,-1608.1C1144.4,-1608.3 1157.9,-1608.5 1171.1,-1608.7"/>
<polygon fill="#000000" stroke="#000000" points="1171.1326,-1612.2012 1181.2,-1608.9 1171.2713,-1605.2026 1171.1326,-1612.2012"/>
</g>
<!-- zcash/zips#364 -->
<g id="node52" class="node">
<title>zcash/zips#364</title>
<g id="a_node52"><a xlink:href="https://github.com/zcash/zips/issues/364" xlink:title="zcash/zips#364&#10;[ZIP 339] Wallet Recovery&#10;Words (a la BIP 39)" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="494,-1629 289,-1629 289,-1576 494,-1576 494,-1629"/>
<text text-anchor="middle" x="391.5" y="-1613.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="391.5" y="-1598.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="391.5" y="-1583.8" font-family="Times,serif" font-size="14.00" fill="#000000">Words (a la BIP 39)</text>
</a>
</g>
</g>
<!-- zcash/zips#364&#45;&gt;zcash/zcash#5176 -->
<g id="edge58" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M494.27,-1602.5C537.12,-1602.5 586.78,-1602.5 629.63,-1602.5"/>
<polygon fill="#000000" stroke="#000000" points="629.8,-1606.0001 639.8,-1602.5 629.8,-1599.0001 629.8,-1606.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node53" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash/zcash/issues/5177" xlink:title="zcash/zcash#5177&#10;Deprecate old address&#45;&#10;related RPCs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="192.5,-2169 10.5,-2169 10.5,-2116 192.5,-2116 192.5,-2169"/>
<text text-anchor="middle" x="101.5" y="-2153.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="101.5" y="-2138.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="101.5" y="-2123.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node54" class="node">
<title>zcash/zips#511</title>
<g id="a_node54"><a xlink:href="https://github.com/zcash/zips/issues/511" xlink:title="zcash/zips#511&#10;ZIP 32: Document standard&#10;key structure for Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1137.5,-1726.5 922.5,-1726.5 922.5,-1658.5 1137.5,-1658.5 1137.5,-1726.5"/>
<text text-anchor="middle" x="1030" y="-1711.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="1030" y="-1696.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="1030" y="-1681.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="1030" y="-1666.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/zcash#5179 -->
<g id="edge59" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M1134.9,-1658.4C1147,-1654.5 1159.3,-1650.5 1171.5,-1646.6"/>
<polygon fill="#000000" stroke="#000000" points="1172.8,-1649.8568 1181.2,-1643.4 1170.6069,-1643.2092 1172.8,-1649.8568"/>
</g>
<!-- zcash/librustzcash#387 -->
<g id="node55" class="node">
<title>zcash/librustzcash#387</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/librustzcash/issues/387" xlink:title="zcash/librustzcash#387&#10;Implement Unified Address&#10;key derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1390,-1719 1175,-1719 1175,-1666 1390,-1666 1390,-1719"/>
<text text-anchor="middle" x="1282.5" y="-1703.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#387</text>
<text text-anchor="middle" x="1282.5" y="-1688.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1282.5" y="-1673.8" font-family="Times,serif" font-size="14.00" fill="#000000">key derivation</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/librustzcash#387 -->
<g id="edge60" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/librustzcash#387</title>
<path fill="none" stroke="#000000" d="M1137.8,-1692.5C1146.7,-1692.5 1155.7,-1692.5 1164.6,-1692.5"/>
<polygon fill="#000000" stroke="#000000" points="1164.6,-1696.0001 1174.6,-1692.5 1164.6,-1689.0001 1164.6,-1696.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node56" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node56"><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="885,-1078 580,-1078 580,-1025 885,-1025 885,-1078"/>
<text text-anchor="middle" x="732.5" y="-1062.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="732.5" y="-1047.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="732.5" y="-1032.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="edge61" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M885.17,-1052.5C904.7,-1052.7 924.14,-1052.8 942.14,-1052.9"/>
<polygon fill="#000000" stroke="#000000" points="942.2459,-1056.4011 952.28,-1053 942.315,-1049.4015 942.2459,-1056.4011"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node57" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node57"><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="1124,-1001 936,-1001 936,-918 1124,-918 1124,-1001"/>
<text text-anchor="middle" x="1030" y="-985.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="1030" y="-970.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="1030" y="-955.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="1030" y="-940.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="1030" y="-925.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="edge62" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M824.15,-1024.9C844.23,-1018.9 865.35,-1012.6 885,-1006.5 898.35,-1002.4 912.36,-997.94 926.2,-993.51"/>
<polygon fill="#000000" stroke="#000000" points="927.2869,-996.8371 935.74,-990.45 925.1488,-990.1716 927.2869,-996.8371"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node58" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node58"><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="203,-2240 0,-2240 0,-2187 203,-2187 203,-2240"/>
<text text-anchor="middle" x="101.5" y="-2224.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="101.5" y="-2209.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="101.5" y="-2194.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/zips#506 -->
<g id="node59" class="node">
<title>zcash/zips#506</title>
<g id="a_node59"><a xlink:href="https://github.com/zcash/zips/issues/506" xlink:title="zcash/zips#506&#10;Orchard anchor should be&#10;a base field element, not&#10;a bitstring" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="834.5,-483.5 630.5,-483.5 630.5,-415.5 834.5,-415.5 834.5,-483.5"/>
<text text-anchor="middle" x="732.5" y="-468.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#506</text>
<text text-anchor="middle" x="732.5" y="-453.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard anchor should be</text>
<text text-anchor="middle" x="732.5" y="-438.3" font-family="Times,serif" font-size="14.00" fill="#000000">a base field element, not</text>
<text text-anchor="middle" x="732.5" y="-423.3" font-family="Times,serif" font-size="14.00" fill="#000000">a bitstring</text>
</a>
</g>
</g>
<!-- zcash/zips#506&#45;&gt;zcash/zcash#4707 -->
<g id="edge63" class="edge">
<title>zcash/zips#506&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M834.88,-470.49C867.48,-477.18 903.38,-484.54 935.4,-491.1"/>
<polygon fill="#000000" stroke="#000000" points="934.7007,-494.5294 945.2,-493.11 936.1072,-487.6721 934.7007,-494.5294"/>
</g>
<!-- zcash/zips#507 -->
<g id="node60" class="node">
<title>zcash/zips#507</title>
<g id="a_node60"><a xlink:href="https://github.com/zcash/zips/pull/507" xlink:title="zcash/zips#507&#10;Fix Orchard Action byte&#10;size" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="828,-641 637,-641 637,-637 633,-637 633,-633 637,-633 637,-596 633,-596 633,-592 637,-592 637,-588 828,-588 828,-641"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="637,-637 641,-637 641,-633 637,-633 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="637,-596 641,-596 641,-592 637,-592 "/>
<text text-anchor="middle" x="732.5" y="-625.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#507</text>
<text text-anchor="middle" x="732.5" y="-610.8" font-family="Times,serif" font-size="14.00" fill="#000000">Fix Orchard Action byte</text>
<text text-anchor="middle" x="732.5" y="-595.8" font-family="Times,serif" font-size="14.00" fill="#000000">size</text>
</a>
</g>
</g>
<!-- zcash/zips#507&#45;&gt;zcash/zcash#4707 -->
<g id="edge64" class="edge">
<title>zcash/zips#507&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M828.37,-599.75C847.78,-594.62 867.57,-587.73 885,-578.5 904.18,-568.34 902.23,-556.4 921,-545.5 925.78,-542.72 930.81,-540.14 935.97,-537.73"/>
<polygon fill="#000000" stroke="#000000" points="937.6441,-540.8178 945.4,-533.6 934.8358,-534.4058 937.6441,-540.8178"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node61" class="node">
<title>zcash/halo2#63</title>
<g id="a_node61"><a xlink:href="https://github.com/zcash/halo2/issues/63" xlink:title="zcash/halo2#63&#10;Implement zero&#45;knowledge&#45;&#10;ness" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1138,-422 922,-422 922,-369 1138,-369 1138,-422"/>
<text text-anchor="middle" x="1030" y="-406.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="1030" y="-391.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="1030" y="-376.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="edge65" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M1072.5,-422.12C1112.7,-447.24 1173.4,-485.21 1219.2,-513.89"/>
<polygon fill="#000000" stroke="#000000" points="1217.5616,-516.9929 1227.9,-519.31 1221.2631,-511.0516 1217.5616,-516.9929"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node62" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node62"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="885,-1828 580,-1828 580,-1775 885,-1775 885,-1828"/>
<text text-anchor="middle" x="732.5" y="-1812.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="732.5" y="-1797.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="732.5" y="-1782.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="edge66" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M885.17,-1801.5C898.79,-1801.5 912.37,-1801.5 925.45,-1801.5"/>
<polygon fill="#000000" stroke="#000000" points="925.82,-1805.0001 935.82,-1801.5 925.82,-1798.0001 925.82,-1805.0001"/>
</g>
<!-- zcash/librustzcash#390 -->
<g id="node63" class="node">
<title>zcash/librustzcash#390</title>
<g id="a_node63"><a xlink:href="https://github.com/zcash/librustzcash/pull/390" xlink:title="zcash/librustzcash#390&#10;zcash_note_encryption:&#10;Note decryption fixes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="826.5,-1378 638.5,-1378 638.5,-1374 634.5,-1374 634.5,-1370 638.5,-1370 638.5,-1333 634.5,-1333 634.5,-1329 638.5,-1329 638.5,-1325 826.5,-1325 826.5,-1378"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="638.5,-1374 642.5,-1374 642.5,-1370 638.5,-1370 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="638.5,-1333 642.5,-1333 642.5,-1329 638.5,-1329 "/>
<text text-anchor="middle" x="732.5" y="-1362.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#390</text>
<text text-anchor="middle" x="732.5" y="-1347.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_note_encryption:</text>
<text text-anchor="middle" x="732.5" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">Note decryption fixes</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#390&#45;&gt;zcash/orchard#32 -->
<g id="edge67" class="edge">
<title>zcash/librustzcash#390&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M826.63,-1351.5C854.27,-1351.5 884.83,-1351.5 913.68,-1351.5"/>
<polygon fill="#000000" stroke="#000000" points="913.8,-1355.0001 923.8,-1351.5 913.8,-1348.0001 913.8,-1355.0001"/>
</g>
<!-- zcash/librustzcash#385 -->
<g id="node64" class="node">
<title>zcash/librustzcash#385</title>
<g id="a_node64"><a xlink:href="https://github.com/zcash/librustzcash/pull/385" xlink:title="zcash/librustzcash#385&#10;ZIP&#45;225/244 #1: Minor&#10;refactoring and&#10;preparatory updates." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="195.5,-997.5 7.5,-997.5 7.5,-993.5 3.5,-993.5 3.5,-989.5 7.5,-989.5 7.5,-937.5 3.5,-937.5 3.5,-933.5 7.5,-933.5 7.5,-929.5 195.5,-929.5 195.5,-997.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="7.5,-993.5 11.5,-993.5 11.5,-989.5 7.5,-989.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="7.5,-937.5 11.5,-937.5 11.5,-933.5 7.5,-933.5 "/>
<text text-anchor="middle" x="101.5" y="-982.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#385</text>
<text text-anchor="middle" x="101.5" y="-967.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;225/244 #1: Minor</text>
<text text-anchor="middle" x="101.5" y="-952.3" font-family="Times,serif" font-size="14.00" fill="#000000">refactoring and</text>
<text text-anchor="middle" x="101.5" y="-937.3" font-family="Times,serif" font-size="14.00" fill="#000000">preparatory updates.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#386 -->
<g id="node65" class="node">
<title>zcash/librustzcash#386</title>
<g id="a_node65"><a xlink:href="https://github.com/zcash/librustzcash/pull/386" xlink:title="zcash/librustzcash#386&#10;ZIP&#45;225/244 #2: Refactor&#10;transaction builder to&#10;create separate builders&#10;for each section." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="491.5,-1005 291.5,-1005 291.5,-1001 287.5,-1001 287.5,-997 291.5,-997 291.5,-930 287.5,-930 287.5,-926 291.5,-926 291.5,-922 491.5,-922 491.5,-1005"/>
<polyline fill="none" stroke="#000000" points="291.5,-1001 295.5,-1001 295.5,-997 291.5,-997 "/>
<polyline fill="none" stroke="#000000" points="291.5,-930 295.5,-930 295.5,-926 291.5,-926 "/>
<text text-anchor="middle" x="391.5" y="-989.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#386</text>
<text text-anchor="middle" x="391.5" y="-974.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;225/244 #2: Refactor</text>
<text text-anchor="middle" x="391.5" y="-959.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction builder to</text>
<text text-anchor="middle" x="391.5" y="-944.8" font-family="Times,serif" font-size="14.00" fill="#000000">create separate builders</text>
<text text-anchor="middle" x="391.5" y="-929.8" font-family="Times,serif" font-size="14.00" fill="#000000">for each section.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#385&#45;&gt;zcash/librustzcash#386 -->
<g id="edge68" class="edge">
<title>zcash/librustzcash#385&#45;&gt;zcash/librustzcash#386</title>
<path fill="none" stroke="#000000" d="M195.65,-963.5C222.9,-963.5 252.9,-963.5 281.05,-963.5"/>
<polygon fill="#000000" stroke="#000000" points="281.33,-967.0001 291.33,-963.5 281.33,-960.0001 281.33,-967.0001"/>
</g>
<!-- zcash/librustzcash#392 -->
<g id="node66" class="node">
<title>zcash/librustzcash#392</title>
<g id="a_node66"><a xlink:href="https://github.com/zcash/librustzcash/pull/392" xlink:title="zcash/librustzcash#392&#10;ZIP&#45;225/244 #3: Create&#10;separate bundles for each&#10;part of the transaction." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="834,-997.5 631,-997.5 631,-993.5 627,-993.5 627,-989.5 631,-989.5 631,-937.5 627,-937.5 627,-933.5 631,-933.5 631,-929.5 834,-929.5 834,-997.5"/>
<polyline fill="none" stroke="#000000" points="631,-993.5 635,-993.5 635,-989.5 631,-989.5 "/>
<polyline fill="none" stroke="#000000" points="631,-937.5 635,-937.5 635,-933.5 631,-933.5 "/>
<text text-anchor="middle" x="732.5" y="-982.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#392</text>
<text text-anchor="middle" x="732.5" y="-967.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP&#45;225/244 #3: Create</text>
<text text-anchor="middle" x="732.5" y="-952.3" font-family="Times,serif" font-size="14.00" fill="#000000">separate bundles for each</text>
<text text-anchor="middle" x="732.5" y="-937.3" font-family="Times,serif" font-size="14.00" fill="#000000">part of the transaction.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#386&#45;&gt;zcash/librustzcash#392 -->
<g id="edge69" class="edge">
<title>zcash/librustzcash#386&#45;&gt;zcash/librustzcash#392</title>
<path fill="none" stroke="#000000" d="M491.51,-963.5C531.99,-963.5 578.92,-963.5 620.54,-963.5"/>
<polygon fill="#000000" stroke="#000000" points="620.72,-967.0001 630.72,-963.5 620.72,-960.0001 620.72,-967.0001"/>
</g>
<!-- zcash/librustzcash#392&#45;&gt;zcash/librustzcash#350 -->
<g id="edge70" class="edge">
<title>zcash/librustzcash#392&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M834.05,-962.13C863.56,-961.74 895.84,-961.3 925.53,-960.9"/>
<polygon fill="#000000" stroke="#000000" points="925.9546,-964.3951 935.91,-960.77 925.8669,-957.3956 925.9546,-964.3951"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node67" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node67"><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="544,-1078 239,-1078 239,-1025 544,-1025 544,-1078"/>
<text text-anchor="middle" x="391.5" y="-1062.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="391.5" y="-1047.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="391.5" y="-1032.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="edge71" 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="M544.05,-1051.5C552.59,-1051.5 561.19,-1051.5 569.76,-1051.5"/>
<polygon fill="#000000" stroke="#000000" points="569.81,-1055.0001 579.81,-1051.5 569.81,-1048.0001 569.81,-1055.0001"/>
</g>
<!-- zcash/halo2#64 -->
<g id="node68" class="node">
<title>zcash/halo2#64</title>
<g id="a_node68"><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="476.5,-769 306.5,-769 306.5,-716 476.5,-716 476.5,-769"/>
<text text-anchor="middle" x="391.5" y="-753.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="391.5" y="-738.8" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="391.5" y="-723.8" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#235 -->
<g id="node69" class="node">
<title>zcash/halo2#235</title>
<g id="a_node69"><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="820.5,-769 644.5,-769 644.5,-716 820.5,-716 820.5,-769"/>
<text text-anchor="middle" x="732.5" y="-753.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="732.5" y="-738.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="732.5" y="-723.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="edge72" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M476.67,-742.5C524.47,-742.5 584.32,-742.5 634.12,-742.5"/>
<polygon fill="#000000" stroke="#000000" points="634.26,-746.0001 644.26,-742.5 634.26,-739.0001 634.26,-746.0001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge73" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M820.55,-745.76C856.03,-747.07 897.06,-748.58 933.35,-749.93"/>
<polygon fill="#000000" stroke="#000000" points="933.3387,-753.4318 943.46,-750.3 933.5947,-746.4365 933.3387,-753.4318"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node70" class="node">
<title>zcash/halo2#75</title>
<g id="a_node70"><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="1372,-261 1193,-261 1193,-208 1372,-208 1372,-261"/>
<text text-anchor="middle" x="1282.5" y="-245.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="1282.5" y="-230.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1282.5" y="-215.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node71" class="node">
<title>zcash/halo2#251</title>
<g id="a_node71"><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="1640.5,-261 1430.5,-261 1430.5,-208 1640.5,-208 1640.5,-261"/>
<text text-anchor="middle" x="1535.5" y="-245.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1535.5" y="-230.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="1535.5" y="-215.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="edge74" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1372.1,-234.5C1387.7,-234.5 1404.2,-234.5 1420.4,-234.5"/>
<polygon fill="#000000" stroke="#000000" points="1420.5,-238.0001 1430.5,-234.5 1420.5,-231.0001 1420.5,-238.0001"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node72" class="node">
<title>zcash/halo2#78</title>
<g id="a_node72"><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="834.5,-569.5 630.5,-569.5 630.5,-501.5 834.5,-501.5 834.5,-569.5"/>
<text text-anchor="middle" x="732.5" y="-554.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="732.5" y="-539.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="732.5" y="-524.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="732.5" y="-509.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="edge75" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M834.54,-556.01C852.07,-561.81 869.58,-569.18 885,-578.5 904.91,-590.53 902.13,-602.89 921,-616.5 927.19,-620.97 933.84,-625.2 940.69,-629.18"/>
<polygon fill="#000000" stroke="#000000" points="939.0123,-632.2518 949.45,-634.07 942.4243,-626.1397 939.0123,-632.2518"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node73" class="node">
<title>zcash/halo2#250</title>
<g id="a_node73"><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="1127,-261 933,-261 933,-208 1127,-208 1127,-261"/>
<text text-anchor="middle" x="1030" y="-245.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="1030" y="-230.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="1030" y="-215.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="edge76" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M834.79,-522.34C853.41,-515.87 871.26,-506.38 885,-492.5 928.07,-448.97 892.14,-413.51 921,-359.5 939.37,-325.13 968.78,-292.16 992.43,-268.72"/>
<polygon fill="#000000" stroke="#000000" points="995.1674,-270.9391 999.88,-261.45 990.2785,-265.9291 995.1674,-270.9391"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge77" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1127.3,-234.5C1145.4,-234.5 1164.4,-234.5 1182.7,-234.5"/>
<polygon fill="#000000" stroke="#000000" points="1182.7,-238.0001 1192.7,-234.5 1182.7,-231.0001 1182.7,-238.0001"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node74" class="node">
<title>zcash/halo2#57</title>
<g id="a_node74"><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="173,-2326.5 30,-2326.5 30,-2258.5 173,-2258.5 173,-2326.5"/>
<text text-anchor="middle" x="101.5" y="-2311.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="101.5" y="-2296.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="101.5" y="-2281.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="101.5" y="-2266.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node75" class="node">
<title>zcash/halo2#82</title>
<g id="a_node75"><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="198,-2428 5,-2428 5,-2345 198,-2345 198,-2428"/>
<text text-anchor="middle" x="101.5" y="-2412.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="101.5" y="-2397.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="101.5" y="-2382.8" font-family="Times,serif" font-size="14.00" fill="#000000">beta and gamma if there</text>
<text text-anchor="middle" x="101.5" y="-2367.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="101.5" y="-2352.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node76" class="node">
<title>zcash/halo2#248</title>
<g id="a_node76"><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="834,-53 631,-53 631,0 834,0 834,-53"/>
<text text-anchor="middle" x="732.5" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="732.5" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="732.5" y="-7.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="edge78" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M834.14,-40.903C851.89,-46.047 869.59,-53.028 885,-62.5 940.45,-96.579 985.15,-159.17 1009.6,-198.72"/>
<polygon fill="#000000" stroke="#000000" points="1006.9122,-201.0361 1015.1,-207.76 1012.8924,-197.3977 1006.9122,-201.0361"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node77" class="node">
<title>zcash/halo2#249</title>
<g id="a_node77"><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="825,-225.5 640,-225.5 640,-157.5 825,-157.5 825,-225.5"/>
<text text-anchor="middle" x="732.5" y="-210.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="732.5" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="732.5" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="732.5" y="-165.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="edge79" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M825,-204.87C855.94,-209.34 890.68,-214.36 922.65,-218.98"/>
<polygon fill="#000000" stroke="#000000" points="922.5313,-222.4993 932.93,-220.47 923.5355,-215.5717 922.5313,-222.4993"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node78" class="node">
<title>zcash/halo2#246</title>
<g id="a_node78"><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="481,-132 302,-132 302,-79 481,-79 481,-132"/>
<text text-anchor="middle" x="391.5" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="391.5" y="-101.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="391.5" y="-86.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node79" class="node">
<title>zcash/halo2#247</title>
<g id="a_node79"><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="820.5,-139.5 644.5,-139.5 644.5,-71.5 820.5,-71.5 820.5,-139.5"/>
<text text-anchor="middle" x="732.5" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="732.5" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="732.5" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="732.5" y="-79.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="edge80" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M481.09,-105.5C528.16,-105.5 585.94,-105.5 634.24,-105.5"/>
<polygon fill="#000000" stroke="#000000" points="634.39,-109.0001 644.39,-105.5 634.39,-102.0001 634.39,-109.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge81" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M820.55,-126.11C842.02,-132.28 864.65,-139.77 885,-148.5 919.22,-163.18 955.25,-184.51 982.82,-202.25"/>
<polygon fill="#000000" stroke="#000000" points="981.1776,-205.3567 991.47,-207.87 984.9913,-199.4868 981.1776,-205.3567"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node80" class="node">
<title>zcash/halo2#245</title>
<g id="a_node80"><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="835.5,-397.5 629.5,-397.5 629.5,-329.5 835.5,-329.5 835.5,-397.5"/>
<text text-anchor="middle" x="732.5" y="-382.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="732.5" y="-367.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="732.5" y="-352.3" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="732.5" y="-337.3" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#63 -->
<g id="edge82" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M835.72,-374.6C860.31,-377.25 886.74,-380.09 911.94,-382.8"/>
<polygon fill="#000000" stroke="#000000" points="911.5936,-386.2828 921.91,-383.87 912.3406,-379.3228 911.5936,-386.2828"/>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge83" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M835.9,-338.3C852.57,-333.11 869.45,-327.17 885,-320.5 919.22,-305.82 955.25,-284.49 982.82,-266.75"/>
<polygon fill="#000000" stroke="#000000" points="984.9913,-269.5132 991.47,-261.13 981.1776,-263.6433 984.9913,-269.5132"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node81" class="node">
<title>zcash/halo2#210</title>
<g id="a_node81"><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="841.5,-311.5 623.5,-311.5 623.5,-243.5 841.5,-243.5 841.5,-311.5"/>
<text text-anchor="middle" x="732.5" y="-296.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="732.5" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="732.5" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="732.5" y="-251.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="edge84" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M841.59,-261.73C868.06,-257.91 896.33,-253.82 922.72,-250.01"/>
<polygon fill="#000000" stroke="#000000" points="923.3351,-253.4575 932.73,-248.56 922.3315,-246.5298 923.3351,-253.4575"/>
</g>
<!-- zcash/orchard#96 -->
<g id="node82" class="node">
<title>zcash/orchard#96</title>
<g id="a_node82"><a xlink:href="https://github.com/zcash/orchard/issues/96" xlink:title="zcash/orchard#96&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="478,-901 305,-901 305,-848 478,-848 478,-901"/>
<text text-anchor="middle" x="391.5" y="-885.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#96</text>
<text text-anchor="middle" x="391.5" y="-870.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="391.5" y="-855.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#95 -->
<g id="node83" class="node">
<title>zcash/orchard#95</title>
<g id="a_node83"><a xlink:href="https://github.com/zcash/orchard/issues/95" xlink:title="zcash/orchard#95&#10;Implement Merkle path&#10;validity chip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="826,-840 639,-840 639,-787 826,-787 826,-840"/>
<text text-anchor="middle" x="732.5" y="-824.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#95</text>
<text text-anchor="middle" x="732.5" y="-809.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Merkle path</text>
<text text-anchor="middle" x="732.5" y="-794.8" font-family="Times,serif" font-size="14.00" fill="#000000">validity chip</text>
</a>
</g>
</g>
<!-- zcash/orchard#96&#45;&gt;zcash/orchard#95 -->
<g id="edge85" class="edge">
<title>zcash/orchard#96&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M478.43,-858.95C524.21,-850.76 580.67,-840.66 628.73,-832.06"/>
<polygon fill="#000000" stroke="#000000" points="629.6224,-835.456 638.85,-830.25 628.39,-828.5654 629.6224,-835.456"/>
</g>
<!-- zcash/orchard#95&#45;&gt;zcash/orchard#4 -->
<g id="edge86" class="edge">
<title>zcash/orchard#95&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M826.22,-794.6C860.33,-787.72 898.92,-779.94 933.28,-773.01"/>
<polygon fill="#000000" stroke="#000000" points="934.212,-776.3925 943.32,-770.98 932.8247,-769.5313 934.212,-776.3925"/>
</g>
<!-- zcash/orchard#87 -->
<g id="node84" class="node">
<title>zcash/orchard#87</title>
<g id="a_node84"><a xlink:href="https://github.com/zcash/orchard/issues/87" xlink:title="zcash/orchard#87&#10;Implement utils chip" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="474.5,-829.5 308.5,-829.5 308.5,-791.5 474.5,-791.5 474.5,-829.5"/>
<text text-anchor="middle" x="391.5" y="-814.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#87</text>
<text text-anchor="middle" x="391.5" y="-799.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement utils chip</text>
</a>
</g>
</g>
<!-- zcash/orchard#87&#45;&gt;zcash/orchard#95 -->
<g id="edge87" class="edge">
<title>zcash/orchard#87&#45;&gt;zcash/orchard#95</title>
<path fill="none" stroke="#000000" d="M474.92,-811.23C521.31,-811.64 579.46,-812.15 628.77,-812.59"/>
<polygon fill="#000000" stroke="#000000" points="628.789,-816.0902 638.82,-812.68 628.8518,-809.0905 628.789,-816.0902"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node85" class="node">
<title>zcash/orchard#38</title>
<g id="a_node85"><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="197,-901 6,-901 6,-848 197,-848 197,-901"/>
<text text-anchor="middle" x="101.5" y="-885.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="101.5" y="-870.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="101.5" y="-855.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/orchard#96 -->
<g id="edge88" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#96</title>
<path fill="none" stroke="#000000" d="M197.26,-874.5C228.52,-874.5 263.25,-874.5 294.6,-874.5"/>
<polygon fill="#000000" stroke="#000000" points="294.65,-878.0001 304.65,-874.5 294.65,-871.0001 294.65,-878.0001"/>
</g>
</g>
</svg>