developers/zcash-core-dag.svg

2485 lines
177 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.40.1 (20161225.0304)
-->
<!-- Pages: 1 -->
<svg width="2924pt" height="2942pt"
viewBox="0.00 0.00 2924.00 2941.50" 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 2937.5)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2937.5 2920,-2937.5 2920,4 -4,4"/>
<!-- zcash/zcash#4506 -->
<g id="node1" class="node">
<title>zcash/zcash#4506</title>
<g id="a_node1"><a xlink:href="https://github.com/zcash/zcash/issues/4506" xlink:title="zcash/zcash#4506&#10;TZE: Add transaction&#10;builder support to&#10;librustzcash" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="194,-282 24,-282 24,-214 194,-214 194,-282"/>
<text text-anchor="middle" x="109" y="-266.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4506</text>
<text text-anchor="middle" x="109" y="-251.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: Add transaction</text>
<text text-anchor="middle" x="109" y="-236.8" font-family="Times,serif" font-size="14.00" fill="#000000">builder support to</text>
<text text-anchor="middle" x="109" y="-221.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#226 -->
<g id="node2" class="node">
<title>zcash/librustzcash#226</title>
<g id="a_node2"><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="448,-188 260,-188 260,-150 448,-150 448,-188"/>
<text text-anchor="middle" x="354" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="354" y="-157.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bring in Bolt TZE</text>
</a>
</g>
</g>
<!-- zcash/zcash#4506&#45;&gt;zcash/librustzcash#226 -->
<g id="edge1" class="edge">
<title>zcash/zcash#4506&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M194,-220.59C223.8,-210.98 256.87,-200.32 285.17,-191.19"/>
<polygon fill="#000000" stroke="#000000" points="286.5267,-194.4301 294.97,-188.03 284.3784,-187.7679 286.5267,-194.4301"/>
</g>
<!-- zcash/librustzcash#225 -->
<g id="node3" class="node">
<title>zcash/librustzcash#225</title>
<g id="a_node3"><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="738.5,-195.5 546.5,-195.5 546.5,-142.5 738.5,-142.5 738.5,-195.5"/>
<text text-anchor="middle" x="642.5" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="642.5" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="642.5" y="-150.3" 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="edge2" class="edge">
<title>zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225</title>
<path fill="none" stroke="#000000" d="M448.07,-169C476.16,-169 507.16,-169 535.99,-169"/>
<polygon fill="#000000" stroke="#000000" points="536.09,-172.5001 546.09,-169 536.09,-165.5001 536.09,-172.5001"/>
</g>
<!-- zcash/librustzcash#224 -->
<g id="node4" class="node">
<title>zcash/librustzcash#224</title>
<g id="a_node4"><a xlink:href="https://github.com/zcash/librustzcash/issues/224" xlink:title="zcash/librustzcash#224&#10;Refactor TZE Rust logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="203.5,-124 14.5,-124 14.5,-86 203.5,-86 203.5,-124"/>
<text text-anchor="middle" x="109" y="-108.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#224</text>
<text text-anchor="middle" x="109" y="-93.8" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor TZE Rust logic</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#224&#45;&gt;zcash/librustzcash#226 -->
<g id="edge3" class="edge">
<title>zcash/librustzcash#224&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M183.48,-124.06C195.04,-127.04 206.85,-130.09 218,-133 235.65,-137.6 254.57,-142.58 272.53,-147.33"/>
<polygon fill="#000000" stroke="#000000" points="271.8273,-150.7645 282.39,-149.94 273.6186,-143.9975 271.8273,-150.7645"/>
</g>
<!-- zcash/zcash#4190 -->
<g id="node5" class="node">
<title>zcash/zcash#4190</title>
<g id="a_node5"><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="447,-96.5 261,-96.5 261,-43.5 447,-43.5 447,-96.5"/>
<text text-anchor="middle" x="354" y="-81.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="354" y="-66.3" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="354" y="-51.3" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#224&#45;&gt;zcash/zcash#4190 -->
<g id="edge4" class="edge">
<title>zcash/librustzcash#224&#45;&gt;zcash/zcash#4190</title>
<path fill="none" stroke="#000000" d="M203.72,-91.468C219.08,-89.275 235.05,-86.994 250.59,-84.772"/>
<polygon fill="#000000" stroke="#000000" points="251.335,-88.2012 260.74,-83.323 250.3457,-81.2715 251.335,-88.2012"/>
</g>
<!-- zcash/zcash#4877 -->
<g id="node6" class="node">
<title>zcash/zcash#4877</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/zcash/pull/4877" xlink:title="zcash/zcash#4877&#10;Backport Boost removal&#10;PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="204,-353.5 14,-353.5 14,-349.5 10,-349.5 10,-345.5 14,-345.5 14,-308.5 10,-308.5 10,-304.5 14,-304.5 14,-300.5 204,-300.5 204,-353.5"/>
<polyline fill="none" stroke="#000000" points="14,-349.5 18,-349.5 18,-345.5 14,-345.5 "/>
<polyline fill="none" stroke="#000000" points="14,-308.5 18,-308.5 18,-304.5 14,-304.5 "/>
<text text-anchor="middle" x="109" y="-338.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4877</text>
<text text-anchor="middle" x="109" y="-323.3" font-family="Times,serif" font-size="14.00" fill="#000000">Backport Boost removal</text>
<text text-anchor="middle" x="109" y="-308.3" font-family="Times,serif" font-size="14.00" fill="#000000">PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821 -->
<g id="node7" class="node">
<title>zcash/zcash#4821</title>
<g id="a_node7"><a xlink:href="https://github.com/zcash/zcash/issues/4821" xlink:title="zcash/zcash#4821&#10;Replace boost::variant&#10;with std::variant" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="442.5,-388.5 265.5,-388.5 265.5,-335.5 442.5,-335.5 442.5,-388.5"/>
<text text-anchor="middle" x="354" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4821</text>
<text text-anchor="middle" x="354" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace boost::variant</text>
<text text-anchor="middle" x="354" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">with std::variant</text>
</a>
</g>
</g>
<!-- zcash/zcash#4877&#45;&gt;zcash/zcash#4821 -->
<g id="edge5" class="edge">
<title>zcash/zcash#4877&#45;&gt;zcash/zcash#4821</title>
<path fill="none" stroke="#000000" d="M204.07,-340.58C220.94,-342.99 238.54,-345.51 255.5,-347.93"/>
<polygon fill="#000000" stroke="#000000" points="255.0064,-351.3949 265.4,-349.34 255.9934,-344.4649 255.0064,-351.3949"/>
</g>
<!-- zcash/zcash#4822 -->
<g id="node8" class="node">
<title>zcash/zcash#4822</title>
<g id="a_node8"><a xlink:href="https://github.com/zcash/zcash/issues/4822" xlink:title="zcash/zcash#4822&#10;Replace boost::optional&#10;with std::optional" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="446,-317.5 262,-317.5 262,-264.5 446,-264.5 446,-317.5"/>
<text text-anchor="middle" x="354" y="-302.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4822</text>
<text text-anchor="middle" x="354" y="-287.3" font-family="Times,serif" font-size="14.00" fill="#000000">Replace boost::optional</text>
<text text-anchor="middle" x="354" y="-272.3" font-family="Times,serif" font-size="14.00" fill="#000000">with std::optional</text>
</a>
</g>
</g>
<!-- zcash/zcash#4877&#45;&gt;zcash/zcash#4822 -->
<g id="edge6" class="edge">
<title>zcash/zcash#4877&#45;&gt;zcash/zcash#4822</title>
<path fill="none" stroke="#000000" d="M204.07,-313.03C219.63,-310.74 235.81,-308.37 251.54,-306.06"/>
<polygon fill="#000000" stroke="#000000" points="252.4162,-309.4688 261.8,-304.55 251.3969,-302.5434 252.4162,-309.4688"/>
</g>
<!-- zcash/zcash#4879 -->
<g id="node9" class="node">
<title>zcash/zcash#4879</title>
<g id="a_node9"><a xlink:href="https://github.com/zcash/zcash/issues/4879" xlink:title="zcash/zcash#4879&#10;Refactor zcashconsensus&#10;library into zcash_script" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="741,-388.5 544,-388.5 544,-335.5 741,-335.5 741,-388.5"/>
<text text-anchor="middle" x="642.5" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4879</text>
<text text-anchor="middle" x="642.5" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor zcashconsensus</text>
<text text-anchor="middle" x="642.5" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">library into zcash_script</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821&#45;&gt;zcash/zcash#4879 -->
<g id="edge7" class="edge">
<title>zcash/zcash#4821&#45;&gt;zcash/zcash#4879</title>
<path fill="none" stroke="#000000" d="M442.52,-362C471.32,-362 503.61,-362 533.71,-362"/>
<polygon fill="#000000" stroke="#000000" points="533.83,-365.5001 543.83,-362 533.83,-358.5001 533.83,-365.5001"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node10" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node10"><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="740,-317.5 545,-317.5 545,-264.5 740,-264.5 740,-317.5"/>
<text text-anchor="middle" x="642.5" y="-302.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="642.5" y="-287.3" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="642.5" y="-272.3" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/zcash#4821&#45;&gt;zcash/zcash#4819 -->
<g id="edge8" class="edge">
<title>zcash/zcash#4821&#45;&gt;zcash/zcash#4819</title>
<path fill="none" stroke="#000000" d="M442.78,-338.05C458.49,-333.94 474.71,-329.78 490,-326 504.49,-322.42 519.79,-318.76 534.88,-315.23"/>
<polygon fill="#000000" stroke="#000000" points="535.814,-318.6062 544.76,-312.93 534.2268,-311.7885 535.814,-318.6062"/>
</g>
<!-- zcash/zcash#4822&#45;&gt;zcash/zcash#4879 -->
<g id="edge9" class="edge">
<title>zcash/zcash#4822&#45;&gt;zcash/zcash#4879</title>
<path fill="none" stroke="#000000" d="M446.11,-314.97C460.78,-318.71 475.8,-322.5 490,-326 504.3,-329.53 519.37,-333.17 534.25,-336.73"/>
<polygon fill="#000000" stroke="#000000" points="533.4511,-340.1376 543.99,-339.05 535.0732,-333.3281 533.4511,-340.1376"/>
</g>
<!-- zcash/zcash#4822&#45;&gt;zcash/zcash#4819 -->
<g id="edge10" class="edge">
<title>zcash/zcash#4822&#45;&gt;zcash/zcash#4819</title>
<path fill="none" stroke="#000000" d="M446.08,-291C474.25,-291 505.5,-291 534.62,-291"/>
<polygon fill="#000000" stroke="#000000" points="534.83,-294.5001 544.83,-291 534.83,-287.5001 534.83,-294.5001"/>
</g>
<!-- zcash/zcash#4876 -->
<g id="node11" class="node">
<title>zcash/zcash#4876</title>
<g id="a_node11"><a xlink:href="https://github.com/zcash/zcash/issues/4876" xlink:title="zcash/zcash#4876&#10;libzcash_script: Expose&#10;precomputation APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1076,-388.5 891,-388.5 891,-335.5 1076,-335.5 1076,-388.5"/>
<text text-anchor="middle" x="983.5" y="-373.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4876</text>
<text text-anchor="middle" x="983.5" y="-358.3" font-family="Times,serif" font-size="14.00" fill="#000000">libzcash_script: Expose</text>
<text text-anchor="middle" x="983.5" y="-343.3" font-family="Times,serif" font-size="14.00" fill="#000000">precomputation APIs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4879&#45;&gt;zcash/zcash#4876 -->
<g id="edge11" class="edge">
<title>zcash/zcash#4879&#45;&gt;zcash/zcash#4876</title>
<path fill="none" stroke="#000000" d="M741.13,-362C784.93,-362 836.47,-362 880.73,-362"/>
<polygon fill="#000000" stroke="#000000" points="880.94,-365.5001 890.94,-362 880.94,-358.5001 880.94,-365.5001"/>
</g>
<!-- zcash/zcash#4786 -->
<g id="node12" class="node">
<title>zcash/zcash#4786</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/zcash/issues/4786" xlink:title="zcash/zcash#4786&#10;[Orchard] Document&#10;Sinsemilla hash function&#10;and commitment scheme" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1082,-1502 885,-1502 885,-1434 1082,-1434 1082,-1502"/>
<text text-anchor="middle" x="983.5" y="-1486.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4786</text>
<text text-anchor="middle" x="983.5" y="-1471.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Document</text>
<text text-anchor="middle" x="983.5" y="-1456.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sinsemilla hash function</text>
<text text-anchor="middle" x="983.5" y="-1441.8" font-family="Times,serif" font-size="14.00" fill="#000000">and commitment scheme</text>
</a>
</g>
</g>
<!-- zcash/halo2#73 -->
<g id="node13" class="node">
<title>zcash/halo2#73</title>
<g id="a_node13"><a xlink:href="https://github.com/zcash/halo2/issues/73" xlink:title="zcash/halo2#73&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1752,-1494.5 1579,-1494.5 1579,-1441.5 1752,-1441.5 1752,-1494.5"/>
<text text-anchor="middle" x="1665.5" y="-1479.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="1665.5" y="-1464.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1665.5" y="-1449.3" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/halo2#73 -->
<g id="edge12" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M1082.3,-1468C1212.3,-1468 1439.4,-1468 1568.5,-1468"/>
<polygon fill="#000000" stroke="#000000" points="1568.8,-1471.5001 1578.8,-1468 1568.8,-1464.5001 1568.8,-1471.5001"/>
</g>
<!-- zcash/zcash#4707 -->
<g id="node14" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node14"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2091,-1729.5 1922,-1729.5 1922,-1676.5 2091,-1676.5 2091,-1729.5"/>
<text text-anchor="middle" x="2006.5" y="-1714.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="2006.5" y="-1699.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="2006.5" y="-1684.3" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/zcash#4707 -->
<g id="edge13" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1070.6,-1502.2C1095,-1515.6 1119.3,-1533.3 1136,-1556 1179.4,-1615.1 1120.1,-1665.2 1172,-1717 1281.8,-1826.8 1358.7,-1776 1513,-1793 1647.7,-1807.8 1685.8,-1822.9 1818,-1793 1867.4,-1781.8 1919,-1756 1955.7,-1734.9"/>
<polygon fill="#000000" stroke="#000000" points="1957.7923,-1737.7334 1964.7,-1729.7 1954.2903,-1731.6723 1957.7923,-1737.7334"/>
</g>
<!-- zcash/orchard#21 -->
<g id="node15" class="node">
<title>zcash/orchard#21</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/orchard/pull/21" xlink:title="zcash/orchard#21&#10;Implement Sinsemilla&#10;primitives" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1411,-1309.5 1238,-1309.5 1238,-1305.5 1234,-1305.5 1234,-1301.5 1238,-1301.5 1238,-1264.5 1234,-1264.5 1234,-1260.5 1238,-1260.5 1238,-1256.5 1411,-1256.5 1411,-1309.5"/>
<polyline fill="none" stroke="#000000" points="1238,-1305.5 1242,-1305.5 1242,-1301.5 1238,-1301.5 "/>
<polyline fill="none" stroke="#000000" points="1238,-1264.5 1242,-1264.5 1242,-1260.5 1238,-1260.5 "/>
<text text-anchor="middle" x="1324.5" y="-1294.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#21</text>
<text text-anchor="middle" x="1324.5" y="-1279.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1324.5" y="-1264.3" font-family="Times,serif" font-size="14.00" fill="#000000">primitives</text>
</a>
</g>
</g>
<!-- zcash/zcash#4786&#45;&gt;zcash/orchard#21 -->
<g id="edge14" class="edge">
<title>zcash/zcash#4786&#45;&gt;zcash/orchard#21</title>
<path fill="none" stroke="#000000" d="M1058.5,-1434C1085,-1419.6 1113.8,-1401 1136,-1379 1158.1,-1357.1 1146.9,-1337.3 1172,-1319 1188.4,-1307 1208.3,-1298.9 1228.1,-1293.5"/>
<polygon fill="#000000" stroke="#000000" points="1228.9334,-1296.8994 1237.8,-1291.1 1227.2521,-1290.1043 1228.9334,-1296.8994"/>
</g>
<!-- zcash/orchard#4 -->
<g id="node16" class="node">
<title>zcash/orchard#4</title>
<g id="a_node16"><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="2093,-1494.5 1920,-1494.5 1920,-1441.5 2093,-1441.5 2093,-1494.5"/>
<text text-anchor="middle" x="2006.5" y="-1479.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="2006.5" y="-1464.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="2006.5" y="-1449.3" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#73&#45;&gt;zcash/orchard#4 -->
<g id="edge15" class="edge">
<title>zcash/halo2#73&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1752.4,-1468C1800.4,-1468 1860.2,-1468 1909.7,-1468"/>
<polygon fill="#000000" stroke="#000000" points="1909.7,-1471.5001 1919.7,-1468 1909.7,-1464.5001 1909.7,-1471.5001"/>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node17" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard as a&#10;future NU feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2398.5,-1771.5 2206.5,-1771.5 2206.5,-1718.5 2398.5,-1718.5 2398.5,-1771.5"/>
<text text-anchor="middle" x="2302.5" y="-1756.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="2302.5" y="-1741.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard as a</text>
<text text-anchor="middle" x="2302.5" y="-1726.3" font-family="Times,serif" font-size="14.00" fill="#000000">future NU feature</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge16" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2091.3,-1715C2124.1,-1719.7 2161.9,-1725 2196.4,-1729.9"/>
<polygon fill="#000000" stroke="#000000" points="2196.0943,-1733.3929 2206.5,-1731.4 2197.1227,-1726.4689 2196.0943,-1733.3929"/>
</g>
<!-- zcash/zcash#5024 -->
<g id="node18" class="node">
<title>zcash/zcash#5024</title>
<g id="a_node18"><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="2633,-1650.5 2474,-1650.5 2474,-1597.5 2633,-1597.5 2633,-1650.5"/>
<text text-anchor="middle" x="2553.5" y="-1635.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="2553.5" y="-1620.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="2553.5" y="-1605.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/zcash#5024 -->
<g id="edge17" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2045.6,-1676.4C2082.3,-1653.2 2139.7,-1621.1 2195,-1608 2284.7,-1586.7 2390.6,-1595.4 2463.9,-1606.5"/>
<polygon fill="#000000" stroke="#000000" points="2463.5755,-1609.9922 2474,-1608.1 2464.6708,-1603.0784 2463.5755,-1609.9922"/>
</g>
<!-- zcash/orchard#31 -->
<g id="node19" class="node">
<title>zcash/orchard#31</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/orchard/issues/31" xlink:title="zcash/orchard#31&#10;Implement Orchard note&#10;structure" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1763,-1164.5 1568,-1164.5 1568,-1111.5 1763,-1111.5 1763,-1164.5"/>
<text text-anchor="middle" x="1665.5" y="-1149.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#31</text>
<text text-anchor="middle" x="1665.5" y="-1134.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard note</text>
<text text-anchor="middle" x="1665.5" y="-1119.3" font-family="Times,serif" font-size="14.00" fill="#000000">structure</text>
</a>
</g>
</g>
<!-- zcash/orchard#21&#45;&gt;zcash/orchard#31 -->
<g id="edge18" class="edge">
<title>zcash/orchard#21&#45;&gt;zcash/orchard#31</title>
<path fill="none" stroke="#000000" d="M1362.1,-1256.4C1399,-1231.5 1457.5,-1195 1513,-1173 1527.2,-1167.4 1542.5,-1162.5 1557.8,-1158.4"/>
<polygon fill="#000000" stroke="#000000" points="1559.0025,-1161.7038 1567.8,-1155.8 1557.241,-1154.929 1559.0025,-1161.7038"/>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge19" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2026.7,-1494.6C2073,-1555.7 2184,-1701.3 2195,-1709 2197.1,-1710.5 2199.4,-1712 2201.6,-1713.4"/>
<polygon fill="#000000" stroke="#000000" points="2200.1742,-1716.6149 2210.6,-1718.5 2203.6253,-1710.5247 2200.1742,-1716.6149"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node20" class="node">
<title>zcash/orchard#35</title>
<g id="a_node20"><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="2385,-925.5 2220,-925.5 2220,-872.5 2385,-872.5 2385,-925.5"/>
<text text-anchor="middle" x="2302.5" y="-910.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="2302.5" y="-895.3" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="2302.5" y="-880.3" 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="edge20" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2033.1,-1441.2C2067.1,-1405.6 2125.5,-1339.1 2159,-1272 2186.3,-1217.2 2174.4,-1196.7 2195,-1139 2221.6,-1064.6 2261.3,-981.09 2284.3,-934.81"/>
<polygon fill="#000000" stroke="#000000" points="2287.4676,-936.3007 2288.8,-925.79 2281.2039,-933.1758 2287.4676,-936.3007"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node21" class="node">
<title>zcash/orchard#32</title>
<g id="a_node21"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="2112.5,-998.5 1900.5,-998.5 1900.5,-945.5 2112.5,-945.5 2112.5,-998.5"/>
<text text-anchor="middle" x="2006.5" y="-983.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="2006.5" y="-968.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="2006.5" y="-953.3" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#31&#45;&gt;zcash/orchard#32 -->
<g id="edge21" class="edge">
<title>zcash/orchard#31&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1763.3,-1120.6C1781.9,-1115.7 1800.8,-1109.6 1818,-1102 1874.2,-1077 1931.4,-1034.7 1967.8,-1005.2"/>
<polygon fill="#000000" stroke="#000000" points="1970.1948,-1007.7623 1975.7,-998.71 1965.7513,-1002.3534 1970.1948,-1007.7623"/>
</g>
<!-- zcash/orchard#33 -->
<g id="node22" class="node">
<title>zcash/orchard#33</title>
<g id="a_node22"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="2119.5,-1893.5 1893.5,-1893.5 1893.5,-1840.5 2119.5,-1840.5 2119.5,-1893.5"/>
<text text-anchor="middle" x="2006.5" y="-1878.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="2006.5" y="-1863.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="2006.5" y="-1848.3" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#31&#45;&gt;zcash/orchard#33 -->
<g id="edge22" class="edge">
<title>zcash/orchard#31&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1763.1,-1141.5C1784,-1146.9 1804,-1156.5 1818,-1173 1899.5,-1268.9 1797.5,-1625.6 1854,-1738 1874.8,-1779.3 1915.2,-1812.5 1949.2,-1834.9"/>
<polygon fill="#000000" stroke="#000000" points="1947.4029,-1837.9059 1957.7,-1840.4 1951.2057,-1832.0289 1947.4029,-1837.9059"/>
</g>
<!-- zcash/zcash#5021 -->
<g id="node23" class="node">
<title>zcash/zcash#5021</title>
<g id="a_node23"><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="2647.5,-925.5 2459.5,-925.5 2459.5,-872.5 2647.5,-872.5 2647.5,-925.5"/>
<text text-anchor="middle" x="2553.5" y="-910.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="2553.5" y="-895.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="2553.5" y="-880.3" 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="edge23" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M2385,-899C2405.5,-899 2427.7,-899 2449.1,-899"/>
<polygon fill="#000000" stroke="#000000" points="2449.2,-902.5001 2459.2,-899 2449.2,-895.5001 2449.2,-902.5001"/>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/orchard#35 -->
<g id="edge39" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2112.5,-945.85C2144.4,-937.99 2179.1,-929.43 2210.1,-921.8"/>
<polygon fill="#000000" stroke="#000000" points="2211.1281,-925.1514 2220,-919.36 2209.453,-918.3548 2211.1281,-925.1514"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node36" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node36"><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="2649.5,-811 2457.5,-811 2457.5,-743 2649.5,-743 2649.5,-811"/>
<text text-anchor="middle" x="2553.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="2553.5" y="-780.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2553.5" y="-765.8" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="2553.5" y="-750.8" 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="edge40" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M2112.7,-988.48C2200,-996.21 2323,-993.2 2410,-934 2439.2,-914.09 2423.7,-890.45 2446,-863 2459.6,-846.27 2477,-830.64 2493.8,-817.43"/>
<polygon fill="#000000" stroke="#000000" points="2496.1484,-820.0378 2501.9,-811.14 2491.8551,-814.509 2496.1484,-820.0378"/>
</g>
<!-- zcash/zcash#5018 -->
<g id="node38" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node38"><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="2388.5,-1908.5 2216.5,-1908.5 2216.5,-1825.5 2388.5,-1825.5 2388.5,-1908.5"/>
<text text-anchor="middle" x="2302.5" y="-1893.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="2302.5" y="-1878.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2302.5" y="-1863.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="2302.5" y="-1848.3" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="2302.5" y="-1833.3" 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="edge43" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M2119.7,-1867C2148.2,-1867 2178.5,-1867 2206.1,-1867"/>
<polygon fill="#000000" stroke="#000000" points="2206.1,-1870.5001 2216.1,-1867 2206.1,-1863.5001 2206.1,-1870.5001"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node34" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node34"><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="2911,-852 2702,-852 2702,-784 2911,-784 2911,-852"/>
<text text-anchor="middle" x="2806.5" y="-836.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="2806.5" y="-821.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2806.5" y="-806.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="2806.5" y="-791.8" 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="edge36" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M2636.3,-872.48C2654.1,-866.78 2673.2,-860.66 2692,-854.66"/>
<polygon fill="#000000" stroke="#000000" points="2693.3389,-857.9066 2701.8,-851.53 2691.2092,-851.2385 2693.3389,-857.9066"/>
</g>
<!-- zcash/zcash#4883 -->
<g id="node24" class="node">
<title>zcash/zcash#4883</title>
<g id="a_node24"><a xlink:href="https://github.com/zcash/zcash/issues/4883" xlink:title="zcash/zcash#4883&#10;Find optimized addition&#10;chains for the Pasta&#10;fields (x^{1/α} used in&#10;Rescue, and x^{(m&#45;1)/2}&#10;used in square root)" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="452.5,-1425 255.5,-1425 255.5,-1327 452.5,-1327 452.5,-1425"/>
<text text-anchor="middle" x="354" y="-1409.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4883</text>
<text text-anchor="middle" x="354" y="-1394.8" font-family="Times,serif" font-size="14.00" fill="#000000">Find optimized addition</text>
<text text-anchor="middle" x="354" y="-1379.8" font-family="Times,serif" font-size="14.00" fill="#000000">chains for the Pasta</text>
<text text-anchor="middle" x="354" y="-1364.8" font-family="Times,serif" font-size="14.00" fill="#000000">fields (x^{1/α} used in</text>
<text text-anchor="middle" x="354" y="-1349.8" font-family="Times,serif" font-size="14.00" fill="#000000">Rescue, and x^{(m&#45;1)/2}</text>
<text text-anchor="middle" x="354" y="-1334.8" font-family="Times,serif" font-size="14.00" fill="#000000">used in square root)</text>
</a>
</g>
</g>
<!-- zcash/halo2#72 -->
<g id="node25" class="node">
<title>zcash/halo2#72</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/halo2/issues/72" xlink:title="zcash/halo2#72&#10;Implement table&#45;based&#10;variant of Sarkar&#39;s&#10;square root algorithm" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="733.5,-1363 551.5,-1363 551.5,-1295 733.5,-1295 733.5,-1363"/>
<text text-anchor="middle" x="642.5" y="-1347.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#72</text>
<text text-anchor="middle" x="642.5" y="-1332.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement table&#45;based</text>
<text text-anchor="middle" x="642.5" y="-1317.8" font-family="Times,serif" font-size="14.00" fill="#000000">variant of Sarkar&#39;s</text>
<text text-anchor="middle" x="642.5" y="-1302.8" font-family="Times,serif" font-size="14.00" fill="#000000">square root algorithm</text>
</a>
</g>
</g>
<!-- zcash/zcash#4883&#45;&gt;zcash/halo2#72 -->
<g id="edge24" class="edge">
<title>zcash/zcash#4883&#45;&gt;zcash/halo2#72</title>
<path fill="none" stroke="#000000" d="M452.88,-1359.9C481.33,-1355.3 512.41,-1350.2 541.02,-1345.5"/>
<polygon fill="#000000" stroke="#000000" points="541.6986,-1348.936 551.02,-1343.9 540.5926,-1342.0239 541.6986,-1348.936"/>
</g>
<!-- zcash/zcash#4710 -->
<g id="node26" class="node">
<title>zcash/zcash#4710</title>
<g id="a_node26"><a xlink:href="https://github.com/zcash/zcash/issues/4710" xlink:title="zcash/zcash#4710&#10;[Orchard]&#10;Specify/implement&#10;GroupHash into&#10;Pallas/Vesta" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1059,-1370.5 908,-1370.5 908,-1287.5 1059,-1287.5 1059,-1370.5"/>
<text text-anchor="middle" x="983.5" y="-1355.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4710</text>
<text text-anchor="middle" x="983.5" y="-1340.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard]</text>
<text text-anchor="middle" x="983.5" y="-1325.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify/implement</text>
<text text-anchor="middle" x="983.5" y="-1310.3" font-family="Times,serif" font-size="14.00" fill="#000000">GroupHash into</text>
<text text-anchor="middle" x="983.5" y="-1295.3" font-family="Times,serif" font-size="14.00" fill="#000000">Pallas/Vesta</text>
</a>
</g>
</g>
<!-- zcash/halo2#72&#45;&gt;zcash/zcash#4710 -->
<g id="edge25" class="edge">
<title>zcash/halo2#72&#45;&gt;zcash/zcash#4710</title>
<path fill="none" stroke="#000000" d="M733.88,-1329C784.82,-1329 847.87,-1329 897.86,-1329"/>
<polygon fill="#000000" stroke="#000000" points="897.99,-1332.5001 907.99,-1329 897.99,-1325.5001 897.99,-1332.5001"/>
</g>
<!-- zcash/zcash#4710&#45;&gt;zcash/zcash#4707 -->
<g id="edge26" class="edge">
<title>zcash/zcash#4710&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1059.1,-1359.7C1087.6,-1375.1 1117.6,-1396.6 1136,-1425 1198,-1520.7 1087,-1603 1172,-1679 1226,-1727.3 1704.4,-1714.8 1911.5,-1707"/>
<polygon fill="#000000" stroke="#000000" points="1911.9434,-1710.4855 1921.8,-1706.6 1911.6717,-1703.4908 1911.9434,-1710.4855"/>
</g>
<!-- zcash/zcash#4710&#45;&gt;zcash/orchard#21 -->
<g id="edge27" class="edge">
<title>zcash/zcash#4710&#45;&gt;zcash/orchard#21</title>
<path fill="none" stroke="#000000" d="M1059.2,-1318.8C1108.9,-1312.1 1174.3,-1303.3 1227.7,-1296.1"/>
<polygon fill="#000000" stroke="#000000" points="1228.4688,-1299.5274 1237.9,-1294.7 1227.5169,-1292.5924 1228.4688,-1299.5274"/>
</g>
<!-- zcash/halo2#66 -->
<g id="node27" class="node">
<title>zcash/halo2#66</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/halo2/issues/66" xlink:title="zcash/halo2#66&#10;Refactor proofs to not&#10;require length encodings" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1423,-2090.5 1226,-2090.5 1226,-2037.5 1423,-2037.5 1423,-2090.5"/>
<text text-anchor="middle" x="1324.5" y="-2075.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#66</text>
<text text-anchor="middle" x="1324.5" y="-2060.3" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor proofs to not</text>
<text text-anchor="middle" x="1324.5" y="-2045.3" font-family="Times,serif" font-size="14.00" fill="#000000">require length encodings</text>
</a>
</g>
</g>
<!-- zcash/zcash#4714 -->
<g id="node28" class="node">
<title>zcash/zcash#4714</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/zcash/issues/4714" xlink:title="zcash/zcash#4714&#10;[Orchard] Encoding of&#10;Halo 2 proofs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1754,-1894.5 1577,-1894.5 1577,-1841.5 1754,-1841.5 1754,-1894.5"/>
<text text-anchor="middle" x="1665.5" y="-1879.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="1665.5" y="-1864.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="1665.5" y="-1849.3" font-family="Times,serif" font-size="14.00" fill="#000000">Halo 2 proofs</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/zcash#4714 -->
<g id="edge28" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M1423.2,-2056.6C1443,-2051 1462.2,-2042.1 1477,-2028 1518.9,-1988.1 1471,-1942.7 1513,-1903 1527.8,-1889 1547.1,-1880.1 1566.9,-1874.7"/>
<polygon fill="#000000" stroke="#000000" points="1567.8196,-1878.0783 1576.7,-1872.3 1566.1545,-1871.2792 1567.8196,-1878.0783"/>
</g>
<!-- zcash/halo2#67 -->
<g id="node29" class="node">
<title>zcash/halo2#67</title>
<g id="a_node29"><a xlink:href="https://github.com/zcash/halo2/issues/67" xlink:title="zcash/halo2#67&#10;Multi&#45;proof prover" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1740,-2146 1591,-2146 1591,-2108 1740,-2108 1740,-2146"/>
<text text-anchor="middle" x="1665.5" y="-2130.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#67</text>
<text text-anchor="middle" x="1665.5" y="-2115.8" font-family="Times,serif" font-size="14.00" fill="#000000">Multi&#45;proof prover</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/halo2#67 -->
<g id="edge29" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/halo2#67</title>
<path fill="none" stroke="#000000" d="M1423.1,-2082.2C1473.1,-2091.5 1533.1,-2102.5 1580.9,-2111.4"/>
<polygon fill="#000000" stroke="#000000" points="1580.4381,-2114.873 1590.9,-2113.2 1581.6782,-2107.9837 1580.4381,-2114.873"/>
</g>
<!-- zcash/halo2#74 -->
<g id="node30" class="node">
<title>zcash/halo2#74</title>
<g id="a_node30"><a xlink:href="https://github.com/zcash/halo2/issues/74" xlink:title="zcash/halo2#74&#10;Implement plumbing for&#10;recursion" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1761,-2217.5 1570,-2217.5 1570,-2164.5 1761,-2164.5 1761,-2217.5"/>
<text text-anchor="middle" x="1665.5" y="-2202.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#74</text>
<text text-anchor="middle" x="1665.5" y="-2187.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement plumbing for</text>
<text text-anchor="middle" x="1665.5" y="-2172.3" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#66&#45;&gt;zcash/halo2#74 -->
<g id="edge30" class="edge">
<title>zcash/halo2#66&#45;&gt;zcash/halo2#74</title>
<path fill="none" stroke="#000000" d="M1423.1,-2075.7C1442.1,-2081.1 1461.1,-2088.8 1477,-2100 1500.9,-2116.8 1489.1,-2138.2 1513,-2155 1527,-2164.8 1543.2,-2171.9 1559.8,-2177.2"/>
<polygon fill="#000000" stroke="#000000" points="1559.1249,-2180.6463 1569.7,-2180 1561.03,-2173.9105 1559.1249,-2180.6463"/>
</g>
<!-- zcash/zcash#4714&#45;&gt;zcash/zcash#4707 -->
<g id="edge31" class="edge">
<title>zcash/zcash#4714&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1754.3,-1849.3C1775.6,-1843.4 1798,-1836 1818,-1827 1872.3,-1802.6 1928.6,-1763.5 1965.3,-1735.7"/>
<polygon fill="#000000" stroke="#000000" points="1967.4702,-1738.4467 1973.3,-1729.6 1963.2257,-1732.8802 1967.4702,-1738.4467"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node31" class="node">
<title>zcash/halo2#75</title>
<g id="a_node31"><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="2096,-2272.5 1917,-2272.5 1917,-2219.5 2096,-2219.5 2096,-2272.5"/>
<text text-anchor="middle" x="2006.5" y="-2257.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="2006.5" y="-2242.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2006.5" y="-2227.3" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#74&#45;&gt;zcash/halo2#75 -->
<g id="edge32" class="edge">
<title>zcash/halo2#74&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1761.4,-2206.5C1806.8,-2213.8 1861,-2222.5 1906.9,-2229.9"/>
<polygon fill="#000000" stroke="#000000" points="1906.4726,-2233.3761 1916.9,-2231.5 1907.5786,-2226.464 1906.4726,-2233.3761"/>
</g>
<!-- zcash/halo2#251 -->
<g id="node32" class="node">
<title>zcash/halo2#251</title>
<g id="a_node32"><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="2407.5,-2272.5 2197.5,-2272.5 2197.5,-2219.5 2407.5,-2219.5 2407.5,-2272.5"/>
<text text-anchor="middle" x="2302.5" y="-2257.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="2302.5" y="-2242.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="2302.5" y="-2227.3" 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="edge33" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M2096.1,-2246C2124.8,-2246 2156.9,-2246 2187.2,-2246"/>
<polygon fill="#000000" stroke="#000000" points="2187.3,-2249.5001 2197.3,-2246 2187.3,-2242.5001 2187.3,-2249.5001"/>
</g>
<!-- zcash/zcash#4711 -->
<g id="node33" class="node">
<title>zcash/zcash#4711</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/zcash/issues/4711" xlink:title="zcash/zcash#4711&#10;[Orchard] Shielded&#10;protocol changes" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1742.5,-1636.5 1588.5,-1636.5 1588.5,-1583.5 1742.5,-1583.5 1742.5,-1636.5"/>
<text text-anchor="middle" x="1665.5" y="-1621.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4711</text>
<text text-anchor="middle" x="1665.5" y="-1606.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Shielded</text>
<text text-anchor="middle" x="1665.5" y="-1591.3" font-family="Times,serif" font-size="14.00" fill="#000000">protocol changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#4711&#45;&gt;zcash/zcash#4707 -->
<g id="edge34" class="edge">
<title>zcash/zcash#4711&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1742.7,-1630.7C1766.8,-1637.1 1793.5,-1644.3 1818,-1651 1848.5,-1659.3 1881.7,-1668.4 1911.6,-1676.7"/>
<polygon fill="#000000" stroke="#000000" points="1911.0266,-1680.174 1921.6,-1679.5 1912.9141,-1673.4333 1911.0266,-1680.174"/>
</g>
<!-- zcash/zcash#4711&#45;&gt;zcash/orchard#4 -->
<g id="edge35" class="edge">
<title>zcash/zcash#4711&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1742.8,-1596.2C1767.3,-1590.6 1794.2,-1583.3 1818,-1574 1868.2,-1554.4 1921.3,-1523.5 1958.4,-1500.1"/>
<polygon fill="#000000" stroke="#000000" points="1960.4057,-1502.9711 1966.9,-1494.6 1956.6029,-1497.0941 1960.4057,-1502.9711"/>
</g>
<!-- zcash/zcash#4712 -->
<g id="node35" class="node">
<title>zcash/zcash#4712</title>
<g id="a_node35"><a xlink:href="https://github.com/zcash/zcash/issues/4712" xlink:title="zcash/zcash#4712&#10;[Orchard] Note encryption" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1770,-1093 1561,-1093 1561,-1055 1770,-1055 1770,-1093"/>
<text text-anchor="middle" x="1665.5" y="-1077.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4712</text>
<text text-anchor="middle" x="1665.5" y="-1062.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Note encryption</text>
</a>
</g>
</g>
<!-- zcash/zcash#4712&#45;&gt;zcash/zcash#4707 -->
<g id="edge37" class="edge">
<title>zcash/zcash#4712&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1770.3,-1074.9C1788.4,-1079.8 1805.4,-1088.2 1818,-1102 1878.3,-1168.1 1821.6,-1419.6 1854,-1503 1879.7,-1569.1 1934.2,-1631.9 1970.6,-1668.9"/>
<polygon fill="#000000" stroke="#000000" points="1968.554,-1671.8038 1978.1,-1676.4 1973.5038,-1666.854 1968.554,-1671.8038"/>
</g>
<!-- zcash/zcash#4712&#45;&gt;zcash/orchard#32 -->
<g id="edge38" class="edge">
<title>zcash/zcash#4712&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1729.2,-1054.9C1779.4,-1039.9 1850.3,-1018.7 1907.8,-1001.5"/>
<polygon fill="#000000" stroke="#000000" points="1909.1044,-1004.7641 1917.7,-998.57 1907.1178,-998.0519 1909.1044,-1004.7641"/>
</g>
<!-- zcash/zcash#4713 -->
<g id="node37" class="node">
<title>zcash/zcash#4713</title>
<g id="a_node37"><a xlink:href="https://github.com/zcash/zcash/issues/4713" xlink:title="zcash/zcash#4713&#10;[Orchard] Commitment&#10;Merkle tree design" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1758,-1965.5 1573,-1965.5 1573,-1912.5 1758,-1912.5 1758,-1965.5"/>
<text text-anchor="middle" x="1665.5" y="-1950.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4713</text>
<text text-anchor="middle" x="1665.5" y="-1935.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Commitment</text>
<text text-anchor="middle" x="1665.5" y="-1920.3" font-family="Times,serif" font-size="14.00" fill="#000000">Merkle tree design</text>
</a>
</g>
</g>
<!-- zcash/zcash#4713&#45;&gt;zcash/zcash#4707 -->
<g id="edge41" class="edge">
<title>zcash/zcash#4713&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1758,-1930.6C1779.4,-1925.2 1800.8,-1916.6 1818,-1903 1846.1,-1880.8 1831.8,-1859.1 1854,-1831 1883.5,-1793.6 1925.4,-1759.4 1957.8,-1735.8"/>
<polygon fill="#000000" stroke="#000000" points="1960.1651,-1738.4081 1966.2,-1729.7 1956.0518,-1732.744 1960.1651,-1738.4081"/>
</g>
<!-- zcash/zcash#4713&#45;&gt;zcash/orchard#33 -->
<g id="edge42" class="edge">
<title>zcash/zcash#4713&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1758.2,-1919.4C1796.8,-1911.3 1842.2,-1901.7 1883.6,-1893"/>
<polygon fill="#000000" stroke="#000000" points="1884.3554,-1896.4177 1893.4,-1890.9 1882.8886,-1889.5731 1884.3554,-1896.4177"/>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5024 -->
<g id="edge44" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2357.1,-1825.4C2374.5,-1811.4 2393.5,-1795.5 2410,-1780 2451.9,-1740.6 2496.1,-1691.2 2524.2,-1658.7"/>
<polygon fill="#000000" stroke="#000000" points="2527.1289,-1660.6623 2531,-1650.8 2521.8236,-1656.0957 2527.1289,-1660.6623"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node39" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node39"><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="2653.5,-1950.5 2453.5,-1950.5 2453.5,-1897.5 2653.5,-1897.5 2653.5,-1950.5"/>
<text text-anchor="middle" x="2553.5" y="-1935.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="2553.5" y="-1920.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="2553.5" y="-1905.3" 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="edge45" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M2388.5,-1886.5C2406.2,-1890.6 2425.1,-1894.8 2443.5,-1899"/>
<polygon fill="#000000" stroke="#000000" points="2442.7648,-1902.4225 2453.3,-1901.3 2444.3643,-1895.6077 2442.7648,-1902.4225"/>
</g>
<!-- zcash/zcash#4716 -->
<g id="node40" class="node">
<title>zcash/zcash#4716</title>
<g id="a_node40"><a xlink:href="https://github.com/zcash/zcash/issues/4716" xlink:title="zcash/zcash#4716&#10;[Orchard] Specify&#10;transaction format and&#10;hashing changes" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1756.5,-1423 1574.5,-1423 1574.5,-1355 1756.5,-1355 1756.5,-1423"/>
<text text-anchor="middle" x="1665.5" y="-1407.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4716</text>
<text text-anchor="middle" x="1665.5" y="-1392.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-1377.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format and</text>
<text text-anchor="middle" x="1665.5" y="-1362.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#4716&#45;&gt;zcash/zcash#4707 -->
<g id="edge46" class="edge">
<title>zcash/zcash#4716&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1756.5,-1401.6C1778.4,-1408 1800.5,-1417.6 1818,-1432 1845.3,-1454.5 1835.2,-1473 1854,-1503 1892.3,-1564.1 1944.7,-1629.7 1977.1,-1668.5"/>
<polygon fill="#000000" stroke="#000000" points="1974.5093,-1670.8584 1983.6,-1676.3 1979.8869,-1666.3771 1974.5093,-1670.8584"/>
</g>
<!-- zcash/orchard#34 -->
<g id="node41" class="node">
<title>zcash/orchard#34</title>
<g id="a_node41"><a xlink:href="https://github.com/zcash/orchard/issues/34" xlink:title="zcash/orchard#34&#10;Add parsing and&#10;serialization support for&#10;Orchard bundles" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2101,-1263 1912,-1263 1912,-1195 2101,-1195 2101,-1263"/>
<text text-anchor="middle" x="2006.5" y="-1247.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#34</text>
<text text-anchor="middle" x="2006.5" y="-1232.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add parsing and</text>
<text text-anchor="middle" x="2006.5" y="-1217.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization support for</text>
<text text-anchor="middle" x="2006.5" y="-1202.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard bundles</text>
</a>
</g>
</g>
<!-- zcash/zcash#4716&#45;&gt;zcash/orchard#34 -->
<g id="edge47" class="edge">
<title>zcash/zcash#4716&#45;&gt;zcash/orchard#34</title>
<path fill="none" stroke="#000000" d="M1756.8,-1367C1777.3,-1360.9 1798.7,-1353.5 1818,-1345 1865,-1324.2 1914.4,-1293.5 1950.8,-1268.9"/>
<polygon fill="#000000" stroke="#000000" points="1953.0125,-1271.6275 1959.3,-1263.1 1949.067,-1265.8453 1953.0125,-1271.6275"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node42" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node42"><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" stroke-width="2" points="2380,-1216 2225,-1216 2225,-1148 2380,-1148 2380,-1216"/>
<text text-anchor="middle" x="2302.5" y="-1200.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="2302.5" y="-1185.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1170.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="2302.5" y="-1155.8" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/orchard#34&#45;&gt;zcash/zcash#5022 -->
<g id="edge48" class="edge">
<title>zcash/orchard#34&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M2101.4,-1213.9C2137.9,-1208.1 2179.3,-1201.6 2215,-1195.9"/>
<polygon fill="#000000" stroke="#000000" points="2215.6786,-1199.336 2225,-1194.3 2214.5726,-1192.4239 2215.6786,-1199.336"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node43" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node43"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="2396.5,-1317.5 2208.5,-1317.5 2208.5,-1234.5 2396.5,-1234.5 2396.5,-1317.5"/>
<text text-anchor="middle" x="2302.5" y="-1302.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="2302.5" y="-1287.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1272.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="2302.5" y="-1257.3" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="2302.5" y="-1242.3" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash.</text>
</a>
</g>
</g>
<!-- zcash/orchard#34&#45;&gt;zcash/librustzcash#350 -->
<g id="edge49" class="edge">
<title>zcash/orchard#34&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M2101.4,-1244.1C2132.3,-1249 2166.7,-1254.4 2198.3,-1259.5"/>
<polygon fill="#000000" stroke="#000000" points="2197.9755,-1262.9922 2208.4,-1261.1 2199.0708,-1256.0784 2197.9755,-1262.9922"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5024 -->
<g id="edge50" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2380,-1203.6C2391.1,-1209.2 2401.6,-1216.3 2410,-1225 2510.8,-1329.5 2541.5,-1509.8 2550.2,-1587.1"/>
<polygon fill="#000000" stroke="#000000" points="2546.7479,-1587.733 2551.3,-1597.3 2553.7075,-1586.9823 2546.7479,-1587.733"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5021 -->
<g id="edge51" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M2332.8,-1147.9C2381,-1093.5 2474.7,-987.83 2523,-933.34"/>
<polygon fill="#000000" stroke="#000000" points="2525.7786,-935.482 2529.8,-925.68 2520.5437,-930.8348 2525.7786,-935.482"/>
</g>
<!-- zcash/zcash#4708 -->
<g id="node44" class="node">
<title>zcash/zcash#4708</title>
<g id="a_node44"><a xlink:href="https://github.com/zcash/zcash/issues/4708" xlink:title="zcash/zcash#4708&#10;Specify Poseidon&#10;instantiation" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1058.5,-1132.5 908.5,-1132.5 908.5,-1079.5 1058.5,-1079.5 1058.5,-1132.5"/>
<text text-anchor="middle" x="983.5" y="-1117.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4708</text>
<text text-anchor="middle" x="983.5" y="-1102.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify Poseidon</text>
<text text-anchor="middle" x="983.5" y="-1087.3" font-family="Times,serif" font-size="14.00" fill="#000000">instantiation</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/zcash#4707 -->
<g id="edge52" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1017,-1132.7C1053.1,-1163.5 1108.9,-1217.8 1136,-1278 1163.2,-1338.4 1127.2,-1525.2 1172,-1574 1270.1,-1680.7 1714.3,-1699.5 1911.6,-1702.6"/>
<polygon fill="#000000" stroke="#000000" points="1911.6658,-1706.1007 1921.7,-1702.7 1911.7352,-1699.1011 1911.6658,-1706.1007"/>
</g>
<!-- zcash/orchard#37 -->
<g id="node45" class="node">
<title>zcash/orchard#37</title>
<g id="a_node45"><a xlink:href="https://github.com/zcash/orchard/issues/37" xlink:title="zcash/orchard#37&#10;Implement Poseidon&#10;outside the circuit" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1406,-1164.5 1243,-1164.5 1243,-1111.5 1406,-1111.5 1406,-1164.5"/>
<text text-anchor="middle" x="1324.5" y="-1149.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#37</text>
<text text-anchor="middle" x="1324.5" y="-1134.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon</text>
<text text-anchor="middle" x="1324.5" y="-1119.3" font-family="Times,serif" font-size="14.00" fill="#000000">outside the circuit</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/orchard#37 -->
<g id="edge53" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/orchard#37</title>
<path fill="none" stroke="#000000" d="M1058.8,-1113.1C1110.1,-1117.9 1178.4,-1124.3 1232.9,-1129.4"/>
<polygon fill="#000000" stroke="#000000" points="1232.6265,-1132.8894 1242.9,-1130.3 1233.254,-1125.9176 1232.6265,-1132.8894"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node46" class="node">
<title>zcash/orchard#45</title>
<g id="a_node46"><a xlink:href="https://github.com/zcash/orchard/issues/45" xlink:title="zcash/orchard#45&#10;Implement Poseidon gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1433,-1093 1216,-1093 1216,-1055 1433,-1055 1433,-1093"/>
<text text-anchor="middle" x="1324.5" y="-1077.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="1324.5" y="-1062.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon gadget</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash/orchard#45 -->
<g id="edge54" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash/orchard#45</title>
<path fill="none" stroke="#000000" d="M1058.8,-1098.9C1101.9,-1094.9 1157,-1089.7 1205.8,-1085.1"/>
<polygon fill="#000000" stroke="#000000" points="1206.154,-1088.5824 1215.8,-1084.2 1205.5265,-1081.6106 1206.154,-1088.5824"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#22 -->
<g id="node47" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</title>
<g id="a_node47"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/22" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#10;Implement Poseidon test&#10;vectors" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1477,-475.5 1172,-475.5 1172,-422.5 1477,-422.5 1477,-475.5"/>
<text text-anchor="middle" x="1324.5" y="-460.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</text>
<text text-anchor="middle" x="1324.5" y="-445.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon test</text>
<text text-anchor="middle" x="1324.5" y="-430.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash/zcash#4708&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#22 -->
<g id="edge55" class="edge">
<title>zcash/zcash#4708&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#22</title>
<path fill="none" stroke="#000000" d="M984.91,-1079.2C990.97,-989.49 1021.9,-695.56 1172,-523 1187.8,-504.83 1209.1,-490.72 1230.7,-479.93"/>
<polygon fill="#000000" stroke="#000000" points="1232.4771,-482.9603 1240,-475.5 1229.4667,-476.6407 1232.4771,-482.9603"/>
</g>
<!-- zcash/orchard#37&#45;&gt;zcash/orchard#31 -->
<g id="edge56" class="edge">
<title>zcash/orchard#37&#45;&gt;zcash/orchard#31</title>
<path fill="none" stroke="#000000" d="M1406.2,-1138C1451.6,-1138 1508.7,-1138 1557.8,-1138"/>
<polygon fill="#000000" stroke="#000000" points="1557.8,-1141.5001 1567.8,-1138 1557.8,-1134.5001 1557.8,-1141.5001"/>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/orchard#4 -->
<g id="edge57" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1412.8,-1055C1538.2,-1030.2 1759.1,-995.76 1818,-1046 1895.4,-1112 1813.5,-1178.7 1854,-1272 1881.8,-1336.1 1935.5,-1397.5 1971.2,-1434"/>
<polygon fill="#000000" stroke="#000000" points="1968.9855,-1436.739 1978.5,-1441.4 1973.9688,-1431.823 1968.9855,-1436.739"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node48" class="node">
<title>zcash/halo2#79</title>
<g id="a_node48"><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="1746,-1265.5 1585,-1265.5 1585,-1182.5 1746,-1182.5 1746,-1265.5"/>
<text text-anchor="middle" x="1665.5" y="-1250.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="1665.5" y="-1235.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="1665.5" y="-1220.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="1665.5" y="-1205.3" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="1665.5" y="-1190.3" 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="edge58" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1433,-1081.1C1448.8,-1085.7 1464.1,-1092.3 1477,-1102 1505.3,-1123.2 1486.2,-1149.9 1513,-1173 1530.6,-1188.2 1552.8,-1198.9 1574.9,-1206.4"/>
<polygon fill="#000000" stroke="#000000" points="1574.0091,-1209.7896 1584.6,-1209.5 1576.1401,-1203.1219 1574.0091,-1209.7896"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="node49" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<g id="a_node49"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/24" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#10;Implement Orchard key&#10;components test vectors" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1818,-333.5 1513,-333.5 1513,-280.5 1818,-280.5 1818,-333.5"/>
<text text-anchor="middle" x="1665.5" y="-318.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</text>
<text text-anchor="middle" x="1665.5" y="-303.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-288.3" font-family="Times,serif" font-size="14.00" fill="#000000">components test vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="edge59" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#22&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<path fill="none" stroke="#000000" d="M1364.1,-422.4C1401.1,-398.55 1458.8,-364.15 1513,-343 1518.7,-340.76 1524.7,-338.64 1530.7,-336.62"/>
<polygon fill="#000000" stroke="#000000" points="1531.7608,-339.9555 1540.2,-333.55 1529.6082,-333.2947 1531.7608,-339.9555"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node50" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node50"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2159,-333.5 1854,-333.5 1854,-280.5 2159,-280.5 2159,-333.5"/>
<text text-anchor="middle" x="2006.5" y="-318.3" 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="2006.5" y="-303.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2006.5" y="-288.3" font-family="Times,serif" font-size="14.00" fill="#000000">encodings</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge60" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M1818,-307C1826.6,-307 1835.2,-307 1843.8,-307"/>
<polygon fill="#000000" stroke="#000000" points="1843.8,-310.5001 1853.8,-307 1843.8,-303.5001 1843.8,-310.5001"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node61" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node61"><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="2396.5,-455 2208.5,-455 2208.5,-387 2396.5,-387 2396.5,-455"/>
<text text-anchor="middle" x="2302.5" y="-439.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="2302.5" y="-424.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="2302.5" y="-409.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="2302.5" y="-394.8" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371 -->
<g id="edge97" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2131.3,-333.57C2140.8,-336.46 2150.1,-339.6 2159,-343 2186.2,-353.41 2214.8,-368.05 2239.1,-381.83"/>
<polygon fill="#000000" stroke="#000000" points="2237.4829,-384.9372 2247.9,-386.87 2240.9619,-378.8629 2237.4829,-384.9372"/>
</g>
<!-- zcash/halo2#144 -->
<g id="node51" class="node">
<title>zcash/halo2#144</title>
<g id="a_node51"><a xlink:href="https://github.com/zcash/halo2/issues/144" xlink:title="zcash/halo2#144&#10;book: Specify proof&#10;encoding" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1402,-1894.5 1247,-1894.5 1247,-1841.5 1402,-1841.5 1402,-1894.5"/>
<text text-anchor="middle" x="1324.5" y="-1879.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="1324.5" y="-1864.3" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="1324.5" y="-1849.3" font-family="Times,serif" font-size="14.00" fill="#000000">encoding</text>
</a>
</g>
</g>
<!-- zcash/halo2#144&#45;&gt;zcash/zcash#4714 -->
<g id="edge61" class="edge">
<title>zcash/halo2#144&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M1402.3,-1868C1451,-1868 1514.3,-1868 1566.6,-1868"/>
<polygon fill="#000000" stroke="#000000" points="1566.9,-1871.5001 1576.9,-1868 1566.9,-1864.5001 1566.9,-1871.5001"/>
</g>
<!-- zcash/zcash#4709 -->
<g id="node52" class="node">
<title>zcash/zcash#4709</title>
<g id="a_node52"><a xlink:href="https://github.com/zcash/zcash/issues/4709" xlink:title="zcash/zcash#4709&#10;[Orchard] Specify&#10;RedPallas" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1740.5,-1784.5 1590.5,-1784.5 1590.5,-1731.5 1740.5,-1731.5 1740.5,-1784.5"/>
<text text-anchor="middle" x="1665.5" y="-1769.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4709</text>
<text text-anchor="middle" x="1665.5" y="-1754.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-1739.3" font-family="Times,serif" font-size="14.00" fill="#000000">RedPallas</text>
</a>
</g>
</g>
<!-- zcash/zcash#4709&#45;&gt;zcash/zcash#4707 -->
<g id="edge62" class="edge">
<title>zcash/zcash#4709&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M1740.8,-1745.9C1791.2,-1737.7 1857.9,-1727 1911.9,-1718.3"/>
<polygon fill="#000000" stroke="#000000" points="1912.4865,-1721.7507 1921.8,-1716.7 1911.3697,-1714.8404 1912.4865,-1721.7507"/>
</g>
<!-- zcash/zips#454 -->
<g id="node53" class="node">
<title>zcash/zips#454</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash/zips/issues/454" xlink:title="zcash/zips#454&#10;Poseidon: copy parameter&#10;generation script to&#10;zcash/pasta and settle on&#10;parameters" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="744,-1147.5 541,-1147.5 541,-1064.5 744,-1064.5 744,-1147.5"/>
<text text-anchor="middle" x="642.5" y="-1132.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#454</text>
<text text-anchor="middle" x="642.5" y="-1117.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon: copy parameter</text>
<text text-anchor="middle" x="642.5" y="-1102.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation script to</text>
<text text-anchor="middle" x="642.5" y="-1087.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/pasta and settle on</text>
<text text-anchor="middle" x="642.5" y="-1072.3" font-family="Times,serif" font-size="14.00" fill="#000000">parameters</text>
</a>
</g>
</g>
<!-- zcash/zips#454&#45;&gt;zcash/zcash#4708 -->
<g id="edge63" class="edge">
<title>zcash/zips#454&#45;&gt;zcash/zcash#4708</title>
<path fill="none" stroke="#000000" d="M744.35,-1106C793.44,-1106 851.65,-1106 898.35,-1106"/>
<polygon fill="#000000" stroke="#000000" points="898.43,-1109.5001 908.43,-1106 898.43,-1102.5001 898.43,-1109.5001"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node54" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node54"><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="2394,-698.5 2211,-698.5 2211,-645.5 2394,-645.5 2394,-698.5"/>
<text text-anchor="middle" x="2302.5" y="-683.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="2302.5" y="-668.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="2302.5" y="-653.3" 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="edge65" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M2394.3,-678.92C2468.1,-686.58 2573.5,-702.33 2661,-734 2691.6,-745.06 2723.1,-762.41 2748.9,-778.47"/>
<polygon fill="#000000" stroke="#000000" points="2747.166,-781.5136 2757.5,-783.85 2750.8785,-775.5792 2747.166,-781.5136"/>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5020 -->
<g id="edge64" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M2387.7,-698.52C2395.3,-701.25 2402.8,-704.09 2410,-707 2433,-716.32 2457.5,-727.69 2479.7,-738.54"/>
<polygon fill="#000000" stroke="#000000" points="2478.0905,-741.6483 2488.6,-742.99 2481.221,-735.3873 2478.0905,-741.6483"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node55" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node55"><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="2654.5,-620 2452.5,-620 2452.5,-552 2654.5,-552 2654.5,-620"/>
<text text-anchor="middle" x="2553.5" y="-604.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="2553.5" y="-589.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="2553.5" y="-574.8" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="2553.5" y="-559.8" 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="edge66" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2382.1,-645.47C2391.5,-642.29 2401,-639.09 2410,-636 2421.9,-631.92 2434.4,-627.62 2446.8,-623.33"/>
<polygon fill="#000000" stroke="#000000" points="2447.9898,-626.622 2456.3,-620.05 2445.7053,-620.0053 2447.9898,-626.622"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node56" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node56"><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="2916,-605 2697,-605 2697,-567 2916,-567 2916,-605"/>
<text text-anchor="middle" x="2806.5" y="-589.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="2806.5" y="-574.8" 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="edge67" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2654.6,-586C2665.1,-586 2675.9,-586 2686.6,-586"/>
<polygon fill="#000000" stroke="#000000" points="2686.9,-589.5001 2696.9,-586 2686.9,-582.5001 2686.9,-589.5001"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node57" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node57"><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="2900,-548.5 2713,-548.5 2713,-495.5 2900,-495.5 2900,-548.5"/>
<text text-anchor="middle" x="2806.5" y="-533.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="2806.5" y="-518.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-503.3" 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="edge68" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M2654.6,-560.43C2670.5,-556.39 2687.1,-552.21 2703.1,-548.16"/>
<polygon fill="#000000" stroke="#000000" points="2704.1613,-551.5019 2713,-545.66 2702.4474,-544.715 2704.1613,-551.5019"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node58" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node58"><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="2901,-477 2712,-477 2712,-409 2901,-409 2901,-477"/>
<text text-anchor="middle" x="2806.5" y="-461.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="2806.5" y="-446.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="2806.5" y="-431.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="2806.5" y="-416.8" 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="edge69" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M2596.7,-551.89C2624.3,-531.11 2661.5,-504.99 2697,-486 2699.9,-484.46 2702.8,-482.94 2705.8,-481.45"/>
<polygon fill="#000000" stroke="#000000" points="2707.4074,-484.5607 2714.9,-477.07 2704.3714,-478.2533 2707.4074,-484.5607"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node59" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node59"><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="2900.5,-676.5 2712.5,-676.5 2712.5,-623.5 2900.5,-623.5 2900.5,-676.5"/>
<text text-anchor="middle" x="2806.5" y="-661.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="2806.5" y="-646.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-631.3" 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="edge70" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M2654.6,-611.57C2670.3,-615.55 2686.6,-619.67 2702.4,-623.66"/>
<polygon fill="#000000" stroke="#000000" points="2701.5455,-627.054 2712.1,-626.13 2703.2729,-620.2705 2701.5455,-627.054"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node60" class="node">
<title>zcash/orchard#36</title>
<g id="a_node60"><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="2103.5,-548 1909.5,-548 1909.5,-480 2103.5,-480 2103.5,-548"/>
<text text-anchor="middle" x="2006.5" y="-532.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="2006.5" y="-517.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="2006.5" y="-502.8" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="2006.5" y="-487.8" 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="edge71" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2103.5,-527.82C2123.5,-534.19 2143.2,-543.48 2159,-557 2188.3,-582.12 2166.3,-610.18 2195,-636 2197.3,-638.04 2199.6,-639.96 2202.1,-641.77"/>
<polygon fill="#000000" stroke="#000000" points="2200.6182,-644.9837 2210.9,-647.54 2204.4565,-639.1298 2200.6182,-644.9837"/>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge72" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2103.5,-486.77C2122,-481.37 2141.1,-475.63 2159,-470 2171.8,-465.96 2185.3,-461.58 2198.5,-457.16"/>
<polygon fill="#000000" stroke="#000000" points="2199.812,-460.4124 2208.2,-453.94 2197.6065,-453.7688 2199.812,-460.4124"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node62" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node62"><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="2661,-469 2446,-469 2446,-401 2661,-401 2661,-469"/>
<text text-anchor="middle" x="2553.5" y="-453.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="2553.5" y="-438.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2553.5" y="-423.8" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="2553.5" y="-408.8" 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="edge73" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M2396.7,-426.25C2409.3,-426.96 2422.4,-427.69 2435.3,-428.41"/>
<polygon fill="#000000" stroke="#000000" points="2435.5206,-431.9277 2445.7,-428.99 2435.9104,-424.9385 2435.5206,-431.9277"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge74" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2584.8,-469.02C2612,-496.55 2653.7,-534.35 2697,-557 2701.2,-559.22 2705.7,-561.28 2710.2,-563.19"/>
<polygon fill="#000000" stroke="#000000" points="2709.0133,-566.4843 2719.6,-566.9 2711.5832,-559.9731 2709.0133,-566.4843"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge75" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M2648.3,-469.06C2664.5,-474.78 2681.2,-480.61 2697,-486 2703,-488.04 2709.1,-490.12 2715.3,-492.21"/>
<polygon fill="#000000" stroke="#000000" points="2714.5063,-495.6348 2725.1,-495.48 2716.722,-488.9947 2714.5063,-495.6348"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge76" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M2661.2,-438.4C2674.6,-438.83 2688.2,-439.26 2701.6,-439.68"/>
<polygon fill="#000000" stroke="#000000" points="2701.5941,-443.1815 2711.7,-440 2701.8159,-436.185 2701.5941,-443.1815"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node63" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node63"><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="2891.5,-390.5 2721.5,-390.5 2721.5,-337.5 2891.5,-337.5 2891.5,-390.5"/>
<text text-anchor="middle" x="2806.5" y="-375.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="2806.5" y="-360.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-345.3" 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="edge77" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M2661.2,-404.79C2677.8,-400.13 2694.8,-395.35 2711.1,-390.77"/>
<polygon fill="#000000" stroke="#000000" points="2712.4253,-394.0328 2721.1,-387.95 2710.5254,-387.2956 2712.4253,-394.0328"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node64" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node64"><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="2906.5,-319.5 2706.5,-319.5 2706.5,-266.5 2906.5,-266.5 2906.5,-319.5"/>
<text text-anchor="middle" x="2806.5" y="-304.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="2806.5" y="-289.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="2806.5" y="-274.3" 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="edge78" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M2592,-400.76C2619.6,-377.6 2658.6,-347.76 2697,-328 2699.9,-326.49 2702.9,-325.04 2706,-323.63"/>
<polygon fill="#000000" stroke="#000000" points="2707.5486,-326.7727 2715.3,-319.55 2704.7364,-320.3624 2707.5486,-326.7727"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node65" class="node">
<title>zcash/orchard#30</title>
<g id="a_node65"><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="2092.5,-690.5 1920.5,-690.5 1920.5,-637.5 2092.5,-637.5 2092.5,-690.5"/>
<text text-anchor="middle" x="2006.5" y="-675.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="2006.5" y="-660.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="2006.5" y="-645.3" 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="edge79" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2092.5,-666.32C2126.3,-667.24 2165.4,-668.29 2200.5,-669.24"/>
<polygon fill="#000000" stroke="#000000" points="2200.7085,-672.7469 2210.8,-669.52 2200.8988,-665.7495 2200.7085,-672.7469"/>
</g>
<!-- zcash/zcash#4999 -->
<g id="node66" class="node">
<title>zcash/zcash#4999</title>
<g id="a_node66"><a xlink:href="https://github.com/zcash/zcash/pull/4999" xlink:title="zcash/zcash#4999&#10;Bitcoin 0.13 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="205.5,-2721 12.5,-2721 12.5,-2717 8.5,-2717 8.5,-2713 12.5,-2713 12.5,-2691 8.5,-2691 8.5,-2687 12.5,-2687 12.5,-2683 205.5,-2683 205.5,-2721"/>
<polyline fill="none" stroke="#000000" points="12.5,-2717 16.5,-2717 16.5,-2713 12.5,-2713 "/>
<polyline fill="none" stroke="#000000" points="12.5,-2691 16.5,-2691 16.5,-2687 12.5,-2687 "/>
<text text-anchor="middle" x="109" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4999</text>
<text text-anchor="middle" x="109" y="-2690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.13 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5009 -->
<g id="node67" class="node">
<title>zcash/zcash#5009</title>
<g id="a_node67"><a xlink:href="https://github.com/zcash/zcash/pull/5009" xlink:title="zcash/zcash#5009&#10;Bitcoin 0.14 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="450.5,-2721 257.5,-2721 257.5,-2717 253.5,-2717 253.5,-2713 257.5,-2713 257.5,-2691 253.5,-2691 253.5,-2687 257.5,-2687 257.5,-2683 450.5,-2683 450.5,-2721"/>
<polyline fill="none" stroke="#000000" points="257.5,-2717 261.5,-2717 261.5,-2713 257.5,-2713 "/>
<polyline fill="none" stroke="#000000" points="257.5,-2691 261.5,-2691 261.5,-2687 257.5,-2687 "/>
<text text-anchor="middle" x="354" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5009</text>
<text text-anchor="middle" x="354" y="-2690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.14 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4999&#45;&gt;zcash/zcash#5009 -->
<g id="edge80" class="edge">
<title>zcash/zcash#4999&#45;&gt;zcash/zcash#5009</title>
<path fill="none" stroke="#000000" d="M205.83,-2702C219.5,-2702 233.61,-2702 247.45,-2702"/>
<polygon fill="#000000" stroke="#000000" points="247.47,-2705.5001 257.47,-2702 247.47,-2698.5001 247.47,-2705.5001"/>
</g>
<!-- zcash/zcash#5012 -->
<g id="node68" class="node">
<title>zcash/zcash#5012</title>
<g id="a_node68"><a xlink:href="https://github.com/zcash/zcash/pull/5012" xlink:title="zcash/zcash#5012&#10;Bitcoin 0.15 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="739,-2721 546,-2721 546,-2717 542,-2717 542,-2713 546,-2713 546,-2691 542,-2691 542,-2687 546,-2687 546,-2683 739,-2683 739,-2721"/>
<polyline fill="none" stroke="#000000" points="546,-2717 550,-2717 550,-2713 546,-2713 "/>
<polyline fill="none" stroke="#000000" points="546,-2691 550,-2691 550,-2687 546,-2687 "/>
<text text-anchor="middle" x="642.5" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5012</text>
<text text-anchor="middle" x="642.5" y="-2690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.15 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5009&#45;&gt;zcash/zcash#5012 -->
<g id="edge81" class="edge">
<title>zcash/zcash#5009&#45;&gt;zcash/zcash#5012</title>
<path fill="none" stroke="#000000" d="M450.87,-2702C478.13,-2702 507.94,-2702 535.74,-2702"/>
<polygon fill="#000000" stroke="#000000" points="535.89,-2705.5001 545.89,-2702 535.89,-2698.5001 535.89,-2705.5001"/>
</g>
<!-- zcash/zcash#5017 -->
<g id="node69" class="node">
<title>zcash/zcash#5017</title>
<g id="a_node69"><a xlink:href="https://github.com/zcash/zcash/pull/5017" xlink:title="zcash/zcash#5017&#10;Bitcoin 0.16 locking PRs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1080,-2721 887,-2721 887,-2717 883,-2717 883,-2713 887,-2713 887,-2691 883,-2691 883,-2687 887,-2687 887,-2683 1080,-2683 1080,-2721"/>
<polyline fill="none" stroke="#000000" points="887,-2717 891,-2717 891,-2713 887,-2713 "/>
<polyline fill="none" stroke="#000000" points="887,-2691 891,-2691 891,-2687 887,-2687 "/>
<text text-anchor="middle" x="983.5" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5017</text>
<text text-anchor="middle" x="983.5" y="-2690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.16 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5012&#45;&gt;zcash/zcash#5017 -->
<g id="edge82" class="edge">
<title>zcash/zcash#5012&#45;&gt;zcash/zcash#5017</title>
<path fill="none" stroke="#000000" d="M739.3,-2702C782.14,-2702 832.66,-2702 876.61,-2702"/>
<polygon fill="#000000" stroke="#000000" points="876.75,-2705.5001 886.75,-2702 876.75,-2698.5001 876.75,-2705.5001"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node70" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node70"><a xlink:href="https://github.com/zcash/zcash/pull/5034" xlink:title="zcash/zcash#5034&#10;Bitcoin 0.17 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1421,-2721 1228,-2721 1228,-2717 1224,-2717 1224,-2713 1228,-2713 1228,-2691 1224,-2691 1224,-2687 1228,-2687 1228,-2683 1421,-2683 1421,-2721"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2717 1232,-2717 1232,-2713 1228,-2713 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2691 1232,-2691 1232,-2687 1228,-2687 "/>
<text text-anchor="middle" x="1324.5" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="1324.5" y="-2690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.17 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5017&#45;&gt;zcash/zcash#5034 -->
<g id="edge83" class="edge">
<title>zcash/zcash#5017&#45;&gt;zcash/zcash#5034</title>
<path fill="none" stroke="#000000" d="M1080.3,-2702C1123.1,-2702 1173.7,-2702 1217.6,-2702"/>
<polygon fill="#000000" stroke="#000000" points="1217.7,-2705.5001 1227.7,-2702 1217.7,-2698.5001 1217.7,-2705.5001"/>
</g>
<!-- zcash/zcash#5050 -->
<g id="node71" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node71"><a xlink:href="https://github.com/zcash/zcash/pull/5050" xlink:title="zcash/zcash#5050&#10;Bitcoin 0.18 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1762,-2721 1569,-2721 1569,-2717 1565,-2717 1565,-2713 1569,-2713 1569,-2691 1565,-2691 1565,-2687 1569,-2687 1569,-2683 1762,-2683 1762,-2721"/>
<polyline fill="none" stroke="#000000" points="1569,-2717 1573,-2717 1573,-2713 1569,-2713 "/>
<polyline fill="none" stroke="#000000" points="1569,-2691 1573,-2691 1573,-2687 1569,-2687 "/>
<text text-anchor="middle" x="1665.5" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="1665.5" y="-2690.8" 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="edge84" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M1421.3,-2702C1464.1,-2702 1514.7,-2702 1558.6,-2702"/>
<polygon fill="#000000" stroke="#000000" points="1558.7,-2705.5001 1568.7,-2702 1558.7,-2698.5001 1558.7,-2705.5001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node72" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node72"><a xlink:href="https://github.com/zcash/zcash/pull/5163" xlink:title="zcash/zcash#5163&#10;Bitcoin 0.19 locking PRs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2103,-2721 1910,-2721 1910,-2717 1906,-2717 1906,-2713 1910,-2713 1910,-2691 1906,-2691 1906,-2687 1910,-2687 1910,-2683 2103,-2683 2103,-2721"/>
<polyline fill="none" stroke="#000000" points="1910,-2717 1914,-2717 1914,-2713 1910,-2713 "/>
<polyline fill="none" stroke="#000000" points="1910,-2691 1914,-2691 1914,-2687 1910,-2687 "/>
<text text-anchor="middle" x="2006.5" y="-2705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="2006.5" y="-2690.8" 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="edge85" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M1762.3,-2702C1805.1,-2702 1855.7,-2702 1899.6,-2702"/>
<polygon fill="#000000" stroke="#000000" points="1899.7,-2705.5001 1909.7,-2702 1899.7,-2698.5001 1899.7,-2705.5001"/>
</g>
<!-- zcash/zcash#4997 -->
<g id="node73" class="node">
<title>zcash/zcash#4997</title>
<g id="a_node73"><a xlink:href="https://github.com/zcash/zcash/pull/4997" xlink:title="zcash/zcash#4997&#10;Replace setInventoryKnown&#10;with a rolling bloom&#10;filter" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="218,-2885 0,-2885 0,-2881 -4,-2881 -4,-2877 0,-2877 0,-2825 -4,-2825 -4,-2821 0,-2821 0,-2817 218,-2817 218,-2885"/>
<polyline fill="none" stroke="#000000" points="0,-2881 4,-2881 4,-2877 0,-2877 "/>
<polyline fill="none" stroke="#000000" points="0,-2825 4,-2825 4,-2821 0,-2821 "/>
<text text-anchor="middle" x="109" y="-2869.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4997</text>
<text text-anchor="middle" x="109" y="-2854.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace setInventoryKnown</text>
<text text-anchor="middle" x="109" y="-2839.8" font-family="Times,serif" font-size="14.00" fill="#000000">with a rolling bloom</text>
<text text-anchor="middle" x="109" y="-2824.8" font-family="Times,serif" font-size="14.00" fill="#000000">filter</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534 -->
<g id="node74" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node74"><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="454,-2877.5 254,-2877.5 254,-2873.5 250,-2873.5 250,-2869.5 254,-2869.5 254,-2832.5 250,-2832.5 250,-2828.5 254,-2828.5 254,-2824.5 454,-2824.5 454,-2877.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2873.5 258,-2873.5 258,-2869.5 254,-2869.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2832.5 258,-2832.5 258,-2828.5 254,-2828.5 "/>
<text text-anchor="middle" x="354" y="-2862.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="354" y="-2847.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.12 P2P/Net PRs</text>
<text text-anchor="middle" x="354" y="-2832.3" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#4997&#45;&gt;zcash/zcash#2534 -->
<g id="edge86" class="edge">
<title>zcash/zcash#4997&#45;&gt;zcash/zcash#2534</title>
<path fill="none" stroke="#000000" d="M218.24,-2851C226.68,-2851 235.2,-2851 243.65,-2851"/>
<polygon fill="#000000" stroke="#000000" points="243.9,-2854.5001 253.9,-2851 243.9,-2847.5001 243.9,-2854.5001"/>
</g>
<!-- zcash/zcash#5003 -->
<g id="node75" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node75"><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="748.5,-2933.5 536.5,-2933.5 536.5,-2929.5 532.5,-2929.5 532.5,-2925.5 536.5,-2925.5 536.5,-2888.5 532.5,-2888.5 532.5,-2884.5 536.5,-2884.5 536.5,-2880.5 748.5,-2880.5 748.5,-2933.5"/>
<polyline fill="none" stroke="#000000" points="536.5,-2929.5 540.5,-2929.5 540.5,-2925.5 536.5,-2925.5 "/>
<polyline fill="none" stroke="#000000" points="536.5,-2888.5 540.5,-2888.5 540.5,-2884.5 536.5,-2884.5 "/>
<text text-anchor="middle" x="642.5" y="-2918.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="642.5" y="-2903.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="642.5" y="-2888.3" 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="edge87" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M454.09,-2870.4C477.41,-2875 502.43,-2879.8 526.37,-2884.5"/>
<polygon fill="#000000" stroke="#000000" points="525.7175,-2887.9386 536.2,-2886.4 527.046,-2881.0658 525.7175,-2887.9386"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node76" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node76"><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="1079,-2830 888,-2830 888,-2826 884,-2826 884,-2822 888,-2822 888,-2770 884,-2770 884,-2766 888,-2766 888,-2762 1079,-2762 1079,-2830"/>
<polyline fill="none" stroke="#000000" points="888,-2826 892,-2826 892,-2822 888,-2822 "/>
<polyline fill="none" stroke="#000000" points="888,-2770 892,-2770 892,-2766 888,-2766 "/>
<text text-anchor="middle" x="983.5" y="-2814.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="983.5" y="-2799.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="983.5" y="-2784.8" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="983.5" y="-2769.8" 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="edge88" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M443.03,-2824.4C458.56,-2820.7 474.66,-2817.3 490,-2815 622.6,-2795.1 777.35,-2792.5 877.71,-2793.4"/>
<polygon fill="#000000" stroke="#000000" points="877.8159,-2796.9011 887.85,-2793.5 877.885,-2789.9015 877.8159,-2796.9011"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node77" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node77"><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="1070.5,-2931.5 896.5,-2931.5 896.5,-2927.5 892.5,-2927.5 892.5,-2923.5 896.5,-2923.5 896.5,-2856.5 892.5,-2856.5 892.5,-2852.5 896.5,-2852.5 896.5,-2848.5 1070.5,-2848.5 1070.5,-2931.5"/>
<polyline fill="none" stroke="#000000" points="896.5,-2927.5 900.5,-2927.5 900.5,-2923.5 896.5,-2923.5 "/>
<polyline fill="none" stroke="#000000" points="896.5,-2856.5 900.5,-2856.5 900.5,-2852.5 896.5,-2852.5 "/>
<text text-anchor="middle" x="983.5" y="-2916.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="983.5" y="-2901.3" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="983.5" y="-2886.3" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="983.5" y="-2871.3" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="983.5" y="-2856.3" 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="edge89" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M748.53,-2901.7C792.51,-2899.5 843.2,-2897 886.22,-2894.8"/>
<polygon fill="#000000" stroke="#000000" points="886.5936,-2898.286 896.41,-2894.3 886.2505,-2891.2944 886.5936,-2898.286"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node78" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node78"><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="1433.5,-2839 1215.5,-2839 1215.5,-2835 1211.5,-2835 1211.5,-2831 1215.5,-2831 1215.5,-2809 1211.5,-2809 1211.5,-2805 1215.5,-2805 1215.5,-2801 1433.5,-2801 1433.5,-2839"/>
<polyline fill="none" stroke="#000000" points="1215.5,-2835 1219.5,-2835 1219.5,-2831 1215.5,-2831 "/>
<polyline fill="none" stroke="#000000" points="1215.5,-2809 1219.5,-2809 1219.5,-2805 1215.5,-2805 "/>
<text text-anchor="middle" x="1324.5" y="-2823.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1324.5" y="-2808.8" 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="edge90" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1079.4,-2802.7C1118.4,-2805.5 1164,-2808.7 1205.1,-2811.6"/>
<polygon fill="#000000" stroke="#000000" points="1204.9819,-2815.1001 1215.2,-2812.3 1205.466,-2808.1169 1204.9819,-2815.1001"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge91" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1070.9,-2872.1C1116.9,-2862.6 1173.7,-2851 1221.9,-2841.1"/>
<polygon fill="#000000" stroke="#000000" points="1222.6018,-2844.529 1231.7,-2839.1 1221.2021,-2837.6704 1222.6018,-2844.529"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node79" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node79"><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="1760,-2854 1571,-2854 1571,-2850 1567,-2850 1567,-2846 1571,-2846 1571,-2794 1567,-2794 1567,-2790 1571,-2790 1571,-2786 1760,-2786 1760,-2854"/>
<polyline fill="none" stroke="#000000" points="1571,-2850 1575,-2850 1575,-2846 1571,-2846 "/>
<polyline fill="none" stroke="#000000" points="1571,-2794 1575,-2794 1575,-2790 1571,-2790 "/>
<text text-anchor="middle" x="1665.5" y="-2838.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1665.5" y="-2823.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1665.5" y="-2808.8" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1665.5" y="-2793.8" 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="edge92" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1433.8,-2820C1474.5,-2820 1520.5,-2820 1560.8,-2820"/>
<polygon fill="#000000" stroke="#000000" points="1560.9,-2823.5001 1570.9,-2820 1560.9,-2816.5001 1560.9,-2823.5001"/>
</g>
<!-- zcash/zcash#4996 -->
<g id="node80" class="node">
<title>zcash/zcash#4996</title>
<g id="a_node80"><a xlink:href="https://github.com/zcash/zcash/pull/4996" xlink:title="zcash/zcash#4996&#10;Add &#45;blocksonly option" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="732.5,-2862 552.5,-2862 552.5,-2858 548.5,-2858 548.5,-2854 552.5,-2854 552.5,-2832 548.5,-2832 548.5,-2828 552.5,-2828 552.5,-2824 732.5,-2824 732.5,-2862"/>
<polyline fill="none" stroke="#000000" points="552.5,-2858 556.5,-2858 556.5,-2854 552.5,-2854 "/>
<polyline fill="none" stroke="#000000" points="552.5,-2832 556.5,-2832 556.5,-2828 552.5,-2828 "/>
<text text-anchor="middle" x="642.5" y="-2846.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4996</text>
<text text-anchor="middle" x="642.5" y="-2831.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add &#45;blocksonly option</text>
</a>
</g>
</g>
<!-- zcash/zcash#4996&#45;&gt;zcash/zcash#5004 -->
<g id="edge93" class="edge">
<title>zcash/zcash#4996&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M732.54,-2855.4C779.88,-2861.9 837.97,-2869.9 886.33,-2876.6"/>
<polygon fill="#000000" stroke="#000000" points="886.1058,-2880.1021 896.49,-2878 887.0614,-2873.1676 886.1058,-2880.1021"/>
</g>
<!-- zcash/zcash#4988 -->
<g id="node81" class="node">
<title>zcash/zcash#4988</title>
<g id="a_node81"><a xlink:href="https://github.com/zcash/zcash/pull/4988" xlink:title="zcash/zcash#4988&#10;Add feature flagging&#10;infrastructure to&#10;consensus parameters." target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="200,-68 18,-68 18,-64 14,-64 14,-60 18,-60 18,-8 14,-8 14,-4 18,-4 18,0 200,0 200,-68"/>
<polyline fill="none" stroke="#000000" points="18,-64 22,-64 22,-60 18,-60 "/>
<polyline fill="none" stroke="#000000" points="18,-8 22,-8 22,-4 18,-4 "/>
<text text-anchor="middle" x="109" y="-52.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4988</text>
<text text-anchor="middle" x="109" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add feature flagging</text>
<text text-anchor="middle" x="109" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">infrastructure to</text>
<text text-anchor="middle" x="109" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus parameters.</text>
</a>
</g>
</g>
<!-- zcash/zcash#4988&#45;&gt;zcash/zcash#4190 -->
<g id="edge94" class="edge">
<title>zcash/zcash#4988&#45;&gt;zcash/zcash#4190</title>
<path fill="none" stroke="#000000" d="M200.23,-47.405C216.57,-49.806 233.7,-52.323 250.35,-54.77"/>
<polygon fill="#000000" stroke="#000000" points="250.2475,-58.2924 260.65,-56.283 251.2649,-51.3667 250.2475,-58.2924"/>
</g>
<!-- zcash/zcash#3722 -->
<g id="node82" class="node">
<title>zcash/zcash#3722</title>
<g id="a_node82"><a xlink:href="https://github.com/zcash/zcash/issues/3722" xlink:title="zcash/zcash#3722&#10;Decouple consensus&#10;changes from Network&#10;Upgrades in the zcashd&#10;code" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2395.5,-1700.5 2209.5,-1700.5 2209.5,-1617.5 2395.5,-1617.5 2395.5,-1700.5"/>
<text text-anchor="middle" x="2302.5" y="-1685.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#3722</text>
<text text-anchor="middle" x="2302.5" y="-1670.3" font-family="Times,serif" font-size="14.00" fill="#000000">Decouple consensus</text>
<text text-anchor="middle" x="2302.5" y="-1655.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes from Network</text>
<text text-anchor="middle" x="2302.5" y="-1640.3" font-family="Times,serif" font-size="14.00" fill="#000000">Upgrades in the zcashd</text>
<text text-anchor="middle" x="2302.5" y="-1625.3" font-family="Times,serif" font-size="14.00" fill="#000000">code</text>
</a>
</g>
</g>
<!-- zcash/zcash#3722&#45;&gt;zcash/zcash#5024 -->
<g id="edge95" class="edge">
<title>zcash/zcash#3722&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2395.6,-1646C2417.9,-1642.9 2441.6,-1639.6 2463.7,-1636.5"/>
<polygon fill="#000000" stroke="#000000" points="2464.2819,-1639.9528 2473.7,-1635.1 2463.3113,-1633.0204 2464.2819,-1639.9528"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node83" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node83"><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="2396.5,-2007.5 2208.5,-2007.5 2208.5,-1954.5 2396.5,-1954.5 2396.5,-2007.5"/>
<text text-anchor="middle" x="2302.5" y="-1992.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="2302.5" y="-1977.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="2302.5" y="-1962.3" 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="edge96" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M2396.7,-1959.6C2411.9,-1956.2 2427.7,-1952.6 2443.2,-1949"/>
<polygon fill="#000000" stroke="#000000" points="2444.3268,-1952.3331 2453.3,-1946.7 2442.7725,-1945.5078 2444.3268,-1952.3331"/>
</g>
<!-- zcash/zcash#5056 -->
<g id="node84" class="node">
<title>zcash/zcash#5056</title>
<g id="a_node84"><a xlink:href="https://github.com/zcash/zcash/issues/5056" xlink:title="zcash/zcash#5056&#10;Identify necessary RPC&#10;changes to support&#10;Unified Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2099,-777 1914,-777 1914,-709 2099,-709 2099,-777"/>
<text text-anchor="middle" x="2006.5" y="-761.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5056</text>
<text text-anchor="middle" x="2006.5" y="-746.8" font-family="Times,serif" font-size="14.00" fill="#000000">Identify necessary RPC</text>
<text text-anchor="middle" x="2006.5" y="-731.8" font-family="Times,serif" font-size="14.00" fill="#000000">changes to support</text>
<text text-anchor="middle" x="2006.5" y="-716.8" font-family="Times,serif" font-size="14.00" fill="#000000">Unified Addresses</text>
</a>
</g>
</g>
<!-- zcash/zcash#5056&#45;&gt;zcash/zcash#5019 -->
<g id="edge98" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2099.3,-720.73C2131.5,-713.01 2167.8,-704.31 2200.7,-696.43"/>
<polygon fill="#000000" stroke="#000000" points="2201.8038,-699.764 2210.7,-694.01 2200.1573,-692.9604 2201.8038,-699.764"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node85" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node85"><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" points="2393.5,-769.5 2211.5,-769.5 2211.5,-716.5 2393.5,-716.5 2393.5,-769.5"/>
<text text-anchor="middle" x="2302.5" y="-754.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="2302.5" y="-739.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="2302.5" y="-724.3" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5056&#45;&gt;zcash/zcash#5177 -->
<g id="edge99" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5177</title>
<path fill="none" stroke="#000000" d="M2099.3,-743C2131.7,-743 2168.1,-743 2201.1,-743"/>
<polygon fill="#000000" stroke="#000000" points="2201.3,-746.5001 2211.3,-743 2201.3,-739.5001 2201.3,-746.5001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node86" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node86"><a xlink:href="https://github.com/zcash/zcash/issues/5176" xlink:title="zcash/zcash#5176&#10;Implement BIP 39 seed&#10;phrase support" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="2099,-619.5 1914,-619.5 1914,-566.5 2099,-566.5 2099,-619.5"/>
<text text-anchor="middle" x="2006.5" y="-604.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="2006.5" y="-589.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="2006.5" y="-574.3" 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="edge100" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2099.1,-613.13C2118.9,-617.75 2139.7,-622.84 2159,-628 2175.4,-632.39 2192.8,-637.4 2209.5,-642.43"/>
<polygon fill="#000000" stroke="#000000" points="2208.7151,-645.849 2219.3,-645.39 2210.7391,-639.148 2208.7151,-645.849"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node87" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node87"><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="2403.5,-627 2201.5,-627 2201.5,-559 2403.5,-559 2403.5,-627"/>
<text text-anchor="middle" x="2302.5" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="2302.5" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="2302.5" y="-581.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="2302.5" y="-566.8" 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="edge101" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M2099.3,-593C2128.4,-593 2160.9,-593 2191.1,-593"/>
<polygon fill="#000000" stroke="#000000" points="2191.3,-596.5001 2201.3,-593 2191.3,-589.5001 2191.3,-596.5001"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge102" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2403.5,-590.18C2416.2,-589.83 2429.2,-589.47 2442.1,-589.11"/>
<polygon fill="#000000" stroke="#000000" points="2442.4035,-592.6029 2452.3,-588.82 2442.2045,-585.6057 2442.4035,-592.6029"/>
</g>
<!-- zcash/zips#364 -->
<g id="node88" class="node">
<title>zcash/zips#364</title>
<g id="a_node88"><a xlink:href="https://github.com/zcash/zips/issues/364" xlink:title="zcash/zips#364&#10;[ZIP 339] Wallet Recovery&#10;Words (a la BIP 39)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1768,-500.5 1563,-500.5 1563,-447.5 1768,-447.5 1768,-500.5"/>
<text text-anchor="middle" x="1665.5" y="-485.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="1665.5" y="-470.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="1665.5" y="-455.3" 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="edge103" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M1768.4,-487.19C1785.8,-492.28 1803.1,-499.3 1818,-509 1840.4,-523.53 1831.7,-542.4 1854,-557 1869.1,-566.87 1886.6,-574.04 1904.2,-579.25"/>
<polygon fill="#000000" stroke="#000000" points="1903.4295,-582.6681 1914,-581.95 1905.2889,-575.9195 1903.4295,-582.6681"/>
</g>
<!-- zcash/zips#511 -->
<g id="node89" class="node">
<title>zcash/zips#511</title>
<g id="a_node89"><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="2410,-541 2195,-541 2195,-473 2410,-473 2410,-541"/>
<text text-anchor="middle" x="2302.5" y="-525.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="2302.5" y="-510.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="2302.5" y="-495.8" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="2302.5" y="-480.8" 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="edge104" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2410,-540.85C2420.7,-544.21 2431.6,-547.64 2442.3,-551.01"/>
<polygon fill="#000000" stroke="#000000" points="2441.5103,-554.4308 2452.1,-554.1 2443.6154,-547.7548 2441.5103,-554.4308"/>
</g>
<!-- zcash/zips#475 -->
<g id="node90" class="node">
<title>zcash/zips#475</title>
<g id="a_node90"><a xlink:href="https://github.com/zcash/zips/issues/475" xlink:title="zcash/zips#475&#10;ZIP 221: Add Orchard&#10;commitment tree roots" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2097.5,-2035.5 1915.5,-2035.5 1915.5,-1982.5 2097.5,-1982.5 2097.5,-2035.5"/>
<text text-anchor="middle" x="2006.5" y="-2020.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#475</text>
<text text-anchor="middle" x="2006.5" y="-2005.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 221: Add Orchard</text>
<text text-anchor="middle" x="2006.5" y="-1990.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree roots</text>
</a>
</g>
</g>
<!-- zcash/zips#475&#45;&gt;zcash/librustzcash#368 -->
<g id="edge105" class="edge">
<title>zcash/zips#475&#45;&gt;zcash/librustzcash#368</title>
<path fill="none" stroke="#000000" d="M2097.7,-2000.4C2129.5,-1997.4 2165.4,-1994 2198.2,-1990.9"/>
<polygon fill="#000000" stroke="#000000" points="2198.6935,-1994.3683 2208.3,-1989.9 2198.0038,-1987.4024 2198.6935,-1994.3683"/>
</g>
<!-- zcash/zips#482 -->
<g id="node91" class="node">
<title>zcash/zips#482</title>
<g id="a_node91"><a xlink:href="https://github.com/zcash/zips/issues/482" xlink:title="zcash/zips#482&#10;[ZIP 316] Unified&#10;Addresses" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2077,-461.5 1936,-461.5 1936,-408.5 2077,-408.5 2077,-461.5"/>
<text text-anchor="middle" x="2006.5" y="-446.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#482</text>
<text text-anchor="middle" x="2006.5" y="-431.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 316] Unified</text>
<text text-anchor="middle" x="2006.5" y="-416.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zips#482&#45;&gt;zcash/librustzcash#371 -->
<g id="edge106" class="edge">
<title>zcash/zips#482&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2077,-431.66C2113.3,-429.95 2158.2,-427.83 2198.3,-425.93"/>
<polygon fill="#000000" stroke="#000000" points="2198.5775,-429.4209 2208.4,-425.45 2198.2451,-422.4288 2198.5775,-429.4209"/>
</g>
<!-- zcash/librustzcash#300 -->
<g id="node92" class="node">
<title>zcash/librustzcash#300</title>
<g id="a_node92"><a xlink:href="https://github.com/zcash/librustzcash/issues/300" xlink:title="zcash/librustzcash#300&#10;Use feature flags to gate&#10;access to ZIP&#45;222 code." target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="206,-195.5 12,-195.5 12,-142.5 206,-142.5 206,-195.5"/>
<text text-anchor="middle" x="109" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#300</text>
<text text-anchor="middle" x="109" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">Use feature flags to gate</text>
<text text-anchor="middle" x="109" y="-150.3" font-family="Times,serif" font-size="14.00" fill="#000000">access to ZIP&#45;222 code.</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#300&#45;&gt;zcash/librustzcash#226 -->
<g id="edge107" class="edge">
<title>zcash/librustzcash#300&#45;&gt;zcash/librustzcash#226</title>
<path fill="none" stroke="#000000" d="M206.18,-169C220.37,-169 235.04,-169 249.37,-169"/>
<polygon fill="#000000" stroke="#000000" points="249.73,-172.5001 259.73,-169 249.73,-165.5001 249.73,-172.5001"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node93" class="node">
<title>zcash/halo2#63</title>
<g id="a_node93"><a xlink:href="https://github.com/zcash/halo2/issues/63" xlink:title="zcash/halo2#63&#10;Implement zero&#45;knowledge&#45;&#10;ness" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="2114.5,-1964.5 1898.5,-1964.5 1898.5,-1911.5 2114.5,-1911.5 2114.5,-1964.5"/>
<text text-anchor="middle" x="2006.5" y="-1949.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="2006.5" y="-1934.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="2006.5" y="-1919.3" 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="edge108" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2114.7,-1926C2130.8,-1920.5 2146.2,-1912.8 2159,-1902 2190.6,-1875.2 2168.6,-1847.9 2195,-1816 2207.6,-1800.8 2224.2,-1787.7 2240.7,-1777"/>
<polygon fill="#000000" stroke="#000000" points="2242.6361,-1779.9166 2249.2,-1771.6 2238.8825,-1774.0081 2242.6361,-1779.9166"/>
</g>
<!-- zcash/librustzcash#349 -->
<g id="node94" class="node">
<title>zcash/librustzcash#349</title>
<g id="a_node94"><a xlink:href="https://github.com/zcash/librustzcash/issues/349" xlink:title="zcash/librustzcash#349&#10;Generalise note&#10;encryption logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1759.5,-998.5 1571.5,-998.5 1571.5,-945.5 1759.5,-945.5 1759.5,-998.5"/>
<text text-anchor="middle" x="1665.5" y="-983.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#349</text>
<text text-anchor="middle" x="1665.5" y="-968.3" font-family="Times,serif" font-size="14.00" fill="#000000">Generalise note</text>
<text text-anchor="middle" x="1665.5" y="-953.3" font-family="Times,serif" font-size="14.00" fill="#000000">encryption logic</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#349&#45;&gt;zcash/orchard#32 -->
<g id="edge109" class="edge">
<title>zcash/librustzcash#349&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1759.6,-972C1800,-972 1847.7,-972 1890.3,-972"/>
<polygon fill="#000000" stroke="#000000" points="1890.4,-975.5001 1900.4,-972 1890.4,-968.5001 1890.4,-975.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25 -->
<g id="node95" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25</title>
<g id="a_node95"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/25" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#10;Implement F4Jumble" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1818,-390 1513,-390 1513,-352 1818,-352 1818,-390"/>
<text text-anchor="middle" x="1665.5" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#25</text>
<text text-anchor="middle" x="1665.5" y="-359.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement F4Jumble</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge110" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M1766.9,-351.97C1794.6,-346.77 1825.2,-341.03 1855,-335.43"/>
<polygon fill="#000000" stroke="#000000" points="1855.9144,-338.8197 1865.1,-333.54 1854.6268,-331.9392 1855.9144,-338.8197"/>
</g>
<!-- zcash/librustzcash#378 -->
<g id="node96" class="node">
<title>zcash/librustzcash#378</title>
<g id="a_node96"><a xlink:href="https://github.com/zcash/librustzcash/issues/378" xlink:title="zcash/librustzcash#378&#10;Implement F4Jumble" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2100.5,-390 1912.5,-390 1912.5,-352 2100.5,-352 2100.5,-390"/>
<text text-anchor="middle" x="2006.5" y="-374.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#378</text>
<text text-anchor="middle" x="2006.5" y="-359.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement F4Jumble</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash/librustzcash#378 -->
<g id="edge111" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25&#45;&gt;zcash/librustzcash#378</title>
<path fill="none" stroke="#000000" d="M1818,-371C1846.5,-371 1875.6,-371 1902.2,-371"/>
<polygon fill="#000000" stroke="#000000" points="1902.3,-374.5001 1912.3,-371 1902.3,-367.5001 1902.3,-374.5001"/>
</g>
<!-- zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371 -->
<g id="edge112" class="edge">
<title>zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2100.6,-386.89C2131.6,-392.14 2166.4,-398.01 2198.2,-403.38"/>
<polygon fill="#000000" stroke="#000000" points="2197.9555,-406.8884 2208.4,-405.11 2199.1261,-399.987 2197.9555,-406.8884"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#14 -->
<g id="node97" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#14</title>
<g id="a_node97"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/14" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#10;Implementation of Pallas" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="795,-452 490,-452 490,-448 486,-448 486,-444 490,-444 490,-422 486,-422 486,-418 490,-418 490,-414 795,-414 795,-452"/>
<polyline fill="none" stroke="#000000" points="490,-448 494,-448 494,-444 490,-444 "/>
<polyline fill="none" stroke="#000000" points="490,-422 494,-422 494,-418 490,-418 "/>
<text text-anchor="middle" x="642.5" y="-436.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#14</text>
<text text-anchor="middle" x="642.5" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implementation of Pallas</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17 -->
<g id="node98" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</title>
<g id="a_node98"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/17" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#10;Add iso&#45;Pallas, SWU hash&#45;&#10;to&#45;curve, and Sinsemilla" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1136,-459.5 831,-459.5 831,-455.5 827,-455.5 827,-451.5 831,-451.5 831,-414.5 827,-414.5 827,-410.5 831,-410.5 831,-406.5 1136,-406.5 1136,-459.5"/>
<polyline fill="none" stroke="#000000" points="831,-455.5 835,-455.5 835,-451.5 831,-451.5 "/>
<polyline fill="none" stroke="#000000" points="831,-414.5 835,-414.5 835,-410.5 831,-410.5 "/>
<text text-anchor="middle" x="983.5" y="-444.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</text>
<text text-anchor="middle" x="983.5" y="-429.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add iso&#45;Pallas, SWU hash&#45;</text>
<text text-anchor="middle" x="983.5" y="-414.3" font-family="Times,serif" font-size="14.00" fill="#000000">to&#45;curve, and Sinsemilla</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#17 -->
<g id="edge113" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#14&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</title>
<path fill="none" stroke="#000000" d="M795.05,-433C803.59,-433 812.19,-433 820.76,-433"/>
<polygon fill="#000000" stroke="#000000" points="820.81,-436.5001 830.81,-433 820.81,-429.5001 820.81,-436.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18 -->
<g id="node99" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</title>
<g id="a_node99"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/18" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#10;Add Orchard generators" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1477,-326 1172,-326 1172,-322 1168,-322 1168,-318 1172,-318 1172,-296 1168,-296 1168,-292 1172,-292 1172,-288 1477,-288 1477,-326"/>
<polyline fill="none" stroke="#000000" points="1172,-322 1176,-322 1176,-318 1172,-318 "/>
<polyline fill="none" stroke="#000000" points="1172,-296 1176,-296 1176,-292 1172,-292 "/>
<text text-anchor="middle" x="1324.5" y="-310.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</text>
<text text-anchor="middle" x="1324.5" y="-295.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard generators</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#18 -->
<g id="edge114" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</title>
<path fill="none" stroke="#000000" d="M1106.1,-406.5C1116.3,-403.56 1126.4,-400.39 1136,-397 1187.6,-378.84 1243.7,-350.87 1281.2,-330.93"/>
<polygon fill="#000000" stroke="#000000" points="1283.2125,-333.824 1290.4,-326.04 1279.9271,-327.6429 1283.2125,-333.824"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node100" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node100"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="1477,-585.5 1172,-585.5 1172,-532.5 1477,-532.5 1477,-585.5"/>
<text text-anchor="middle" x="1324.5" y="-570.3" 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="1324.5" y="-555.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="1324.5" y="-540.3" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="edge115" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<path fill="none" stroke="#000000" d="M1055.4,-459.57C1110.3,-479.84 1185.9,-507.78 1243,-528.88"/>
<polygon fill="#000000" stroke="#000000" points="1242.1068,-532.2814 1252.7,-532.47 1244.5365,-525.7166 1242.1068,-532.2814"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="edge116" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<path fill="none" stroke="#000000" d="M1477,-307C1485.6,-307 1494.2,-307 1502.8,-307"/>
<polygon fill="#000000" stroke="#000000" points="1502.8,-310.5001 1512.8,-307 1502.8,-303.5001 1502.8,-310.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#21 -->
<g id="node101" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</title>
<g id="a_node101"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/21" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#21&#10;Add Orchard MerkleCRH" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1818,-262 1513,-262 1513,-258 1509,-258 1509,-254 1513,-254 1513,-232 1509,-232 1509,-228 1513,-228 1513,-224 1818,-224 1818,-262"/>
<polyline fill="none" stroke="#000000" points="1513,-258 1517,-258 1517,-254 1513,-254 "/>
<polyline fill="none" stroke="#000000" points="1513,-232 1517,-232 1517,-228 1513,-228 "/>
<text text-anchor="middle" x="1665.5" y="-246.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</text>
<text text-anchor="middle" x="1665.5" y="-231.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard MerkleCRH</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#21 -->
<g id="edge117" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</title>
<path fill="none" stroke="#000000" d="M1423.3,-288C1452.2,-282.47 1483.9,-276.46 1513,-271 1525.4,-268.67 1538.5,-266.25 1551.4,-263.86"/>
<polygon fill="#000000" stroke="#000000" points="1552.1028,-267.2895 1561.3,-262.03 1550.8304,-260.4061 1552.1028,-267.2895"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node102" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node102"><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="#c2e0c6" stroke="#000000" points="1818,-642.5 1513,-642.5 1513,-589.5 1818,-589.5 1818,-642.5"/>
<text text-anchor="middle" x="1665.5" y="-627.3" 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="1665.5" y="-612.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="1665.5" y="-597.3" 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="edge118" 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="M1477,-584.5C1485.6,-585.93 1494.2,-587.36 1502.8,-588.8"/>
<polygon fill="#000000" stroke="#000000" points="1502.3583,-592.2748 1512.8,-590.48 1503.5181,-585.3715 1502.3583,-592.2748"/>
</g>
<!-- zcash/halo2#39 -->
<g id="node103" class="node">
<title>zcash/halo2#39</title>
<g id="a_node103"><a xlink:href="https://github.com/zcash/halo2/issues/39" xlink:title="zcash/halo2#39&#10;Add support for&#10;coefficient blinding&#10;factors in&#10;poly::commitment" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1402,-2019.5 1247,-2019.5 1247,-1936.5 1402,-1936.5 1402,-2019.5"/>
<text text-anchor="middle" x="1324.5" y="-2004.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#39</text>
<text text-anchor="middle" x="1324.5" y="-1989.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="1324.5" y="-1974.3" font-family="Times,serif" font-size="14.00" fill="#000000">coefficient blinding</text>
<text text-anchor="middle" x="1324.5" y="-1959.3" font-family="Times,serif" font-size="14.00" fill="#000000">factors in</text>
<text text-anchor="middle" x="1324.5" y="-1944.3" font-family="Times,serif" font-size="14.00" fill="#000000">poly::commitment</text>
</a>
</g>
</g>
<!-- zcash/halo2#39&#45;&gt;zcash/halo2#63 -->
<g id="edge119" class="edge">
<title>zcash/halo2#39&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M1402.1,-1996.5C1427,-2004.2 1454,-2014.6 1477,-2028 1495.7,-2039 1492.8,-2053.1 1513,-2061 1576.2,-2085.6 1761.7,-2098.8 1818,-2061 1853.1,-2037.4 1821.8,-2000.4 1854,-1973 1864.1,-1964.4 1876,-1957.8 1888.5,-1952.7"/>
<polygon fill="#000000" stroke="#000000" points="1889.9815,-1955.8864 1898.2,-1949.2 1887.6057,-1949.3019 1889.9815,-1955.8864"/>
</g>
<!-- zcash/halo2#65 -->
<g id="node104" class="node">
<title>zcash/halo2#65</title>
<g id="a_node104"><a xlink:href="https://github.com/zcash/halo2/issues/65" xlink:title="zcash/halo2#65&#10;Implement SHA&#45;256 gadget" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1092.5,-1603 874.5,-1603 874.5,-1565 1092.5,-1565 1092.5,-1603"/>
<text text-anchor="middle" x="983.5" y="-1587.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#65</text>
<text text-anchor="middle" x="983.5" y="-1572.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement SHA&#45;256 gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#64 -->
<g id="node105" class="node">
<title>zcash/halo2#64</title>
<g id="a_node105"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="1409.5,-1565.5 1239.5,-1565.5 1239.5,-1512.5 1409.5,-1512.5 1409.5,-1565.5"/>
<text text-anchor="middle" x="1324.5" y="-1550.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="1324.5" y="-1535.3" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="1324.5" y="-1520.3" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#65&#45;&gt;zcash/halo2#64 -->
<g id="edge120" class="edge">
<title>zcash/halo2#65&#45;&gt;zcash/halo2#64</title>
<path fill="none" stroke="#000000" d="M1092.8,-1569.6C1136.7,-1563.8 1186.9,-1557.2 1229.3,-1551.6"/>
<polygon fill="#000000" stroke="#000000" points="1229.8819,-1555.0528 1239.3,-1550.2 1228.9113,-1548.1204 1229.8819,-1555.0528"/>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#73 -->
<g id="edge121" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M1409.7,-1521.3C1458,-1511.2 1518.7,-1498.6 1568.9,-1488.1"/>
<polygon fill="#000000" stroke="#000000" points="1569.6911,-1491.511 1578.8,-1486.1 1568.3049,-1484.6496 1569.6911,-1491.511"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node106" class="node">
<title>zcash/halo2#235</title>
<g id="a_node106"><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="1753.5,-1565.5 1577.5,-1565.5 1577.5,-1512.5 1753.5,-1512.5 1753.5,-1565.5"/>
<text text-anchor="middle" x="1665.5" y="-1550.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="1665.5" y="-1535.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="1665.5" y="-1520.3" 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="edge122" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M1409.7,-1539C1457.5,-1539 1517.3,-1539 1567.1,-1539"/>
<polygon fill="#000000" stroke="#000000" points="1567.3,-1542.5001 1577.3,-1539 1567.3,-1535.5001 1567.3,-1542.5001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge123" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1753.8,-1520.6C1801.6,-1510.7 1860.7,-1498.3 1909.8,-1488.1"/>
<polygon fill="#000000" stroke="#000000" points="1910.6806,-1491.4933 1919.8,-1486.1 1909.3078,-1484.6292 1910.6806,-1491.4933"/>
</g>
<!-- zcash/halo2#44 -->
<g id="node107" class="node">
<title>zcash/halo2#44</title>
<g id="a_node107"><a xlink:href="https://github.com/zcash/halo2/issues/44" xlink:title="zcash/halo2#44&#10;Implement lookup argument" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="753,-1774 532,-1774 532,-1736 753,-1736 753,-1774"/>
<text text-anchor="middle" x="642.5" y="-1758.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#44</text>
<text text-anchor="middle" x="642.5" y="-1743.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement lookup argument</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#65 -->
<g id="edge124" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#65</title>
<path fill="none" stroke="#000000" d="M678.46,-1735.9C716.25,-1715.8 777.54,-1683.7 831,-1657 865.01,-1640 903.63,-1621.5 933.49,-1607.4"/>
<polygon fill="#000000" stroke="#000000" points="935.303,-1610.4156 942.87,-1603 932.3302,-1604.0782 935.303,-1610.4156"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node108" class="node">
<title>zcash/halo2#57</title>
<g id="a_node108"><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="1055,-1836 912,-1836 912,-1768 1055,-1768 1055,-1836"/>
<text text-anchor="middle" x="983.5" y="-1820.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="983.5" y="-1805.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="983.5" y="-1790.8" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="983.5" y="-1775.8" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#57 -->
<g id="edge125" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#57</title>
<path fill="none" stroke="#000000" d="M753.21,-1770.3C801.67,-1776.9 857.5,-1784.6 902.05,-1790.8"/>
<polygon fill="#000000" stroke="#000000" points="901.5897,-1794.2695 911.96,-1792.1 902.5002,-1787.329 901.5897,-1794.2695"/>
</g>
<!-- zcash/halo2#82 -->
<g id="node109" class="node">
<title>zcash/halo2#82</title>
<g id="a_node109"><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="1080,-1749.5 887,-1749.5 887,-1666.5 1080,-1666.5 1080,-1749.5"/>
<text text-anchor="middle" x="983.5" y="-1734.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="983.5" y="-1719.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="983.5" y="-1704.3" font-family="Times,serif" font-size="14.00" fill="#000000">beta and gamma if there</text>
<text text-anchor="middle" x="983.5" y="-1689.3" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="983.5" y="-1674.3" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#44&#45;&gt;zcash/halo2#82 -->
<g id="edge126" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#82</title>
<path fill="none" stroke="#000000" d="M753.21,-1739.7C792.84,-1734.3 837.4,-1728.1 876.69,-1722.7"/>
<polygon fill="#000000" stroke="#000000" points="877.3933,-1726.1362 886.82,-1721.3 876.435,-1719.2021 877.3933,-1726.1362"/>
</g>
<!-- zcash/halo2#62 -->
<g id="node110" class="node">
<title>zcash/halo2#62</title>
<g id="a_node110"><a xlink:href="https://github.com/zcash/halo2/issues/62" xlink:title="zcash/halo2#62&#10;Modularise prover and&#10;verifier by introducing&#10;internal APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1073,-2012 894,-2012 894,-1944 1073,-1944 1073,-2012"/>
<text text-anchor="middle" x="983.5" y="-1996.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#62</text>
<text text-anchor="middle" x="983.5" y="-1981.8" font-family="Times,serif" font-size="14.00" fill="#000000">Modularise prover and</text>
<text text-anchor="middle" x="983.5" y="-1966.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier by introducing</text>
<text text-anchor="middle" x="983.5" y="-1951.8" font-family="Times,serif" font-size="14.00" fill="#000000">internal APIs</text>
</a>
</g>
</g>
<!-- zcash/halo2#62&#45;&gt;zcash/halo2#66 -->
<g id="edge127" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#66</title>
<path fill="none" stroke="#000000" d="M1073,-2002.3C1104.3,-2010.6 1139.7,-2019.9 1172,-2028 1186.3,-2031.6 1201.4,-2035.3 1216.2,-2038.8"/>
<polygon fill="#000000" stroke="#000000" points="1215.4545,-2042.2208 1226,-2041.2 1217.1196,-2035.4217 1215.4545,-2042.2208"/>
</g>
<!-- zcash/halo2#62&#45;&gt;zcash/halo2#39 -->
<g id="edge128" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#39</title>
<path fill="none" stroke="#000000" d="M1073.1,-1978C1123.6,-1978 1186.4,-1978 1236.6,-1978"/>
<polygon fill="#000000" stroke="#000000" points="1236.8,-1981.5001 1246.8,-1978 1236.8,-1974.5001 1236.8,-1981.5001"/>
</g>
<!-- zcash/halo2#61 -->
<g id="node111" class="node">
<title>zcash/halo2#61</title>
<g id="a_node111"><a xlink:href="https://github.com/zcash/halo2/pull/61" xlink:title="zcash/halo2#61&#10;Migrate to ff traits" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="184.5,-1301 33.5,-1301 33.5,-1297 29.5,-1297 29.5,-1293 33.5,-1293 33.5,-1271 29.5,-1271 29.5,-1267 33.5,-1267 33.5,-1263 184.5,-1263 184.5,-1301"/>
<polyline fill="none" stroke="#000000" points="33.5,-1297 37.5,-1297 37.5,-1293 33.5,-1293 "/>
<polyline fill="none" stroke="#000000" points="33.5,-1271 37.5,-1271 37.5,-1267 33.5,-1267 "/>
<text text-anchor="middle" x="109" y="-1285.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#61</text>
<text text-anchor="middle" x="109" y="-1270.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to ff traits</text>
</a>
</g>
</g>
<!-- zcash/halo2#68 -->
<g id="node112" class="node">
<title>zcash/halo2#68</title>
<g id="a_node112"><a xlink:href="https://github.com/zcash/halo2/issues/68" xlink:title="zcash/halo2#68&#10;Migrate to the Pasta&#10;curves" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="436,-1308.5 272,-1308.5 272,-1255.5 436,-1255.5 436,-1308.5"/>
<text text-anchor="middle" x="354" y="-1293.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#68</text>
<text text-anchor="middle" x="354" y="-1278.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the Pasta</text>
<text text-anchor="middle" x="354" y="-1263.3" font-family="Times,serif" font-size="14.00" fill="#000000">curves</text>
</a>
</g>
</g>
<!-- zcash/halo2#61&#45;&gt;zcash/halo2#68 -->
<g id="edge129" class="edge">
<title>zcash/halo2#61&#45;&gt;zcash/halo2#68</title>
<path fill="none" stroke="#000000" d="M184.51,-1282C208.96,-1282 236.36,-1282 261.88,-1282"/>
<polygon fill="#000000" stroke="#000000" points="261.93,-1285.5001 271.93,-1282 261.93,-1278.5001 261.93,-1285.5001"/>
</g>
<!-- zcash/halo2#68&#45;&gt;zcash/halo2#72 -->
<g id="edge130" class="edge">
<title>zcash/halo2#68&#45;&gt;zcash/halo2#72</title>
<path fill="none" stroke="#000000" d="M436.29,-1295.4C469.03,-1300.7 507.03,-1306.9 541.42,-1312.5"/>
<polygon fill="#000000" stroke="#000000" points="541.0572,-1315.9882 551.5,-1314.2 542.2213,-1309.0856 541.0572,-1315.9882"/>
</g>
<!-- zcash/halo2#70 -->
<g id="node113" class="node">
<title>zcash/halo2#70</title>
<g id="a_node113"><a xlink:href="https://github.com/zcash/halo2/pull/70" xlink:title="zcash/halo2#70&#10;Extract permutation&#10;argument and introduce&#10;typed challenges" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="449.5,-1892 258.5,-1892 258.5,-1888 254.5,-1888 254.5,-1884 258.5,-1884 258.5,-1832 254.5,-1832 254.5,-1828 258.5,-1828 258.5,-1824 449.5,-1824 449.5,-1892"/>
<polyline fill="none" stroke="#000000" points="258.5,-1888 262.5,-1888 262.5,-1884 258.5,-1884 "/>
<polyline fill="none" stroke="#000000" points="258.5,-1832 262.5,-1832 262.5,-1828 258.5,-1828 "/>
<text text-anchor="middle" x="354" y="-1876.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#70</text>
<text text-anchor="middle" x="354" y="-1861.8" font-family="Times,serif" font-size="14.00" fill="#000000">Extract permutation</text>
<text text-anchor="middle" x="354" y="-1846.8" font-family="Times,serif" font-size="14.00" fill="#000000">argument and introduce</text>
<text text-anchor="middle" x="354" y="-1831.8" font-family="Times,serif" font-size="14.00" fill="#000000">typed challenges</text>
</a>
</g>
</g>
<!-- zcash/halo2#70&#45;&gt;zcash/halo2#44 -->
<g id="edge131" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#44</title>
<path fill="none" stroke="#000000" d="M449.27,-1824C492.08,-1808.7 541.44,-1791.1 579.55,-1777.5"/>
<polygon fill="#000000" stroke="#000000" points="580.7677,-1780.7816 588.99,-1774.1 578.3956,-1774.1957 580.7677,-1780.7816"/>
</g>
<!-- zcash/halo2#70&#45;&gt;zcash/halo2#62 -->
<g id="edge132" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#62</title>
<path fill="none" stroke="#000000" d="M449.61,-1876.2C566.95,-1898.6 764.96,-1936.3 884.03,-1959"/>
<polygon fill="#000000" stroke="#000000" points="883.4084,-1962.4445 893.89,-1960.9 884.7329,-1955.571 883.4084,-1962.4445"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node114" class="node">
<title>zcash/halo2#78</title>
<g id="a_node114"><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="1426.5,-2177 1222.5,-2177 1222.5,-2109 1426.5,-2109 1426.5,-2177"/>
<text text-anchor="middle" x="1324.5" y="-2161.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="1324.5" y="-2146.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="1324.5" y="-2131.8" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="1324.5" y="-2116.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#75 -->
<g id="edge133" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1426.7,-2163.2C1444.2,-2169 1461.7,-2176.5 1477,-2186 1497.3,-2198.6 1491.4,-2215.8 1513,-2226 1638.8,-2285.1 1803.2,-2277.4 1906.8,-2263.8"/>
<polygon fill="#000000" stroke="#000000" points="1907.4753,-2267.2399 1916.9,-2262.4 1906.5141,-2260.3062 1907.4753,-2267.2399"/>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#79 -->
<g id="edge134" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1426.6,-2132.3C1446.1,-2125.6 1464.3,-2115.1 1477,-2099 1533.7,-2026.9 1457.6,-1347.1 1513,-1274 1528.1,-1254.1 1551.3,-1242 1575.1,-1234.7"/>
<polygon fill="#000000" stroke="#000000" points="1576.33,-1237.9895 1585,-1231.9 1574.4249,-1231.2537 1576.33,-1237.9895"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node115" class="node">
<title>zcash/halo2#250</title>
<g id="a_node115"><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="1762.5,-2365.5 1568.5,-2365.5 1568.5,-2312.5 1762.5,-2312.5 1762.5,-2365.5"/>
<text text-anchor="middle" x="1665.5" y="-2350.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="1665.5" y="-2335.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="1665.5" y="-2320.3" 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="edge135" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.8,-2159C1444.9,-2165.2 1462.5,-2173.9 1477,-2186 1505.1,-2209.5 1487.5,-2233.8 1513,-2260 1532.5,-2280 1558.1,-2295.9 1582.7,-2308.1"/>
<polygon fill="#000000" stroke="#000000" points="1581.1681,-2311.247 1591.7,-2312.4 1584.1858,-2304.9309 1581.1681,-2311.247"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge136" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1762.8,-2312.5C1808,-2300.1 1861.7,-2285.5 1907.1,-2273.1"/>
<polygon fill="#000000" stroke="#000000" points="1908.2733,-2276.4079 1917,-2270.4 1906.4314,-2269.6546 1908.2733,-2276.4079"/>
</g>
<!-- zcash/halo2#77 -->
<g id="node116" class="node">
<title>zcash/halo2#77</title>
<g id="a_node116"><a xlink:href="https://github.com/zcash/halo2/issues/77" xlink:title="zcash/halo2#77&#10;Implement Rescue gadget" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1427,-1366 1222,-1366 1222,-1328 1427,-1328 1427,-1366"/>
<text text-anchor="middle" x="1324.5" y="-1350.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#77</text>
<text text-anchor="middle" x="1324.5" y="-1335.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Rescue gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#77&#45;&gt;zcash/halo2#79 -->
<g id="edge137" class="edge">
<title>zcash/halo2#77&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1427.4,-1337.6C1444.7,-1333.2 1461.9,-1327 1477,-1318 1498.7,-1305.1 1492.2,-1288.3 1513,-1274 1531.5,-1261.3 1553.5,-1251.6 1575,-1244.4"/>
<polygon fill="#000000" stroke="#000000" points="1576.3,-1247.6568 1584.7,-1241.2 1574.1069,-1241.0092 1576.3,-1247.6568"/>
</g>
<!-- zcash/halo2#248 -->
<g id="node117" class="node">
<title>zcash/halo2#248</title>
<g id="a_node117"><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="1426,-2506.5 1223,-2506.5 1223,-2453.5 1426,-2453.5 1426,-2506.5"/>
<text text-anchor="middle" x="1324.5" y="-2491.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="1324.5" y="-2476.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="1324.5" y="-2461.3" 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="edge138" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.2,-2460.1C1443.4,-2455.6 1460.9,-2450.2 1477,-2444 1527,-2424.6 1579.9,-2394.1 1617,-2371"/>
<polygon fill="#000000" stroke="#000000" points="1618.9361,-2373.9166 1625.5,-2365.6 1615.1825,-2368.0081 1618.9361,-2373.9166"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node118" class="node">
<title>zcash/halo2#249</title>
<g id="a_node118"><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="1417,-2435 1232,-2435 1232,-2367 1417,-2367 1417,-2435"/>
<text text-anchor="middle" x="1324.5" y="-2419.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="1324.5" y="-2404.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="1324.5" y="-2389.8" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="1324.5" y="-2374.8" 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="edge139" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1417.2,-2384.1C1460.9,-2376.2 1513.2,-2366.7 1558.5,-2358.5"/>
<polygon fill="#000000" stroke="#000000" points="1559.0968,-2361.949 1568.3,-2356.7 1557.8322,-2355.0642 1559.0968,-2361.949"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node119" class="node">
<title>zcash/halo2#246</title>
<g id="a_node119"><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="1073,-2341.5 894,-2341.5 894,-2288.5 1073,-2288.5 1073,-2341.5"/>
<text text-anchor="middle" x="983.5" y="-2326.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="983.5" y="-2311.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="983.5" y="-2296.3" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node120" class="node">
<title>zcash/halo2#247</title>
<g id="a_node120"><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="1412.5,-2349 1236.5,-2349 1236.5,-2281 1412.5,-2281 1412.5,-2349"/>
<text text-anchor="middle" x="1324.5" y="-2333.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="1324.5" y="-2318.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="1324.5" y="-2303.8" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="1324.5" y="-2288.8" 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="edge140" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M1073.1,-2315C1120.2,-2315 1177.9,-2315 1226.2,-2315"/>
<polygon fill="#000000" stroke="#000000" points="1226.4,-2318.5001 1236.4,-2315 1226.4,-2311.5001 1226.4,-2318.5001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge141" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1412.8,-2321.2C1457.2,-2324.3 1511.3,-2328.2 1558.1,-2331.4"/>
<polygon fill="#000000" stroke="#000000" points="1558.0569,-2334.9073 1568.3,-2332.2 1558.6043,-2327.9287 1558.0569,-2334.9073"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node121" class="node">
<title>zcash/halo2#245</title>
<g id="a_node121"><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="1427.5,-2263 1221.5,-2263 1221.5,-2195 1427.5,-2195 1427.5,-2263"/>
<text text-anchor="middle" x="1324.5" y="-2247.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="1324.5" y="-2232.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="1324.5" y="-2217.8" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="1324.5" y="-2202.8" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge142" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1427.7,-2257.1C1444.3,-2261.9 1461.1,-2267 1477,-2272 1512.5,-2283.3 1551.4,-2296.9 1584.6,-2308.9"/>
<polygon fill="#000000" stroke="#000000" points="1583.7057,-2312.2981 1594.3,-2312.4 1586.0815,-2305.7136 1583.7057,-2312.2981"/>
</g>
<!-- zcash/halo2#151 -->
<g id="node122" class="node">
<title>zcash/halo2#151</title>
<g id="a_node122"><a xlink:href="https://github.com/zcash/halo2/issues/151" xlink:title="zcash/halo2#151&#10;Add support for full&#45;&#10;field challenge space" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="1408,-2664.5 1241,-2664.5 1241,-2611.5 1408,-2611.5 1408,-2664.5"/>
<text text-anchor="middle" x="1324.5" y="-2649.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#151</text>
<text text-anchor="middle" x="1324.5" y="-2634.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for full&#45;</text>
<text text-anchor="middle" x="1324.5" y="-2619.3" font-family="Times,serif" font-size="14.00" fill="#000000">field challenge space</text>
</a>
</g>
</g>
<!-- zcash/halo2#151&#45;&gt;zcash/halo2#250 -->
<g id="edge143" class="edge">
<title>zcash/halo2#151&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1408.1,-2629.4C1431.8,-2624.1 1456.7,-2615.6 1477,-2602 1563.2,-2544.2 1623.2,-2432.8 1649.9,-2375.3"/>
<polygon fill="#000000" stroke="#000000" points="1653.2229,-2376.4497 1654.2,-2365.9 1646.8573,-2373.5377 1653.2229,-2376.4497"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node123" class="node">
<title>zcash/halo2#210</title>
<g id="a_node123"><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="1433.5,-2593 1215.5,-2593 1215.5,-2525 1433.5,-2525 1433.5,-2593"/>
<text text-anchor="middle" x="1324.5" y="-2577.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="1324.5" y="-2562.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="1324.5" y="-2547.8" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="1324.5" y="-2532.8" 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="edge144" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1433.7,-2534.3C1448.7,-2529 1463.6,-2522.6 1477,-2515 1542.6,-2477.8 1603.4,-2413.4 1637.4,-2373.7"/>
<polygon fill="#000000" stroke="#000000" points="1640.3012,-2375.6904 1644.1,-2365.8 1634.9626,-2371.1627 1640.3012,-2375.6904"/>
</g>
<!-- zcash/orchard#29 -->
<g id="node124" class="node">
<title>zcash/orchard#29</title>
<g id="a_node124"><a xlink:href="https://github.com/zcash/orchard/issues/29" xlink:title="zcash/orchard#29&#10;Implement Orchard key&#10;structure" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1760,-571.5 1571,-571.5 1571,-518.5 1760,-518.5 1760,-571.5"/>
<text text-anchor="middle" x="1665.5" y="-556.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#29</text>
<text text-anchor="middle" x="1665.5" y="-541.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-526.3" font-family="Times,serif" font-size="14.00" fill="#000000">structure</text>
</a>
</g>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#35 -->
<g id="edge145" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1760.2,-549.23C1781.8,-554.56 1802.8,-563.94 1818,-580 1882,-647.43 1786.7,-721.91 1854,-786 1903.5,-833.1 2093.8,-803.63 2159,-824 2191.7,-834.2 2225.7,-851.66 2252.4,-867.17"/>
<polygon fill="#000000" stroke="#000000" points="2250.8049,-870.2922 2261.2,-872.34 2254.3508,-864.2567 2250.8049,-870.2922"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#36 -->
<g id="edge146" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#36</title>
<path fill="none" stroke="#000000" d="M1760,-536.41C1803.3,-532.47 1854.7,-527.8 1899.4,-523.74"/>
<polygon fill="#000000" stroke="#000000" points="1899.7584,-527.2219 1909.4,-522.83 1899.1239,-520.2507 1899.7584,-527.2219"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#30 -->
<g id="edge147" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#30</title>
<path fill="none" stroke="#000000" d="M1760.4,-555.99C1780.5,-561.19 1800.8,-568.82 1818,-580 1840.4,-594.53 1831.7,-613.4 1854,-628 1870.8,-639.02 1890.7,-646.68 1910.4,-652"/>
<polygon fill="#000000" stroke="#000000" points="1909.8497,-655.4701 1920.4,-654.5 1911.5475,-648.6791 1909.8497,-655.4701"/>
</g>
<!-- zcash/orchard#27 -->
<g id="node125" class="node">
<title>zcash/orchard#27</title>
<g id="a_node125"><a xlink:href="https://github.com/zcash/orchard/pull/27" xlink:title="zcash/orchard#27&#10;Make Bundle a parametric&#10;type over an&#10;Authorization trait" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1769.5,-927 1561.5,-927 1561.5,-923 1557.5,-923 1557.5,-919 1561.5,-919 1561.5,-867 1557.5,-867 1557.5,-863 1561.5,-863 1561.5,-859 1769.5,-859 1769.5,-927"/>
<polyline fill="none" stroke="#000000" points="1561.5,-923 1565.5,-923 1565.5,-919 1561.5,-919 "/>
<polyline fill="none" stroke="#000000" points="1561.5,-867 1565.5,-867 1565.5,-863 1561.5,-863 "/>
<text text-anchor="middle" x="1665.5" y="-911.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#27</text>
<text text-anchor="middle" x="1665.5" y="-896.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make Bundle a parametric</text>
<text text-anchor="middle" x="1665.5" y="-881.8" font-family="Times,serif" font-size="14.00" fill="#000000">type over an</text>
<text text-anchor="middle" x="1665.5" y="-866.8" font-family="Times,serif" font-size="14.00" fill="#000000">Authorization trait</text>
</a>
</g>
</g>
<!-- zcash/orchard#27&#45;&gt;zcash/orchard#35 -->
<g id="edge148" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1769.6,-893.98C1891.8,-895.13 2092.6,-897.02 2209.7,-898.13"/>
<polygon fill="#000000" stroke="#000000" points="2209.6689,-901.6298 2219.7,-898.22 2209.7319,-894.63 2209.6689,-901.6298"/>
</g>
<!-- zcash/orchard#27&#45;&gt;zcash/orchard#34 -->
<g id="edge149" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#34</title>
<path fill="none" stroke="#000000" d="M1769.6,-909.84C1787,-916.03 1804,-924.47 1818,-936 1845.3,-958.47 1835.9,-976.57 1854,-1007 1892.4,-1071.8 1942.9,-1143 1975,-1186.8"/>
<polygon fill="#000000" stroke="#000000" points="1972.2352,-1188.9477 1981,-1194.9 1977.8601,-1184.7811 1972.2352,-1188.9477"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node126" class="node">
<title>zcash/orchard#38</title>
<g id="a_node126"><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="#c2e0c6" stroke="#000000" stroke-width="2" points="1761,-1336.5 1570,-1336.5 1570,-1283.5 1761,-1283.5 1761,-1336.5"/>
<text text-anchor="middle" x="1665.5" y="-1321.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="1665.5" y="-1306.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="1665.5" y="-1291.3" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/orchard#4 -->
<g id="edge150" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1761.1,-1327.3C1780.3,-1332.2 1800.1,-1338.4 1818,-1346 1872.3,-1369.2 1928.4,-1407.7 1965.1,-1435.2"/>
<polygon fill="#000000" stroke="#000000" points="1963.0257,-1438.0198 1973.1,-1441.3 1967.2702,-1432.4533 1963.0257,-1438.0198"/>
</g>
<!-- zcash/orchard#55 -->
<g id="node127" class="node">
<title>zcash/orchard#55</title>
<g id="a_node127"><a xlink:href="https://github.com/zcash/orchard/issues/55" xlink:title="zcash/orchard#55&#10;Handle the (negligible&#10;probability of) failure&#10;of SinsemillaShortCommit" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1768.5,-2052 1562.5,-2052 1562.5,-1984 1768.5,-1984 1768.5,-2052"/>
<text text-anchor="middle" x="1665.5" y="-2036.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#55</text>
<text text-anchor="middle" x="1665.5" y="-2021.8" font-family="Times,serif" font-size="14.00" fill="#000000">Handle the (negligible</text>
<text text-anchor="middle" x="1665.5" y="-2006.8" font-family="Times,serif" font-size="14.00" fill="#000000">probability of) failure</text>
<text text-anchor="middle" x="1665.5" y="-1991.8" font-family="Times,serif" font-size="14.00" fill="#000000">of SinsemillaShortCommit</text>
</a>
</g>
</g>
<!-- zcash/orchard#55&#45;&gt;zcash/orchard#33 -->
<g id="edge151" class="edge">
<title>zcash/orchard#55&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1768.5,-2000.9C1786.3,-1994.6 1803.7,-1985.9 1818,-1974 1845.5,-1951.1 1825.9,-1924.1 1854,-1902 1863,-1894.9 1873.2,-1889.2 1883.9,-1884.6"/>
<polygon fill="#000000" stroke="#000000" points="1885.352,-1887.7906 1893.4,-1880.9 1882.8115,-1881.2679 1885.352,-1887.7906"/>
</g>
<!-- zcash/orchard#70 -->
<g id="node128" class="node">
<title>zcash/orchard#70</title>
<g id="a_node128"><a xlink:href="https://github.com/zcash/orchard/pull/70" xlink:title="zcash/orchard#70&#10;Bundle APIs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1739.5,-699 1591.5,-699 1591.5,-695 1587.5,-695 1587.5,-691 1591.5,-691 1591.5,-669 1587.5,-669 1587.5,-665 1591.5,-665 1591.5,-661 1739.5,-661 1739.5,-699"/>
<polyline fill="none" stroke="#000000" points="1591.5,-695 1595.5,-695 1595.5,-691 1591.5,-691 "/>
<polyline fill="none" stroke="#000000" points="1591.5,-669 1595.5,-669 1595.5,-665 1591.5,-665 "/>
<text text-anchor="middle" x="1665.5" y="-683.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#70</text>
<text text-anchor="middle" x="1665.5" y="-668.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bundle APIs</text>
</a>
</g>
</g>
<!-- zcash/orchard#49 -->
<g id="node129" class="node">
<title>zcash/orchard#49</title>
<g id="a_node129"><a xlink:href="https://github.com/zcash/orchard/pull/49" xlink:title="zcash/orchard#49&#10;Bundle builder" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="2080.5,-871 1932.5,-871 1932.5,-867 1928.5,-867 1928.5,-863 1932.5,-863 1932.5,-841 1928.5,-841 1928.5,-837 1932.5,-837 1932.5,-833 2080.5,-833 2080.5,-871"/>
<polyline fill="none" stroke="#000000" points="1932.5,-867 1936.5,-867 1936.5,-863 1932.5,-863 "/>
<polyline fill="none" stroke="#000000" points="1932.5,-841 1936.5,-841 1936.5,-837 1932.5,-837 "/>
<text text-anchor="middle" x="2006.5" y="-855.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#49</text>
<text text-anchor="middle" x="2006.5" y="-840.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bundle builder</text>
</a>
</g>
</g>
<!-- zcash/orchard#70&#45;&gt;zcash/orchard#49 -->
<g id="edge152" class="edge">
<title>zcash/orchard#70&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1739.9,-678.29C1767.3,-681.32 1796.7,-689.38 1818,-708 1857,-742.17 1815.5,-784.22 1854,-819 1872.6,-835.85 1897.8,-844.82 1922.3,-849.41"/>
<polygon fill="#000000" stroke="#000000" points="1921.8618,-852.8851 1932.3,-851.07 1923.0082,-845.9796 1921.8618,-852.8851"/>
</g>
<!-- zcash/orchard#49&#45;&gt;zcash/orchard#35 -->
<g id="edge153" class="edge">
<title>zcash/orchard#49&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2080.8,-863.8C2119.9,-870 2168.2,-877.67 2209.7,-884.26"/>
<polygon fill="#000000" stroke="#000000" points="2209.3737,-887.7521 2219.8,-885.87 2210.4757,-880.8394 2209.3737,-887.7521"/>
</g>
<!-- zcash/orchard#58 -->
<g id="node130" class="node">
<title>zcash/orchard#58</title>
<g id="a_node130"><a xlink:href="https://github.com/zcash/orchard/pull/58" xlink:title="zcash/orchard#58&#10;Proving and verifying&#10;keys, and placeholder&#10;proof logic" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1752,-841 1579,-841 1579,-837 1575,-837 1575,-833 1579,-833 1579,-781 1575,-781 1575,-777 1579,-777 1579,-773 1752,-773 1752,-841"/>
<polyline fill="none" stroke="#000000" points="1579,-837 1583,-837 1583,-833 1579,-833 "/>
<polyline fill="none" stroke="#000000" points="1579,-781 1583,-781 1583,-777 1579,-777 "/>
<text text-anchor="middle" x="1665.5" y="-825.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#58</text>
<text text-anchor="middle" x="1665.5" y="-810.8" font-family="Times,serif" font-size="14.00" fill="#000000">Proving and verifying</text>
<text text-anchor="middle" x="1665.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">keys, and placeholder</text>
<text text-anchor="middle" x="1665.5" y="-780.8" font-family="Times,serif" font-size="14.00" fill="#000000">proof logic</text>
</a>
</g>
</g>
<!-- zcash/orchard#58&#45;&gt;zcash/orchard#49 -->
<g id="edge154" class="edge">
<title>zcash/orchard#58&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1752.4,-818.47C1804.6,-825.36 1870.6,-834.07 1922.3,-840.89"/>
<polygon fill="#000000" stroke="#000000" points="1922.0265,-844.3843 1932.4,-842.23 1922.9472,-837.4451 1922.0265,-844.3843"/>
</g>
<!-- zcash/orchard#60 -->
<g id="node131" class="node">
<title>zcash/orchard#60</title>
<g id="a_node131"><a xlink:href="https://github.com/zcash/orchard/pull/60" xlink:title="zcash/orchard#60&#10;Dummy note generation" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1419.5,-826 1229.5,-826 1229.5,-822 1225.5,-822 1225.5,-818 1229.5,-818 1229.5,-796 1225.5,-796 1225.5,-792 1229.5,-792 1229.5,-788 1419.5,-788 1419.5,-826"/>
<polyline fill="none" stroke="#000000" points="1229.5,-822 1233.5,-822 1233.5,-818 1229.5,-818 "/>
<polyline fill="none" stroke="#000000" points="1229.5,-796 1233.5,-796 1233.5,-792 1229.5,-792 "/>
<text text-anchor="middle" x="1324.5" y="-810.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#60</text>
<text text-anchor="middle" x="1324.5" y="-795.8" font-family="Times,serif" font-size="14.00" fill="#000000">Dummy note generation</text>
</a>
</g>
</g>
<!-- zcash/orchard#60&#45;&gt;zcash/orchard#58 -->
<g id="edge155" class="edge">
<title>zcash/orchard#60&#45;&gt;zcash/orchard#58</title>
<path fill="none" stroke="#000000" d="M1419.9,-807C1466.4,-807 1522.1,-807 1568.7,-807"/>
<polygon fill="#000000" stroke="#000000" points="1568.8,-810.5001 1578.8,-807 1568.8,-803.5001 1568.8,-810.5001"/>
</g>
<!-- zcash/orchard#72 -->
<g id="node132" class="node">
<title>zcash/orchard#72</title>
<g id="a_node132"><a xlink:href="https://github.com/zcash/orchard/pull/72" xlink:title="zcash/orchard#72&#10;Builder preparations" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1748,-755 1583,-755 1583,-751 1579,-751 1579,-747 1583,-747 1583,-725 1579,-725 1579,-721 1583,-721 1583,-717 1748,-717 1748,-755"/>
<polyline fill="none" stroke="#000000" points="1583,-751 1587,-751 1587,-747 1583,-747 "/>
<polyline fill="none" stroke="#000000" points="1583,-725 1587,-725 1587,-721 1583,-721 "/>
<text text-anchor="middle" x="1665.5" y="-739.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#72</text>
<text text-anchor="middle" x="1665.5" y="-724.8" font-family="Times,serif" font-size="14.00" fill="#000000">Builder preparations</text>
</a>
</g>
</g>
<!-- zcash/orchard#72&#45;&gt;zcash/orchard#49 -->
<g id="edge156" class="edge">
<title>zcash/orchard#72&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1748.1,-738.94C1772.2,-742.91 1797.5,-750.37 1818,-764 1842.3,-780.17 1829.9,-802.45 1854,-819 1874,-832.76 1898.7,-840.93 1922.4,-845.74"/>
<polygon fill="#000000" stroke="#000000" points="1921.9286,-849.2123 1932.4,-847.6 1923.2087,-842.3303 1921.9286,-849.2123"/>
</g>
</g>
</svg>