developers/zcash-core-dag.svg

2403 lines
172 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="2867pt"
viewBox="0.00 0.00 2924.00 2867.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2863)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2863 2920,-2863 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,-2027 885,-2027 885,-1959 1082,-1959 1082,-2027"/>
<text text-anchor="middle" x="983.5" y="-2011.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4786</text>
<text text-anchor="middle" x="983.5" y="-1996.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Document</text>
<text text-anchor="middle" x="983.5" y="-1981.8" font-family="Times,serif" font-size="14.00" fill="#000000">Sinsemilla hash function</text>
<text text-anchor="middle" x="983.5" y="-1966.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,-1817.5 1579,-1817.5 1579,-1764.5 1752,-1764.5 1752,-1817.5"/>
<text text-anchor="middle" x="1665.5" y="-1802.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="1665.5" y="-1787.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1665.5" y="-1772.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="M1067.8,-1958.9C1100.2,-1946.3 1137.6,-1932.3 1172,-1921 1321.4,-1871.8 1360.5,-1864.7 1513,-1826 1531,-1821.4 1550.2,-1816.8 1568.7,-1812.5"/>
<polygon fill="#000000" stroke="#000000" points="1569.6515,-1815.8722 1578.6,-1810.2 1568.0673,-1809.0538 1569.6515,-1815.8722"/>
</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,-2053.5 1922,-2053.5 1922,-2000.5 2091,-2000.5 2091,-2053.5"/>
<text text-anchor="middle" x="2006.5" y="-2038.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="2006.5" y="-2023.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="2006.5" y="-2008.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="M1082.1,-1996.3C1278.8,-2002.8 1718.1,-2017.4 1911.7,-2023.9"/>
<polygon fill="#000000" stroke="#000000" points="1911.8014,-2027.4044 1921.9,-2024.2 1912.0073,-2020.4074 1911.8014,-2027.4044"/>
</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,-2093.5 1238,-2093.5 1238,-2089.5 1234,-2089.5 1234,-2085.5 1238,-2085.5 1238,-2048.5 1234,-2048.5 1234,-2044.5 1238,-2044.5 1238,-2040.5 1411,-2040.5 1411,-2093.5"/>
<polyline fill="none" stroke="#000000" points="1238,-2089.5 1242,-2089.5 1242,-2085.5 1238,-2085.5 "/>
<polyline fill="none" stroke="#000000" points="1238,-2048.5 1242,-2048.5 1242,-2044.5 1238,-2044.5 "/>
<text text-anchor="middle" x="1324.5" y="-2078.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#21</text>
<text text-anchor="middle" x="1324.5" y="-2063.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="1324.5" y="-2048.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="M1082.1,-2014.4C1128,-2024.4 1182.4,-2036.2 1228.1,-2046.1"/>
<polygon fill="#000000" stroke="#000000" points="1227.4914,-2049.5487 1238,-2048.2 1228.9439,-2042.7011 1227.4914,-2049.5487"/>
</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,-1762.5 1920,-1762.5 1920,-1709.5 2093,-1709.5 2093,-1762.5"/>
<text text-anchor="middle" x="2006.5" y="-1747.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="2006.5" y="-1732.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="2006.5" y="-1717.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,-1777C1800.4,-1769.2 1860.2,-1759.6 1909.7,-1751.6"/>
<polygon fill="#000000" stroke="#000000" points="1910.3786,-1755.036 1919.7,-1750 1909.2726,-1748.1239 1910.3786,-1755.036"/>
</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,-2025.5 2206.5,-2025.5 2206.5,-1972.5 2398.5,-1972.5 2398.5,-2025.5"/>
<text text-anchor="middle" x="2302.5" y="-2010.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="2302.5" y="-1995.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard as a</text>
<text text-anchor="middle" x="2302.5" y="-1980.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,-2019C2124.1,-2015.9 2161.9,-2012.3 2196.4,-2009"/>
<polygon fill="#000000" stroke="#000000" points="2196.8501,-2012.4738 2206.5,-2008.1 2196.2288,-2005.5015 2196.8501,-2012.4738"/>
</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,-2115.5 2474,-2115.5 2474,-2062.5 2633,-2062.5 2633,-2115.5"/>
<text text-anchor="middle" x="2553.5" y="-2100.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="2553.5" y="-2085.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="2553.5" y="-2070.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="M2091.1,-2036.6C2192.1,-2048 2360.3,-2067.1 2463.6,-2078.8"/>
<polygon fill="#000000" stroke="#000000" points="2463.3569,-2082.2956 2473.7,-2080 2464.1828,-2075.3445 2463.3569,-2082.2956"/>
</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,-1998.5 1568,-1998.5 1568,-1945.5 1763,-1945.5 1763,-1998.5"/>
<text text-anchor="middle" x="1665.5" y="-1983.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#31</text>
<text text-anchor="middle" x="1665.5" y="-1968.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard note</text>
<text text-anchor="middle" x="1665.5" y="-1953.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="M1411.4,-2042.8C1456.8,-2030.1 1512.8,-2014.6 1560.6,-2001.2"/>
<polygon fill="#000000" stroke="#000000" points="1561.6048,-2004.5534 1570.3,-1998.5 1559.7277,-1997.8098 1561.6048,-2004.5534"/>
</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="M2036.5,-1762.7C2090.8,-1810.9 2205.2,-1912.6 2264.7,-1965.4"/>
<polygon fill="#000000" stroke="#000000" points="2262.6169,-1968.2329 2272.4,-1972.3 2267.2884,-1963.0198 2262.6169,-1968.2329"/>
</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,-1410.5 2220,-1410.5 2220,-1357.5 2385,-1357.5 2385,-1410.5"/>
<text text-anchor="middle" x="2302.5" y="-1395.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="2302.5" y="-1380.3" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="2302.5" y="-1365.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="M2082,-1709.4C2109.9,-1696.1 2139.4,-1677.3 2159,-1652 2198.6,-1600.9 2165.4,-1568.5 2195,-1511 2213.2,-1475.6 2243,-1441.6 2266.6,-1417.6"/>
<polygon fill="#000000" stroke="#000000" points="2269.1038,-1420.046 2273.7,-1410.5 2264.154,-1415.0962 2269.1038,-1420.046"/>
</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,-1465.5 1900.5,-1465.5 1900.5,-1412.5 2112.5,-1412.5 2112.5,-1465.5"/>
<text text-anchor="middle" x="2006.5" y="-1450.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="2006.5" y="-1435.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="2006.5" y="-1420.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="M1756.3,-1945.3C1779.9,-1934.1 1802.9,-1918.5 1818,-1897 1902.9,-1775.8 1784,-1696.4 1854,-1566 1875.5,-1525.9 1915.5,-1493.3 1949.1,-1471.2"/>
<polygon fill="#000000" stroke="#000000" points="1951.3424,-1473.9216 1957.9,-1465.6 1947.5843,-1468.016 1951.3424,-1473.9216"/>
</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,-2310.5 1893.5,-2310.5 1893.5,-2257.5 2119.5,-2257.5 2119.5,-2310.5"/>
<text text-anchor="middle" x="2006.5" y="-2295.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="2006.5" y="-2280.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="2006.5" y="-2265.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="M1736.5,-1998.5C1763.6,-2010.6 1793.8,-2026.6 1818,-2046 1891.7,-2105.1 1954.6,-2198.1 1985.7,-2248.6"/>
<polygon fill="#000000" stroke="#000000" points="1982.7307,-2250.4537 1990.9,-2257.2 1988.7208,-2246.8317 1982.7307,-2250.4537"/>
</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,-1410.5 2459.5,-1410.5 2459.5,-1357.5 2647.5,-1357.5 2647.5,-1410.5"/>
<text text-anchor="middle" x="2553.5" y="-1395.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="2553.5" y="-1380.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="2553.5" y="-1365.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,-1384C2405.5,-1384 2427.7,-1384 2449.1,-1384"/>
<polygon fill="#000000" stroke="#000000" points="2449.2,-1387.5001 2459.2,-1384 2449.2,-1380.5001 2449.2,-1387.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,-1419.3C2144.4,-1413.4 2179.1,-1406.9 2210.1,-1401.2"/>
<polygon fill="#000000" stroke="#000000" points="2210.8389,-1404.6221 2220,-1399.3 2209.5195,-1397.7476 2210.8389,-1404.6221"/>
</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,-1334 2457.5,-1334 2457.5,-1266 2649.5,-1266 2649.5,-1334"/>
<text text-anchor="middle" x="2553.5" y="-1318.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="2553.5" y="-1303.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2553.5" y="-1288.8" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="2553.5" y="-1273.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,-1461.2C2199.6,-1473.3 2322.2,-1476 2410,-1419 2439.7,-1399.7 2420.4,-1372.4 2446,-1348 2449,-1345.1 2452.3,-1342.4 2455.7,-1339.8"/>
<polygon fill="#000000" stroke="#000000" points="2457.757,-1342.6322 2463.9,-1334 2453.7147,-1336.9172 2457.757,-1342.6322"/>
</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,-2325.5 2216.5,-2325.5 2216.5,-2242.5 2388.5,-2242.5 2388.5,-2325.5"/>
<text text-anchor="middle" x="2302.5" y="-2310.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="2302.5" y="-2295.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="2302.5" y="-2280.3" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="2302.5" y="-2265.3" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="2302.5" y="-2250.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,-2284C2148.2,-2284 2178.5,-2284 2206.1,-2284"/>
<polygon fill="#000000" stroke="#000000" points="2206.1,-2287.5001 2216.1,-2284 2206.1,-2280.5001 2206.1,-2287.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,-1342 2702,-1342 2702,-1274 2911,-1274 2911,-1342"/>
<text text-anchor="middle" x="2806.5" y="-1326.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="2806.5" y="-1311.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2806.5" y="-1296.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="2806.5" y="-1281.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="M2642,-1357.4C2658.2,-1352.6 2675.3,-1347.4 2692.1,-1342.4"/>
<polygon fill="#000000" stroke="#000000" points="2693.4448,-1345.6497 2702,-1339.4 2691.4147,-1338.9506 2693.4448,-1345.6497"/>
</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,-2183 255.5,-2183 255.5,-2085 452.5,-2085 452.5,-2183"/>
<text text-anchor="middle" x="354" y="-2167.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4883</text>
<text text-anchor="middle" x="354" y="-2152.8" font-family="Times,serif" font-size="14.00" fill="#000000">Find optimized addition</text>
<text text-anchor="middle" x="354" y="-2137.8" font-family="Times,serif" font-size="14.00" fill="#000000">chains for the Pasta</text>
<text text-anchor="middle" x="354" y="-2122.8" font-family="Times,serif" font-size="14.00" fill="#000000">fields (x^{1/α} used in</text>
<text text-anchor="middle" x="354" y="-2107.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="-2092.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,-2121 551.5,-2121 551.5,-2053 733.5,-2053 733.5,-2121"/>
<text text-anchor="middle" x="642.5" y="-2105.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#72</text>
<text text-anchor="middle" x="642.5" y="-2090.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement table&#45;based</text>
<text text-anchor="middle" x="642.5" y="-2075.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="-2060.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,-2117.9C481.33,-2113.3 512.41,-2108.2 541.02,-2103.5"/>
<polygon fill="#000000" stroke="#000000" points="541.6986,-2106.936 551.02,-2101.9 540.5926,-2100.0239 541.6986,-2106.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,-2128.5 908,-2128.5 908,-2045.5 1059,-2045.5 1059,-2128.5"/>
<text text-anchor="middle" x="983.5" y="-2113.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4710</text>
<text text-anchor="middle" x="983.5" y="-2098.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard]</text>
<text text-anchor="middle" x="983.5" y="-2083.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify/implement</text>
<text text-anchor="middle" x="983.5" y="-2068.3" font-family="Times,serif" font-size="14.00" fill="#000000">GroupHash into</text>
<text text-anchor="middle" x="983.5" y="-2053.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,-2087C784.82,-2087 847.87,-2087 897.86,-2087"/>
<polygon fill="#000000" stroke="#000000" points="897.99,-2090.5001 907.99,-2087 897.99,-2083.5001 897.99,-2090.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.2,-2097.9C1086.4,-2105.3 1115.4,-2117.5 1136,-2138 1171.3,-2173.1 1131.6,-2215 1172,-2244 1230.3,-2285.9 1752.7,-2274.9 1818,-2245 1900.2,-2207.4 1960.3,-2114.2 1988.5,-2062.7"/>
<polygon fill="#000000" stroke="#000000" points="1991.7406,-2064.0641 1993.4,-2053.6 1985.5773,-2060.7454 1991.7406,-2064.0641"/>
</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,-2082.6C1108.9,-2079.6 1174.3,-2075.8 1227.7,-2072.7"/>
<polygon fill="#000000" stroke="#000000" points="1228.1228,-2076.1813 1237.9,-2072.1 1227.7117,-2069.1934 1228.1228,-2076.1813"/>
</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,-2164.5 1226,-2164.5 1226,-2111.5 1423,-2111.5 1423,-2164.5"/>
<text text-anchor="middle" x="1324.5" y="-2149.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#66</text>
<text text-anchor="middle" x="1324.5" y="-2134.3" font-family="Times,serif" font-size="14.00" fill="#000000">Refactor proofs to not</text>
<text text-anchor="middle" x="1324.5" y="-2119.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,-2108.5 1577,-2108.5 1577,-2055.5 1754,-2055.5 1754,-2108.5"/>
<text text-anchor="middle" x="1665.5" y="-2093.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="1665.5" y="-2078.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="1665.5" y="-2063.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.1,-2121.8C1468.3,-2114.4 1521.7,-2105.6 1566.9,-2098.2"/>
<polygon fill="#000000" stroke="#000000" points="1567.7197,-2101.6114 1577,-2096.5 1566.5577,-2094.7085 1567.7197,-2101.6114"/>
</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,-2236 1591,-2236 1591,-2198 1740,-2198 1740,-2236"/>
<text text-anchor="middle" x="1665.5" y="-2220.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#67</text>
<text text-anchor="middle" x="1665.5" y="-2205.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.2,-2158.1C1441.2,-2162.5 1459.8,-2167.5 1477,-2173 1493.5,-2178.3 1496.4,-2183 1513,-2188 1534.6,-2194.5 1558.4,-2199.8 1580.6,-2204.1"/>
<polygon fill="#000000" stroke="#000000" points="1580.2253,-2207.5908 1590.7,-2206 1581.5195,-2200.7115 1580.2253,-2207.5908"/>
</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,-937.5 1570,-937.5 1570,-884.5 1761,-884.5 1761,-937.5"/>
<text text-anchor="middle" x="1665.5" y="-922.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#74</text>
<text text-anchor="middle" x="1665.5" y="-907.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement plumbing for</text>
<text text-anchor="middle" x="1665.5" y="-892.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.3,-2133.9C1443.9,-2128.3 1463.5,-2118.5 1477,-2102 1558.2,-2002.6 1431.8,-1046.4 1513,-947 1525.1,-932.2 1542,-922.81 1560.2,-916.98"/>
<polygon fill="#000000" stroke="#000000" points="1561.2222,-920.3284 1569.9,-914.25 1559.3257,-913.5901 1561.2222,-920.3284"/>
</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.2,-2067.7C1802.6,-2059.9 1862.5,-2050.2 1911.7,-2042.3"/>
<polygon fill="#000000" stroke="#000000" points="1912.4708,-2045.7216 1921.8,-2040.7 1911.3755,-2038.8078 1912.4708,-2045.7216"/>
</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,-582.5 1917,-582.5 1917,-529.5 2096,-529.5 2096,-582.5"/>
<text text-anchor="middle" x="2006.5" y="-567.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="2006.5" y="-552.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="2006.5" y="-537.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.2,-901.7C1781.4,-896.26 1801.6,-887.87 1818,-875 1845.8,-853.12 1836.7,-834.87 1854,-804 1897.3,-726.56 1953,-638.69 1983.6,-591.12"/>
<polygon fill="#000000" stroke="#000000" points="1986.5503,-593.0035 1989.1,-582.72 1980.6939,-589.1689 1986.5503,-593.0035"/>
</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,-582.5 2197.5,-582.5 2197.5,-529.5 2407.5,-529.5 2407.5,-582.5"/>
<text text-anchor="middle" x="2302.5" y="-567.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="2302.5" y="-552.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="-537.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,-556C2124.8,-556 2156.9,-556 2187.2,-556"/>
<polygon fill="#000000" stroke="#000000" points="2187.3,-559.5001 2197.3,-556 2187.3,-552.5001 2187.3,-559.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,-1888.5 1588.5,-1888.5 1588.5,-1835.5 1742.5,-1835.5 1742.5,-1888.5"/>
<text text-anchor="middle" x="1665.5" y="-1873.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4711</text>
<text text-anchor="middle" x="1665.5" y="-1858.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Shielded</text>
<text text-anchor="middle" x="1665.5" y="-1843.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.8,-1877.7C1767.4,-1884 1794.4,-1892.4 1818,-1903 1872.3,-1927.4 1928.6,-1966.5 1965.3,-1994.3"/>
<polygon fill="#000000" stroke="#000000" points="1963.2257,-1997.1198 1973.3,-2000.4 1967.4702,-1991.5533 1963.2257,-1997.1198"/>
</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,-1847.1C1767.2,-1841.5 1794,-1834.4 1818,-1826 1863.4,-1810 1912.4,-1786.4 1949.1,-1767.4"/>
<polygon fill="#000000" stroke="#000000" points="1950.9235,-1770.3942 1958.1,-1762.6 1947.6294,-1764.2177 1950.9235,-1770.3942"/>
</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,-1550 1561,-1550 1561,-1512 1770,-1512 1770,-1550"/>
<text text-anchor="middle" x="1665.5" y="-1534.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4712</text>
<text text-anchor="middle" x="1665.5" y="-1519.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.2,-1532.9C1788.1,-1537.8 1805,-1545.9 1818,-1559 1885.1,-1627 1821,-1681.3 1854,-1771 1885.4,-1856.2 1945.4,-1944.9 1980,-1992.2"/>
<polygon fill="#000000" stroke="#000000" points="1977.2352,-1994.3477 1986,-2000.3 1982.8601,-1990.1811 1977.2352,-1994.3477"/>
</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="M1770.1,-1513C1786.2,-1509.7 1802.6,-1506 1818,-1502 1853.6,-1492.7 1892.1,-1480.3 1925.1,-1468.9"/>
<polygon fill="#000000" stroke="#000000" points="1926.4422,-1472.1377 1934.7,-1465.5 1924.1052,-1465.5393 1926.4422,-1472.1377"/>
</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,-2345.5 1573,-2345.5 1573,-2292.5 1758,-2292.5 1758,-2345.5"/>
<text text-anchor="middle" x="1665.5" y="-2330.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4713</text>
<text text-anchor="middle" x="1665.5" y="-2315.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Commitment</text>
<text text-anchor="middle" x="1665.5" y="-2300.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.1,-2304.6C1778.9,-2298.6 1800.2,-2290.1 1818,-2278 1860.9,-2249 1944.1,-2124.6 1984,-2062.5"/>
<polygon fill="#000000" stroke="#000000" points="1987.1305,-2064.103 1989.6,-2053.8 1981.2445,-2060.3143 1987.1305,-2064.103"/>
</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,-2309.5C1796.8,-2305.5 1842,-2300.9 1883.3,-2296.6"/>
<polygon fill="#000000" stroke="#000000" points="1883.7935,-2300.0683 1893.4,-2295.6 1883.1038,-2293.1024 1883.7935,-2300.0683"/>
</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="M2356,-2242.4C2402.4,-2206.4 2468.6,-2154.9 2511.3,-2121.7"/>
<polygon fill="#000000" stroke="#000000" points="2513.4702,-2124.4467 2519.3,-2115.6 2509.2257,-2118.8802 2513.4702,-2124.4467"/>
</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,-2367.5 2453.5,-2367.5 2453.5,-2314.5 2653.5,-2314.5 2653.5,-2367.5"/>
<text text-anchor="middle" x="2553.5" y="-2352.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="2553.5" y="-2337.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="2553.5" y="-2322.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,-2303.5C2406.2,-2307.6 2425.1,-2311.8 2443.5,-2316"/>
<polygon fill="#000000" stroke="#000000" points="2442.7648,-2319.4225 2453.3,-2318.3 2444.3643,-2312.6077 2442.7648,-2319.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,-1708 1574.5,-1708 1574.5,-1640 1756.5,-1640 1756.5,-1708"/>
<text text-anchor="middle" x="1665.5" y="-1692.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4716</text>
<text text-anchor="middle" x="1665.5" y="-1677.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-1662.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format and</text>
<text text-anchor="middle" x="1665.5" y="-1647.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="M1746.9,-1708.2C1771.3,-1720.7 1797.2,-1736.5 1818,-1755 1897,-1825.2 1959.7,-1934.9 1988.8,-1991.1"/>
<polygon fill="#000000" stroke="#000000" points="1985.8712,-1993.0531 1993.6,-2000.3 1992.0773,-1989.8151 1985.8712,-1993.0531"/>
</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,-1643 1912,-1643 1912,-1575 2101,-1575 2101,-1643"/>
<text text-anchor="middle" x="2006.5" y="-1627.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#34</text>
<text text-anchor="middle" x="2006.5" y="-1612.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add parsing and</text>
<text text-anchor="middle" x="2006.5" y="-1597.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization support for</text>
<text text-anchor="middle" x="2006.5" y="-1582.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.9,-1656.6C1801.5,-1648.1 1855.5,-1637.8 1901.8,-1629"/>
<polygon fill="#000000" stroke="#000000" points="1902.7704,-1632.3759 1911.9,-1627 1901.4106,-1625.5092 1902.7704,-1632.3759"/>
</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,-1690 2225,-1690 2225,-1622 2380,-1622 2380,-1690"/>
<text text-anchor="middle" x="2302.5" y="-1674.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="2302.5" y="-1659.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1644.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="2302.5" y="-1629.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,-1624.1C2137.9,-1629.9 2179.3,-1636.4 2215,-1642.1"/>
<polygon fill="#000000" stroke="#000000" points="2214.5726,-1645.5761 2225,-1643.7 2215.6786,-1638.664 2214.5726,-1645.5761"/>
</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,-1603.5 2208.5,-1603.5 2208.5,-1520.5 2396.5,-1520.5 2396.5,-1603.5"/>
<text text-anchor="middle" x="2302.5" y="-1588.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="2302.5" y="-1573.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="2302.5" y="-1558.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="2302.5" y="-1543.3" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="2302.5" y="-1528.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,-1593.9C2132.3,-1589 2166.7,-1583.6 2198.3,-1578.5"/>
<polygon fill="#000000" stroke="#000000" points="2199.0708,-1581.9216 2208.4,-1576.9 2197.9755,-1575.0078 2199.0708,-1581.9216"/>
</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="M2322.4,-1690.3C2369.1,-1770.9 2485.5,-1971.6 2532.9,-2053.4"/>
<polygon fill="#000000" stroke="#000000" points="2529.9913,-2055.3637 2538,-2062.3 2536.0648,-2051.8834 2529.9913,-2055.3637"/>
</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="M2380.2,-1631.1C2390.8,-1625.8 2401.1,-1619.5 2410,-1612 2473.6,-1558.5 2518,-1469.5 2539.3,-1420"/>
<polygon fill="#000000" stroke="#000000" points="2542.6005,-1421.1779 2543.2,-1410.6 2536.1349,-1418.4953 2542.6005,-1421.1779"/>
</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,-1653.5 908.5,-1653.5 908.5,-1600.5 1058.5,-1600.5 1058.5,-1653.5"/>
<text text-anchor="middle" x="983.5" y="-1638.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4708</text>
<text text-anchor="middle" x="983.5" y="-1623.3" font-family="Times,serif" font-size="14.00" fill="#000000">Specify Poseidon</text>
<text text-anchor="middle" x="983.5" y="-1608.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="M1023.6,-1653.6C1109.4,-1709.2 1318.5,-1837 1513,-1897 1643.6,-1937.3 1687,-1897.1 1818,-1936 1865.7,-1950.2 1916.3,-1975.2 1953,-1995.4"/>
<polygon fill="#000000" stroke="#000000" points="1951.6654,-1998.6642 1962.1,-2000.5 1955.0877,-1992.5578 1951.6654,-1998.6642"/>
</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,-1983.5 1243,-1983.5 1243,-1930.5 1406,-1930.5 1406,-1983.5"/>
<text text-anchor="middle" x="1324.5" y="-1968.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#37</text>
<text text-anchor="middle" x="1324.5" y="-1953.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon</text>
<text text-anchor="middle" x="1324.5" y="-1938.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="M997.98,-1653.5C1026,-1703 1092.1,-1810.4 1172,-1878 1194.7,-1897.2 1222.9,-1913.4 1248.8,-1926.1"/>
<polygon fill="#000000" stroke="#000000" points="1247.2681,-1929.247 1257.8,-1930.4 1250.2858,-1922.9309 1247.2681,-1929.247"/>
</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,-1208 1216,-1208 1216,-1170 1433,-1170 1433,-1208"/>
<text text-anchor="middle" x="1324.5" y="-1192.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="1324.5" y="-1177.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="M1001.5,-1600.2C1032.8,-1552.6 1097.6,-1449.2 1136,-1354 1159.5,-1295.6 1125.8,-1259.8 1172,-1217 1181.8,-1207.9 1193.6,-1201.3 1206.2,-1196.5"/>
<polygon fill="#000000" stroke="#000000" points="1207.6398,-1199.7083 1216,-1193.2 1205.4059,-1193.0743 1207.6398,-1199.7083"/>
</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,-1279.5 1172,-1279.5 1172,-1226.5 1477,-1226.5 1477,-1279.5"/>
<text text-anchor="middle" x="1324.5" y="-1264.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="-1249.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon test</text>
<text text-anchor="middle" x="1324.5" y="-1234.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="M998.47,-1600.3C1025.8,-1551.4 1085.7,-1444.4 1136,-1354 1152.1,-1325.1 1145.7,-1308.9 1172,-1289 1173.8,-1287.6 1175.7,-1286.3 1177.7,-1285"/>
<polygon fill="#000000" stroke="#000000" points="1179.7494,-1287.8474 1186.4,-1279.6 1176.0578,-1281.8999 1179.7494,-1287.8474"/>
</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,-1960.6C1451.6,-1962.6 1508.7,-1965.1 1557.8,-1967.3"/>
<polygon fill="#000000" stroke="#000000" points="1557.6681,-1970.7974 1567.8,-1967.7 1557.9479,-1963.803 1557.6681,-1970.7974"/>
</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="M1433,-1190.7C1449.7,-1195.7 1465.3,-1204 1477,-1217 1551.3,-1300 1432.9,-1639.6 1513,-1717 1540.8,-1743.9 1773.9,-1742.3 1909.6,-1739.1"/>
<polygon fill="#000000" stroke="#000000" points="1910.1051,-1742.587 1920,-1738.8 1909.9032,-1735.5899 1910.1051,-1742.587"/>
</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,-667.5 1585,-667.5 1585,-584.5 1746,-584.5 1746,-667.5"/>
<text text-anchor="middle" x="1665.5" y="-652.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="1665.5" y="-637.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="1665.5" y="-622.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="1665.5" y="-607.3" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="1665.5" y="-592.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="M1335.8,-1169.8C1364,-1121.1 1438,-987.99 1477,-868 1503.9,-785.44 1455.8,-741.29 1513,-676 1529,-657.76 1551.7,-646.14 1574.8,-638.75"/>
<polygon fill="#000000" stroke="#000000" points="1576.0929,-642.0181 1584.7,-635.84 1574.1188,-635.3022 1576.0929,-642.0181"/>
</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,-866.5 1513,-866.5 1513,-813.5 1818,-813.5 1818,-866.5"/>
<text text-anchor="middle" x="1665.5" y="-851.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="-836.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-821.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="M1467.4,-1226.3C1470.8,-1223.5 1474,-1220.4 1477,-1217 1578,-1102.3 1411.6,-989.4 1513,-875 1513.4,-874.52 1513.8,-874.05 1514.3,-873.59"/>
<polygon fill="#000000" stroke="#000000" points="1516.8673,-875.9785 1521.7,-866.55 1512.0424,-870.9069 1516.8673,-875.9785"/>
</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,-866.5 1854,-866.5 1854,-813.5 2159,-813.5 2159,-866.5"/>
<text text-anchor="middle" x="2006.5" y="-851.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="-836.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2006.5" y="-821.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,-840C1826.6,-840 1835.2,-840 1843.8,-840"/>
<polygon fill="#000000" stroke="#000000" points="1843.8,-843.5001 1853.8,-840 1843.8,-836.5001 1843.8,-843.5001"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node56" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node56"><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,-1008 2208.5,-1008 2208.5,-940 2396.5,-940 2396.5,-1008"/>
<text text-anchor="middle" x="2302.5" y="-992.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="2302.5" y="-977.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="2302.5" y="-962.8" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="2302.5" y="-947.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="edge89" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2137.4,-866.54C2144.8,-869.12 2152,-871.94 2159,-875 2193,-889.98 2227.4,-913.36 2254,-933.65"/>
<polygon fill="#000000" stroke="#000000" points="2251.9466,-936.4864 2262,-939.83 2256.2259,-930.9468 2251.9466,-936.4864"/>
</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,-2235.5 1247,-2235.5 1247,-2182.5 1402,-2182.5 1402,-2235.5"/>
<text text-anchor="middle" x="1324.5" y="-2220.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="1324.5" y="-2205.3" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="1324.5" y="-2190.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.2,-2202.4C1427.8,-2197.3 1455.2,-2188.4 1477,-2173 1501.2,-2155.9 1488.8,-2134 1513,-2117 1528.9,-2105.8 1547.8,-2098.2 1566.8,-2092.9"/>
<polygon fill="#000000" stroke="#000000" points="1567.9475,-2096.2209 1576.8,-2090.4 1566.2497,-2089.4299 1567.9475,-2096.2209"/>
</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,-2179.5 1590.5,-2179.5 1590.5,-2126.5 1740.5,-2126.5 1740.5,-2179.5"/>
<text text-anchor="middle" x="1665.5" y="-2164.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4709</text>
<text text-anchor="middle" x="1665.5" y="-2149.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Specify</text>
<text text-anchor="middle" x="1665.5" y="-2134.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.9,-2138.6C1765.8,-2132.9 1793.4,-2125.7 1818,-2117 1863.4,-2101 1912.4,-2077.4 1949.1,-2058.4"/>
<polygon fill="#000000" stroke="#000000" points="1950.9235,-2061.3942 1958.1,-2053.6 1947.6294,-2055.2177 1950.9235,-2061.3942"/>
</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,-1668.5 541,-1668.5 541,-1585.5 744,-1585.5 744,-1668.5"/>
<text text-anchor="middle" x="642.5" y="-1653.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#454</text>
<text text-anchor="middle" x="642.5" y="-1638.3" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon: copy parameter</text>
<text text-anchor="middle" x="642.5" y="-1623.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation script to</text>
<text text-anchor="middle" x="642.5" y="-1608.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="-1593.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,-1627C793.44,-1627 851.65,-1627 898.35,-1627"/>
<polygon fill="#000000" stroke="#000000" points="898.43,-1630.5001 908.43,-1627 898.43,-1623.5001 898.43,-1630.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,-1237.5 2211,-1237.5 2211,-1184.5 2394,-1184.5 2394,-1237.5"/>
<text text-anchor="middle" x="2302.5" y="-1222.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="2302.5" y="-1207.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="2302.5" y="-1192.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.1,-1217.4C2467.1,-1223.8 2571.5,-1235.8 2661,-1257 2676.7,-1260.7 2693.2,-1265.5 2709.1,-1270.7"/>
<polygon fill="#000000" stroke="#000000" points="2708.3059,-1274.1257 2718.9,-1274 2710.5398,-1267.4917 2708.3059,-1274.1257"/>
</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="M2377.5,-1237.6C2399.6,-1245.4 2424.2,-1254.1 2447.8,-1262.5"/>
<polygon fill="#000000" stroke="#000000" points="2446.9057,-1265.8981 2457.5,-1266 2449.2815,-1259.3136 2446.9057,-1265.8981"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node55" class="node">
<title>zcash/orchard#36</title>
<g id="a_node55"><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,-1080 1909.5,-1080 1909.5,-1012 2103.5,-1012 2103.5,-1080"/>
<text text-anchor="middle" x="2006.5" y="-1064.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="2006.5" y="-1049.8" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="2006.5" y="-1034.8" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="2006.5" y="-1019.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="edge66" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2103.8,-1059.5C2123.8,-1065.8 2143.4,-1075.2 2159,-1089 2190,-1116.5 2164.6,-1146.8 2195,-1175 2197.4,-1177.2 2200,-1179.3 2202.6,-1181.3"/>
<polygon fill="#000000" stroke="#000000" points="2200.738,-1184.2651 2211,-1186.9 2204.6209,-1178.4408 2200.738,-1184.2651"/>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge67" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2103.8,-1022.3C2134.2,-1014.9 2167.7,-1006.8 2198.5,-999.3"/>
<polygon fill="#000000" stroke="#000000" points="2199.5116,-1002.656 2208.4,-996.89 2197.8559,-995.8547 2199.5116,-1002.656"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node57" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node57"><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,-1012 2446,-1012 2446,-944 2661,-944 2661,-1012"/>
<text text-anchor="middle" x="2553.5" y="-996.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="2553.5" y="-981.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="2553.5" y="-966.8" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="2553.5" y="-951.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="edge68" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M2396.7,-975.5C2409.3,-975.7 2422.4,-975.91 2435.3,-976.12"/>
<polygon fill="#000000" stroke="#000000" points="2435.6473,-979.6257 2445.7,-976.28 2435.7551,-972.6265 2435.6473,-979.6257"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node58" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node58"><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,-1068 2697,-1068 2697,-1030 2916,-1030 2916,-1068"/>
<text text-anchor="middle" x="2806.5" y="-1052.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="2806.5" y="-1037.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC: z_getnewaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge69" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2661.2,-1008.2C2683.9,-1014.6 2707.5,-1021.2 2728.9,-1027.2"/>
<polygon fill="#000000" stroke="#000000" points="2727.9259,-1030.5618 2738.5,-1029.9 2729.8211,-1023.8232 2727.9259,-1030.5618"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node59" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node59"><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,-1004.5 2721.5,-1004.5 2721.5,-951.5 2891.5,-951.5 2891.5,-1004.5"/>
<text text-anchor="middle" x="2806.5" y="-989.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="2806.5" y="-974.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-959.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="edge70" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M2661.2,-978C2677.8,-978 2694.8,-978 2711.1,-978"/>
<polygon fill="#000000" stroke="#000000" points="2711.1,-981.5001 2721.1,-978 2711.1,-974.5001 2711.1,-981.5001"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node60" class="node">
<title>zcash/orchard#30</title>
<g id="a_node60"><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,-1237.5 1920.5,-1237.5 1920.5,-1184.5 2092.5,-1184.5 2092.5,-1237.5"/>
<text text-anchor="middle" x="2006.5" y="-1222.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="2006.5" y="-1207.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="2006.5" y="-1192.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="edge71" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2092.5,-1211C2126.3,-1211 2165.4,-1211 2200.5,-1211"/>
<polygon fill="#000000" stroke="#000000" points="2200.8,-1214.5001 2210.8,-1211 2200.8,-1207.5001 2200.8,-1214.5001"/>
</g>
<!-- zcash/zcash#4999 -->
<g id="node61" class="node">
<title>zcash/zcash#4999</title>
<g id="a_node61"><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,-2560 12.5,-2560 12.5,-2556 8.5,-2556 8.5,-2552 12.5,-2552 12.5,-2530 8.5,-2530 8.5,-2526 12.5,-2526 12.5,-2522 205.5,-2522 205.5,-2560"/>
<polyline fill="none" stroke="#000000" points="12.5,-2556 16.5,-2556 16.5,-2552 12.5,-2552 "/>
<polyline fill="none" stroke="#000000" points="12.5,-2530 16.5,-2530 16.5,-2526 12.5,-2526 "/>
<text text-anchor="middle" x="109" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4999</text>
<text text-anchor="middle" x="109" y="-2529.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="node62" class="node">
<title>zcash/zcash#5009</title>
<g id="a_node62"><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,-2560 257.5,-2560 257.5,-2556 253.5,-2556 253.5,-2552 257.5,-2552 257.5,-2530 253.5,-2530 253.5,-2526 257.5,-2526 257.5,-2522 450.5,-2522 450.5,-2560"/>
<polyline fill="none" stroke="#000000" points="257.5,-2556 261.5,-2556 261.5,-2552 257.5,-2552 "/>
<polyline fill="none" stroke="#000000" points="257.5,-2530 261.5,-2530 261.5,-2526 257.5,-2526 "/>
<text text-anchor="middle" x="354" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5009</text>
<text text-anchor="middle" x="354" y="-2529.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="edge72" class="edge">
<title>zcash/zcash#4999&#45;&gt;zcash/zcash#5009</title>
<path fill="none" stroke="#000000" d="M205.83,-2541C219.5,-2541 233.61,-2541 247.45,-2541"/>
<polygon fill="#000000" stroke="#000000" points="247.47,-2544.5001 257.47,-2541 247.47,-2537.5001 247.47,-2544.5001"/>
</g>
<!-- zcash/zcash#5012 -->
<g id="node63" class="node">
<title>zcash/zcash#5012</title>
<g id="a_node63"><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,-2560 546,-2560 546,-2556 542,-2556 542,-2552 546,-2552 546,-2530 542,-2530 542,-2526 546,-2526 546,-2522 739,-2522 739,-2560"/>
<polyline fill="none" stroke="#000000" points="546,-2556 550,-2556 550,-2552 546,-2552 "/>
<polyline fill="none" stroke="#000000" points="546,-2530 550,-2530 550,-2526 546,-2526 "/>
<text text-anchor="middle" x="642.5" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5012</text>
<text text-anchor="middle" x="642.5" y="-2529.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="edge73" class="edge">
<title>zcash/zcash#5009&#45;&gt;zcash/zcash#5012</title>
<path fill="none" stroke="#000000" d="M450.87,-2541C478.13,-2541 507.94,-2541 535.74,-2541"/>
<polygon fill="#000000" stroke="#000000" points="535.89,-2544.5001 545.89,-2541 535.89,-2537.5001 535.89,-2544.5001"/>
</g>
<!-- zcash/zcash#5017 -->
<g id="node64" class="node">
<title>zcash/zcash#5017</title>
<g id="a_node64"><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,-2560 887,-2560 887,-2556 883,-2556 883,-2552 887,-2552 887,-2530 883,-2530 883,-2526 887,-2526 887,-2522 1080,-2522 1080,-2560"/>
<polyline fill="none" stroke="#000000" points="887,-2556 891,-2556 891,-2552 887,-2552 "/>
<polyline fill="none" stroke="#000000" points="887,-2530 891,-2530 891,-2526 887,-2526 "/>
<text text-anchor="middle" x="983.5" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5017</text>
<text text-anchor="middle" x="983.5" y="-2529.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="edge74" class="edge">
<title>zcash/zcash#5012&#45;&gt;zcash/zcash#5017</title>
<path fill="none" stroke="#000000" d="M739.3,-2541C782.14,-2541 832.66,-2541 876.61,-2541"/>
<polygon fill="#000000" stroke="#000000" points="876.75,-2544.5001 886.75,-2541 876.75,-2537.5001 876.75,-2544.5001"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node65" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node65"><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,-2560 1228,-2560 1228,-2556 1224,-2556 1224,-2552 1228,-2552 1228,-2530 1224,-2530 1224,-2526 1228,-2526 1228,-2522 1421,-2522 1421,-2560"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2556 1232,-2556 1232,-2552 1228,-2552 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="1228,-2530 1232,-2530 1232,-2526 1228,-2526 "/>
<text text-anchor="middle" x="1324.5" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="1324.5" y="-2529.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="edge75" class="edge">
<title>zcash/zcash#5017&#45;&gt;zcash/zcash#5034</title>
<path fill="none" stroke="#000000" d="M1080.3,-2541C1123.1,-2541 1173.7,-2541 1217.6,-2541"/>
<polygon fill="#000000" stroke="#000000" points="1217.7,-2544.5001 1227.7,-2541 1217.7,-2537.5001 1217.7,-2544.5001"/>
</g>
<!-- zcash/zcash#5050 -->
<g id="node66" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node66"><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,-2560 1569,-2560 1569,-2556 1565,-2556 1565,-2552 1569,-2552 1569,-2530 1565,-2530 1565,-2526 1569,-2526 1569,-2522 1762,-2522 1762,-2560"/>
<polyline fill="none" stroke="#000000" points="1569,-2556 1573,-2556 1573,-2552 1569,-2552 "/>
<polyline fill="none" stroke="#000000" points="1569,-2530 1573,-2530 1573,-2526 1569,-2526 "/>
<text text-anchor="middle" x="1665.5" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="1665.5" y="-2529.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="edge76" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M1421.3,-2541C1464.1,-2541 1514.7,-2541 1558.6,-2541"/>
<polygon fill="#000000" stroke="#000000" points="1558.7,-2544.5001 1568.7,-2541 1558.7,-2537.5001 1558.7,-2544.5001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node67" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node67"><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,-2560 1910,-2560 1910,-2556 1906,-2556 1906,-2552 1910,-2552 1910,-2530 1906,-2530 1906,-2526 1910,-2526 1910,-2522 2103,-2522 2103,-2560"/>
<polyline fill="none" stroke="#000000" points="1910,-2556 1914,-2556 1914,-2552 1910,-2552 "/>
<polyline fill="none" stroke="#000000" points="1910,-2530 1914,-2530 1914,-2526 1910,-2526 "/>
<text text-anchor="middle" x="2006.5" y="-2544.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="2006.5" y="-2529.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="edge77" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M1762.3,-2541C1805.1,-2541 1855.7,-2541 1899.6,-2541"/>
<polygon fill="#000000" stroke="#000000" points="1899.7,-2544.5001 1909.7,-2541 1899.7,-2537.5001 1899.7,-2544.5001"/>
</g>
<!-- zcash/zcash#4997 -->
<g id="node68" class="node">
<title>zcash/zcash#4997</title>
<g id="a_node68"><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,-2725 0,-2725 0,-2721 -4,-2721 -4,-2717 0,-2717 0,-2665 -4,-2665 -4,-2661 0,-2661 0,-2657 218,-2657 218,-2725"/>
<polyline fill="none" stroke="#000000" points="0,-2721 4,-2721 4,-2717 0,-2717 "/>
<polyline fill="none" stroke="#000000" points="0,-2665 4,-2665 4,-2661 0,-2661 "/>
<text text-anchor="middle" x="109" y="-2709.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4997</text>
<text text-anchor="middle" x="109" y="-2694.8" font-family="Times,serif" font-size="14.00" fill="#000000">Replace setInventoryKnown</text>
<text text-anchor="middle" x="109" y="-2679.8" font-family="Times,serif" font-size="14.00" fill="#000000">with a rolling bloom</text>
<text text-anchor="middle" x="109" y="-2664.8" font-family="Times,serif" font-size="14.00" fill="#000000">filter</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534 -->
<g id="node69" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node69"><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,-2717.5 254,-2717.5 254,-2713.5 250,-2713.5 250,-2709.5 254,-2709.5 254,-2672.5 250,-2672.5 250,-2668.5 254,-2668.5 254,-2664.5 454,-2664.5 454,-2717.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2713.5 258,-2713.5 258,-2709.5 254,-2709.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="254,-2672.5 258,-2672.5 258,-2668.5 254,-2668.5 "/>
<text text-anchor="middle" x="354" y="-2702.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="354" y="-2687.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="-2672.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="edge78" class="edge">
<title>zcash/zcash#4997&#45;&gt;zcash/zcash#2534</title>
<path fill="none" stroke="#000000" d="M218.24,-2691C226.68,-2691 235.2,-2691 243.65,-2691"/>
<polygon fill="#000000" stroke="#000000" points="243.9,-2694.5001 253.9,-2691 243.9,-2687.5001 243.9,-2694.5001"/>
</g>
<!-- zcash/zcash#5003 -->
<g id="node70" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node70"><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,-2772.5 536.5,-2772.5 536.5,-2768.5 532.5,-2768.5 532.5,-2764.5 536.5,-2764.5 536.5,-2727.5 532.5,-2727.5 532.5,-2723.5 536.5,-2723.5 536.5,-2719.5 748.5,-2719.5 748.5,-2772.5"/>
<polyline fill="none" stroke="#000000" points="536.5,-2768.5 540.5,-2768.5 540.5,-2764.5 536.5,-2764.5 "/>
<polyline fill="none" stroke="#000000" points="536.5,-2727.5 540.5,-2727.5 540.5,-2723.5 536.5,-2723.5 "/>
<text text-anchor="middle" x="642.5" y="-2757.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="642.5" y="-2742.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="642.5" y="-2727.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="edge79" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M454.09,-2710.1C477.41,-2714.5 502.43,-2719.3 526.37,-2723.9"/>
<polygon fill="#000000" stroke="#000000" points="525.7331,-2727.3415 536.2,-2725.7 526.994,-2720.456 525.7331,-2727.3415"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node71" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node71"><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,-2669 888,-2669 888,-2665 884,-2665 884,-2661 888,-2661 888,-2609 884,-2609 884,-2605 888,-2605 888,-2601 1079,-2601 1079,-2669"/>
<polyline fill="none" stroke="#000000" points="888,-2665 892,-2665 892,-2661 888,-2661 "/>
<polyline fill="none" stroke="#000000" points="888,-2609 892,-2609 892,-2605 888,-2605 "/>
<text text-anchor="middle" x="983.5" y="-2653.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="983.5" y="-2638.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="983.5" y="-2623.8" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="983.5" y="-2608.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="edge80" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M440.07,-2664.4C456.5,-2660.3 473.67,-2656.5 490,-2654 622.53,-2633.7 777.3,-2631.1 877.68,-2632.2"/>
<polygon fill="#000000" stroke="#000000" points="877.7859,-2635.7011 887.82,-2632.3 877.855,-2628.7015 877.7859,-2635.7011"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node72" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node72"><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,-2770.5 896.5,-2770.5 896.5,-2766.5 892.5,-2766.5 892.5,-2762.5 896.5,-2762.5 896.5,-2695.5 892.5,-2695.5 892.5,-2691.5 896.5,-2691.5 896.5,-2687.5 1070.5,-2687.5 1070.5,-2770.5"/>
<polyline fill="none" stroke="#000000" points="896.5,-2766.5 900.5,-2766.5 900.5,-2762.5 896.5,-2762.5 "/>
<polyline fill="none" stroke="#000000" points="896.5,-2695.5 900.5,-2695.5 900.5,-2691.5 896.5,-2691.5 "/>
<text text-anchor="middle" x="983.5" y="-2755.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="983.5" y="-2740.3" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="983.5" y="-2725.3" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="983.5" y="-2710.3" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="983.5" y="-2695.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="edge81" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M748.53,-2740.7C792.51,-2738.5 843.2,-2736 886.22,-2733.8"/>
<polygon fill="#000000" stroke="#000000" points="886.5936,-2737.286 896.41,-2733.3 886.2505,-2730.2944 886.5936,-2737.286"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node73" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node73"><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,-2678 1215.5,-2678 1215.5,-2674 1211.5,-2674 1211.5,-2670 1215.5,-2670 1215.5,-2648 1211.5,-2648 1211.5,-2644 1215.5,-2644 1215.5,-2640 1433.5,-2640 1433.5,-2678"/>
<polyline fill="none" stroke="#000000" points="1215.5,-2674 1219.5,-2674 1219.5,-2670 1215.5,-2670 "/>
<polyline fill="none" stroke="#000000" points="1215.5,-2648 1219.5,-2648 1219.5,-2644 1215.5,-2644 "/>
<text text-anchor="middle" x="1324.5" y="-2662.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1324.5" y="-2647.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="edge82" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1079.4,-2641.7C1118.4,-2644.5 1164,-2647.7 1205.1,-2650.6"/>
<polygon fill="#000000" stroke="#000000" points="1204.9819,-2654.1001 1215.2,-2651.3 1205.466,-2647.1169 1204.9819,-2654.1001"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge83" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M1070.9,-2711.1C1116.9,-2701.6 1173.7,-2690 1221.9,-2680.1"/>
<polygon fill="#000000" stroke="#000000" points="1222.6018,-2683.529 1231.7,-2678.1 1221.2021,-2676.6704 1222.6018,-2683.529"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node74" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node74"><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,-2693 1571,-2693 1571,-2689 1567,-2689 1567,-2685 1571,-2685 1571,-2633 1567,-2633 1567,-2629 1571,-2629 1571,-2625 1760,-2625 1760,-2693"/>
<polyline fill="none" stroke="#000000" points="1571,-2689 1575,-2689 1575,-2685 1571,-2685 "/>
<polyline fill="none" stroke="#000000" points="1571,-2633 1575,-2633 1575,-2629 1571,-2629 "/>
<text text-anchor="middle" x="1665.5" y="-2677.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1665.5" y="-2662.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1665.5" y="-2647.8" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1665.5" y="-2632.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="edge84" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1433.8,-2659C1474.5,-2659 1520.5,-2659 1560.8,-2659"/>
<polygon fill="#000000" stroke="#000000" points="1560.9,-2662.5001 1570.9,-2659 1560.9,-2655.5001 1560.9,-2662.5001"/>
</g>
<!-- zcash/zcash#4996 -->
<g id="node75" class="node">
<title>zcash/zcash#4996</title>
<g id="a_node75"><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,-2701 552.5,-2701 552.5,-2697 548.5,-2697 548.5,-2693 552.5,-2693 552.5,-2671 548.5,-2671 548.5,-2667 552.5,-2667 552.5,-2663 732.5,-2663 732.5,-2701"/>
<polyline fill="none" stroke="#000000" points="552.5,-2697 556.5,-2697 556.5,-2693 552.5,-2693 "/>
<polyline fill="none" stroke="#000000" points="552.5,-2671 556.5,-2671 556.5,-2667 552.5,-2667 "/>
<text text-anchor="middle" x="642.5" y="-2685.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4996</text>
<text text-anchor="middle" x="642.5" y="-2670.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="edge85" class="edge">
<title>zcash/zcash#4996&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M732.54,-2694.4C779.88,-2700.9 837.97,-2708.9 886.33,-2715.6"/>
<polygon fill="#000000" stroke="#000000" points="886.1058,-2719.1021 896.49,-2717 887.0614,-2712.1676 886.1058,-2719.1021"/>
</g>
<!-- zcash/zcash#4988 -->
<g id="node76" class="node">
<title>zcash/zcash#4988</title>
<g id="a_node76"><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="edge86" 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="node77" class="node">
<title>zcash/zcash#3722</title>
<g id="a_node77"><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,-2165.5 2209.5,-2165.5 2209.5,-2082.5 2395.5,-2082.5 2395.5,-2165.5"/>
<text text-anchor="middle" x="2302.5" y="-2150.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#3722</text>
<text text-anchor="middle" x="2302.5" y="-2135.3" font-family="Times,serif" font-size="14.00" fill="#000000">Decouple consensus</text>
<text text-anchor="middle" x="2302.5" y="-2120.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes from Network</text>
<text text-anchor="middle" x="2302.5" y="-2105.3" font-family="Times,serif" font-size="14.00" fill="#000000">Upgrades in the zcashd</text>
<text text-anchor="middle" x="2302.5" y="-2090.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="edge87" class="edge">
<title>zcash/zcash#3722&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M2395.6,-2111C2417.9,-2107.9 2441.6,-2104.6 2463.7,-2101.5"/>
<polygon fill="#000000" stroke="#000000" points="2464.2819,-2104.9528 2473.7,-2100.1 2463.3113,-2098.0204 2464.2819,-2104.9528"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node78" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node78"><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,-2424.5 2208.5,-2424.5 2208.5,-2371.5 2396.5,-2371.5 2396.5,-2424.5"/>
<text text-anchor="middle" x="2302.5" y="-2409.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="2302.5" y="-2394.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="2302.5" y="-2379.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="edge88" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M2396.7,-2376.6C2411.9,-2373.2 2427.7,-2369.6 2443.2,-2366"/>
<polygon fill="#000000" stroke="#000000" points="2444.3268,-2369.3331 2453.3,-2363.7 2442.7725,-2362.5078 2444.3268,-2369.3331"/>
</g>
<!-- zcash/zcash#5056 -->
<g id="node79" class="node">
<title>zcash/zcash#5056</title>
<g id="a_node79"><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,-1166 1914,-1166 1914,-1098 2099,-1098 2099,-1166"/>
<text text-anchor="middle" x="2006.5" y="-1150.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5056</text>
<text text-anchor="middle" x="2006.5" y="-1135.8" font-family="Times,serif" font-size="14.00" fill="#000000">Identify necessary RPC</text>
<text text-anchor="middle" x="2006.5" y="-1120.8" font-family="Times,serif" font-size="14.00" fill="#000000">changes to support</text>
<text text-anchor="middle" x="2006.5" y="-1105.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="edge90" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M2099.3,-1156.8C2131.5,-1165.4 2167.8,-1175 2200.7,-1183.8"/>
<polygon fill="#000000" stroke="#000000" points="2200.1334,-1187.2723 2210.7,-1186.5 2201.9581,-1180.5143 2200.1334,-1187.2723"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node80" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node80"><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,-1079.5 2211.5,-1079.5 2211.5,-1026.5 2393.5,-1026.5 2393.5,-1079.5"/>
<text text-anchor="middle" x="2302.5" y="-1064.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="2302.5" y="-1049.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="2302.5" y="-1034.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="edge91" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5177</title>
<path fill="none" stroke="#000000" d="M2099.3,-1107.2C2131.8,-1098.6 2168.4,-1088.8 2201.6,-1079.9"/>
<polygon fill="#000000" stroke="#000000" points="2202.49,-1083.2851 2211.3,-1077.4 2200.7429,-1076.5066 2202.49,-1083.2851"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node81" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node81"><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="446.5,-2851.5 261.5,-2851.5 261.5,-2798.5 446.5,-2798.5 446.5,-2851.5"/>
<text text-anchor="middle" x="354" y="-2836.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="354" y="-2821.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="354" y="-2806.3" font-family="Times,serif" font-size="14.00" fill="#000000">phrase support</text>
</a>
</g>
</g>
<!-- zcash/zcash#2673 -->
<g id="node82" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node82"><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="743.5,-2859 541.5,-2859 541.5,-2791 743.5,-2791 743.5,-2859"/>
<text text-anchor="middle" x="642.5" y="-2843.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="642.5" y="-2828.8" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="642.5" y="-2813.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="642.5" y="-2798.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="edge92" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M446.87,-2825C473.72,-2825 503.3,-2825 531.15,-2825"/>
<polygon fill="#000000" stroke="#000000" points="531.32,-2828.5001 541.32,-2825 531.32,-2821.5001 531.32,-2828.5001"/>
</g>
<!-- zcash/zips#364 -->
<g id="node83" class="node">
<title>zcash/zips#364</title>
<g id="a_node83"><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="211.5,-2851.5 6.5,-2851.5 6.5,-2798.5 211.5,-2798.5 211.5,-2851.5"/>
<text text-anchor="middle" x="109" y="-2836.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="109" y="-2821.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="109" y="-2806.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="edge93" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M211.84,-2825C224.75,-2825 237.97,-2825 250.89,-2825"/>
<polygon fill="#000000" stroke="#000000" points="251.18,-2828.5001 261.18,-2825 251.18,-2821.5001 251.18,-2828.5001"/>
</g>
<!-- zcash/zips#511 -->
<g id="node84" class="node">
<title>zcash/zips#511</title>
<g id="a_node84"><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,-1166 2195,-1166 2195,-1098 2410,-1098 2410,-1166"/>
<text text-anchor="middle" x="2302.5" y="-1150.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="2302.5" y="-1135.8" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="2302.5" y="-1120.8" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="2302.5" y="-1105.8" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179 -->
<g id="node85" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node85"><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,-1151 2452.5,-1151 2452.5,-1083 2654.5,-1083 2654.5,-1151"/>
<text text-anchor="middle" x="2553.5" y="-1135.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="2553.5" y="-1120.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="2553.5" y="-1105.8" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="2553.5" y="-1090.8" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/zcash#5179 -->
<g id="edge94" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M2410,-1125.6C2420.6,-1124.9 2431.4,-1124.3 2442,-1123.7"/>
<polygon fill="#000000" stroke="#000000" points="2442.3252,-1127.1869 2452.1,-1123.1 2441.91,-1120.1993 2442.3252,-1127.1869"/>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5178 -->
<g id="edge95" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M2654.6,-1089.8C2678.2,-1083.5 2703.1,-1076.8 2725.7,-1070.7"/>
<polygon fill="#000000" stroke="#000000" points="2726.7319,-1074.0474 2735.5,-1068.1 2724.9368,-1067.2815 2726.7319,-1074.0474"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node86" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node86"><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,-1143.5 2712.5,-1143.5 2712.5,-1090.5 2900.5,-1090.5 2900.5,-1143.5"/>
<text text-anchor="middle" x="2806.5" y="-1128.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="2806.5" y="-1113.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="2806.5" y="-1098.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="edge96" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M2654.6,-1117C2670.2,-1117 2686.3,-1117 2701.9,-1117"/>
<polygon fill="#000000" stroke="#000000" points="2702.1,-1120.5001 2712.1,-1117 2702.1,-1113.5001 2702.1,-1120.5001"/>
</g>
<!-- zcash/zips#475 -->
<g id="node87" class="node">
<title>zcash/zips#475</title>
<g id="a_node87"><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,-2452.5 1915.5,-2452.5 1915.5,-2399.5 2097.5,-2399.5 2097.5,-2452.5"/>
<text text-anchor="middle" x="2006.5" y="-2437.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#475</text>
<text text-anchor="middle" x="2006.5" y="-2422.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 221: Add Orchard</text>
<text text-anchor="middle" x="2006.5" y="-2407.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="edge97" class="edge">
<title>zcash/zips#475&#45;&gt;zcash/librustzcash#368</title>
<path fill="none" stroke="#000000" d="M2097.7,-2417.4C2129.5,-2414.4 2165.4,-2411 2198.2,-2407.9"/>
<polygon fill="#000000" stroke="#000000" points="2198.6935,-2411.3683 2208.3,-2406.9 2198.0038,-2404.4024 2198.6935,-2411.3683"/>
</g>
<!-- zcash/zips#482 -->
<g id="node88" class="node">
<title>zcash/zips#482</title>
<g id="a_node88"><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,-937.5 1936,-937.5 1936,-884.5 2077,-884.5 2077,-937.5"/>
<text text-anchor="middle" x="2006.5" y="-922.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#482</text>
<text text-anchor="middle" x="2006.5" y="-907.3" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 316] Unified</text>
<text text-anchor="middle" x="2006.5" y="-892.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="edge98" class="edge">
<title>zcash/zips#482&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2077,-926.01C2113.4,-933.74 2158.4,-943.32 2198.6,-951.88"/>
<polygon fill="#000000" stroke="#000000" points="2197.8886,-955.3069 2208.4,-953.98 2199.3554,-948.4623 2197.8886,-955.3069"/>
</g>
<!-- zcash/librustzcash#300 -->
<g id="node89" class="node">
<title>zcash/librustzcash#300</title>
<g id="a_node89"><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="edge99" 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="node90" class="node">
<title>zcash/halo2#63</title>
<g id="a_node90"><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,-2381.5 1898.5,-2381.5 1898.5,-2328.5 2114.5,-2328.5 2114.5,-2381.5"/>
<text text-anchor="middle" x="2006.5" y="-2366.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="2006.5" y="-2351.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="-2336.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="edge100" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M2114.5,-2346.5C2131.3,-2340.8 2147,-2332 2159,-2319 2233.7,-2237.6 2136.6,-2166.8 2195,-2073 2205.4,-2056.2 2221.3,-2042.3 2237.6,-2031.2"/>
<polygon fill="#000000" stroke="#000000" points="2239.6749,-2034.0243 2246.1,-2025.6 2235.8238,-2028.1789 2239.6749,-2034.0243"/>
</g>
<!-- zcash/librustzcash#349 -->
<g id="node91" class="node">
<title>zcash/librustzcash#349</title>
<g id="a_node91"><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,-1335.5 1571.5,-1335.5 1571.5,-1282.5 1759.5,-1282.5 1759.5,-1335.5"/>
<text text-anchor="middle" x="1665.5" y="-1320.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#349</text>
<text text-anchor="middle" x="1665.5" y="-1305.3" font-family="Times,serif" font-size="14.00" fill="#000000">Generalise note</text>
<text text-anchor="middle" x="1665.5" y="-1290.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="edge101" class="edge">
<title>zcash/librustzcash#349&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M1759.6,-1327.6C1779.2,-1332.5 1799.5,-1338.3 1818,-1345 1864.6,-1361.9 1914.7,-1387.2 1951.5,-1407.3"/>
<polygon fill="#000000" stroke="#000000" points="1950.1504,-1410.5519 1960.6,-1412.3 1953.5212,-1404.417 1950.1504,-1410.5519"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#25 -->
<g id="node92" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#25</title>
<g id="a_node92"><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,-994 1513,-994 1513,-956 1818,-956 1818,-994"/>
<text text-anchor="middle" x="1665.5" y="-978.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="-963.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="edge102" 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="M1802.2,-955.92C1807.8,-953.02 1813,-949.73 1818,-946 1846.3,-924.74 1826.1,-896.79 1854,-875 1855.2,-874.06 1856.4,-873.14 1857.7,-872.25"/>
<polygon fill="#000000" stroke="#000000" points="1859.686,-875.1328 1866.1,-866.7 1855.8272,-869.2924 1859.686,-875.1328"/>
</g>
<!-- zcash/librustzcash#378 -->
<g id="node93" class="node">
<title>zcash/librustzcash#378</title>
<g id="a_node93"><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,-994 1912.5,-994 1912.5,-956 2100.5,-956 2100.5,-994"/>
<text text-anchor="middle" x="2006.5" y="-978.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#378</text>
<text text-anchor="middle" x="2006.5" y="-963.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="edge103" 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,-975C1846.5,-975 1875.6,-975 1902.2,-975"/>
<polygon fill="#000000" stroke="#000000" points="1902.3,-978.5001 1912.3,-975 1902.3,-971.5001 1902.3,-978.5001"/>
</g>
<!-- zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371 -->
<g id="edge104" class="edge">
<title>zcash/librustzcash#378&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M2100.6,-974.68C2131.6,-974.58 2166.4,-974.46 2198.2,-974.35"/>
<polygon fill="#000000" stroke="#000000" points="2198.4104,-977.8495 2208.4,-974.32 2198.3897,-970.8495 2198.4104,-977.8495"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#14 -->
<g id="node94" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#14</title>
<g id="a_node94"><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,-1140 490,-1140 490,-1136 486,-1136 486,-1132 490,-1132 490,-1110 486,-1110 486,-1106 490,-1106 490,-1102 795,-1102 795,-1140"/>
<polyline fill="none" stroke="#000000" points="490,-1136 494,-1136 494,-1132 490,-1132 "/>
<polyline fill="none" stroke="#000000" points="490,-1110 494,-1110 494,-1106 490,-1106 "/>
<text text-anchor="middle" x="642.5" y="-1124.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="-1109.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="node95" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#17</title>
<g id="a_node95"><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,-1147.5 831,-1147.5 831,-1143.5 827,-1143.5 827,-1139.5 831,-1139.5 831,-1102.5 827,-1102.5 827,-1098.5 831,-1098.5 831,-1094.5 1136,-1094.5 1136,-1147.5"/>
<polyline fill="none" stroke="#000000" points="831,-1143.5 835,-1143.5 835,-1139.5 831,-1139.5 "/>
<polyline fill="none" stroke="#000000" points="831,-1102.5 835,-1102.5 835,-1098.5 831,-1098.5 "/>
<text text-anchor="middle" x="983.5" y="-1132.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="-1117.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="-1102.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="edge105" 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,-1121C803.59,-1121 812.19,-1121 820.76,-1121"/>
<polygon fill="#000000" stroke="#000000" points="820.81,-1124.5001 830.81,-1121 820.81,-1117.5001 820.81,-1124.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18 -->
<g id="node96" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#18</title>
<g id="a_node96"><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,-859 1172,-859 1172,-855 1168,-855 1168,-851 1172,-851 1172,-829 1168,-829 1168,-825 1172,-825 1172,-821 1477,-821 1477,-859"/>
<polyline fill="none" stroke="#000000" points="1172,-855 1176,-855 1176,-851 1172,-851 "/>
<polyline fill="none" stroke="#000000" points="1172,-829 1176,-829 1176,-825 1172,-825 "/>
<text text-anchor="middle" x="1324.5" y="-843.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="-828.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="edge106" 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="M1119.1,-1094.4C1125,-1091.6 1130.6,-1088.5 1136,-1085 1222.2,-1029.3 1284.8,-920.18 1310.9,-868.46"/>
<polygon fill="#000000" stroke="#000000" points="1314.1811,-869.7224 1315.5,-859.21 1307.9133,-866.6055 1314.1811,-869.7224"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node97" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node97"><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,-795.5 1172,-795.5 1172,-742.5 1477,-742.5 1477,-795.5"/>
<text text-anchor="middle" x="1324.5" y="-780.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="-765.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="1324.5" y="-750.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="edge107" 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="M1126,-1094.4C1129.5,-1091.6 1132.9,-1088.4 1136,-1085 1218.1,-994.22 1091.9,-904.53 1172,-812 1175.3,-808.23 1178.8,-804.79 1182.6,-801.63"/>
<polygon fill="#000000" stroke="#000000" points="1184.8518,-804.3175 1190.8,-795.55 1180.6826,-798.6946 1184.8518,-804.3175"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#18&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="edge108" 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,-840C1485.6,-840 1494.2,-840 1502.8,-840"/>
<polygon fill="#000000" stroke="#000000" points="1502.8,-843.5001 1512.8,-840 1502.8,-836.5001 1502.8,-843.5001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#21 -->
<g id="node98" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#21</title>
<g id="a_node98"><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,-795 1513,-795 1513,-791 1509,-791 1509,-787 1513,-787 1513,-765 1509,-765 1509,-761 1513,-761 1513,-757 1818,-757 1818,-795"/>
<polyline fill="none" stroke="#000000" points="1513,-791 1517,-791 1517,-787 1513,-787 "/>
<polyline fill="none" stroke="#000000" points="1513,-765 1517,-765 1517,-761 1513,-761 "/>
<text text-anchor="middle" x="1665.5" y="-779.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="-764.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="edge109" 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,-821C1452.2,-815.47 1483.9,-809.46 1513,-804 1525.4,-801.67 1538.5,-799.25 1551.4,-796.86"/>
<polygon fill="#000000" stroke="#000000" points="1552.1028,-800.2895 1561.3,-795.03 1550.8304,-793.4061 1552.1028,-800.2895"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node99" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node99"><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,-738.5 1513,-738.5 1513,-685.5 1818,-685.5 1818,-738.5"/>
<text text-anchor="middle" x="1665.5" y="-723.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="-708.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="1665.5" y="-693.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="edge110" 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,-743.5C1485.6,-742.07 1494.2,-740.64 1502.8,-739.2"/>
<polygon fill="#000000" stroke="#000000" points="1503.5181,-742.6285 1512.8,-737.52 1502.3583,-735.7252 1503.5181,-742.6285"/>
</g>
<!-- zcash/halo2#39 -->
<g id="node100" class="node">
<title>zcash/halo2#39</title>
<g id="a_node100"><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,-2456.5 1247,-2456.5 1247,-2373.5 1402,-2373.5 1402,-2456.5"/>
<text text-anchor="middle" x="1324.5" y="-2441.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#39</text>
<text text-anchor="middle" x="1324.5" y="-2426.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for</text>
<text text-anchor="middle" x="1324.5" y="-2411.3" font-family="Times,serif" font-size="14.00" fill="#000000">coefficient blinding</text>
<text text-anchor="middle" x="1324.5" y="-2396.3" font-family="Times,serif" font-size="14.00" fill="#000000">factors in</text>
<text text-anchor="middle" x="1324.5" y="-2381.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="edge111" class="edge">
<title>zcash/halo2#39&#45;&gt;zcash/halo2#63</title>
<path fill="none" stroke="#000000" d="M1402.3,-2442.2C1504.1,-2472.8 1685.1,-2509.9 1818,-2441 1842.6,-2428.2 1831,-2405.5 1854,-2390 1864.6,-2382.9 1876.5,-2377.2 1888.7,-2372.7"/>
<polygon fill="#000000" stroke="#000000" points="1889.9022,-2375.9876 1898.2,-2369.4 1887.6052,-2369.3752 1889.9022,-2375.9876"/>
</g>
<!-- zcash/halo2#65 -->
<g id="node101" class="node">
<title>zcash/halo2#65</title>
<g id="a_node101"><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,-1345 874.5,-1345 874.5,-1307 1092.5,-1307 1092.5,-1345"/>
<text text-anchor="middle" x="983.5" y="-1329.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#65</text>
<text text-anchor="middle" x="983.5" y="-1314.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="node102" class="node">
<title>zcash/halo2#64</title>
<g id="a_node102"><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,-1493.5 1239.5,-1493.5 1239.5,-1440.5 1409.5,-1440.5 1409.5,-1493.5"/>
<text text-anchor="middle" x="1324.5" y="-1478.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="1324.5" y="-1463.3" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="1324.5" y="-1448.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="edge112" class="edge">
<title>zcash/halo2#65&#45;&gt;zcash/halo2#64</title>
<path fill="none" stroke="#000000" d="M1029.5,-1345C1086.4,-1368.5 1183.8,-1408.8 1251.1,-1436.6"/>
<polygon fill="#000000" stroke="#000000" points="1249.8245,-1439.8604 1260.4,-1440.5 1252.5316,-1433.405 1249.8245,-1439.8604"/>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#73 -->
<g id="edge113" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M1334.7,-1493.9C1357.5,-1550.5 1418.3,-1682 1513,-1750 1529.6,-1761.9 1549.3,-1770.3 1569.1,-1776.3"/>
<polygon fill="#000000" stroke="#000000" points="1568.2216,-1779.6893 1578.8,-1779.1 1570.163,-1772.9639 1568.2216,-1779.6893"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node103" class="node">
<title>zcash/halo2#235</title>
<g id="a_node103"><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,-1493.5 1577.5,-1493.5 1577.5,-1440.5 1753.5,-1440.5 1753.5,-1493.5"/>
<text text-anchor="middle" x="1665.5" y="-1478.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="1665.5" y="-1463.3" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="1665.5" y="-1448.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="edge114" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M1409.7,-1467C1457.5,-1467 1517.3,-1467 1567.1,-1467"/>
<polygon fill="#000000" stroke="#000000" points="1567.3,-1470.5001 1577.3,-1467 1567.3,-1463.5001 1567.3,-1470.5001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge115" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1753.6,-1471.2C1777.2,-1476.4 1800.8,-1485.9 1818,-1503 1866.3,-1551 1812.7,-1597.9 1854,-1652 1871.2,-1674.6 1896.4,-1691.9 1921.3,-1704.8"/>
<polygon fill="#000000" stroke="#000000" points="1919.8846,-1708.0046 1930.4,-1709.3 1922.9876,-1701.7299 1919.8846,-1708.0046"/>
</g>
<!-- zcash/halo2#44 -->
<g id="node104" class="node">
<title>zcash/halo2#44</title>
<g id="a_node104"><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,-1073 532,-1073 532,-1035 753,-1035 753,-1073"/>
<text text-anchor="middle" x="642.5" y="-1057.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#44</text>
<text text-anchor="middle" x="642.5" y="-1042.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="edge116" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#65</title>
<path fill="none" stroke="#000000" d="M753.22,-1070.9C768.18,-1076.4 782.61,-1083.6 795,-1093 820.65,-1112.5 812.13,-1129.9 831,-1156 870.31,-1210.5 924.38,-1267.3 956.46,-1299.5"/>
<polygon fill="#000000" stroke="#000000" points="954.1935,-1302.1841 963.73,-1306.8 959.1535,-1297.2446 954.1935,-1302.1841"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node105" class="node">
<title>zcash/halo2#57</title>
<g id="a_node105"><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,-1076 912,-1076 912,-1008 1055,-1008 1055,-1076"/>
<text text-anchor="middle" x="983.5" y="-1060.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="983.5" y="-1045.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="983.5" y="-1030.8" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="983.5" y="-1015.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="edge117" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#57</title>
<path fill="none" stroke="#000000" d="M753.21,-1050.1C801.57,-1048.4 857.26,-1046.4 901.77,-1044.9"/>
<polygon fill="#000000" stroke="#000000" points="902.105,-1048.3896 911.96,-1044.5 901.8304,-1041.395 902.105,-1048.3896"/>
</g>
<!-- zcash/halo2#82 -->
<g id="node106" class="node">
<title>zcash/halo2#82</title>
<g id="a_node106"><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,-989.5 887,-989.5 887,-906.5 1080,-906.5 1080,-989.5"/>
<text text-anchor="middle" x="983.5" y="-974.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="983.5" y="-959.3" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="983.5" y="-944.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="-929.3" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="983.5" y="-914.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="edge118" class="edge">
<title>zcash/halo2#44&#45;&gt;zcash/halo2#82</title>
<path fill="none" stroke="#000000" d="M703.86,-1034.9C751.98,-1020 820.12,-998.79 877.09,-981.08"/>
<polygon fill="#000000" stroke="#000000" points="878.3514,-984.3531 886.86,-978.04 876.2717,-977.6692 878.3514,-984.3531"/>
</g>
<!-- zcash/halo2#62 -->
<g id="node107" class="node">
<title>zcash/halo2#62</title>
<g id="a_node107"><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,-2215 894,-2215 894,-2147 1073,-2147 1073,-2215"/>
<text text-anchor="middle" x="983.5" y="-2199.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#62</text>
<text text-anchor="middle" x="983.5" y="-2184.8" font-family="Times,serif" font-size="14.00" fill="#000000">Modularise prover and</text>
<text text-anchor="middle" x="983.5" y="-2169.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier by introducing</text>
<text text-anchor="middle" x="983.5" y="-2154.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="edge119" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#66</title>
<path fill="none" stroke="#000000" d="M1073.1,-2169.7C1116.8,-2164.2 1169.9,-2157.5 1215.9,-2151.7"/>
<polygon fill="#000000" stroke="#000000" points="1216.4347,-2155.16 1225.9,-2150.4 1215.5322,-2148.2184 1216.4347,-2155.16"/>
</g>
<!-- zcash/halo2#62&#45;&gt;zcash/halo2#39 -->
<g id="edge120" class="edge">
<title>zcash/halo2#62&#45;&gt;zcash/halo2#39</title>
<path fill="none" stroke="#000000" d="M1033.1,-2215C1091.7,-2255.3 1189.7,-2322.5 1255.6,-2367.7"/>
<polygon fill="#000000" stroke="#000000" points="1253.6753,-2370.6241 1263.9,-2373.4 1257.6381,-2364.8537 1253.6753,-2370.6241"/>
</g>
<!-- zcash/halo2#61 -->
<g id="node108" class="node">
<title>zcash/halo2#61</title>
<g id="a_node108"><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,-2059 33.5,-2059 33.5,-2055 29.5,-2055 29.5,-2051 33.5,-2051 33.5,-2029 29.5,-2029 29.5,-2025 33.5,-2025 33.5,-2021 184.5,-2021 184.5,-2059"/>
<polyline fill="none" stroke="#000000" points="33.5,-2055 37.5,-2055 37.5,-2051 33.5,-2051 "/>
<polyline fill="none" stroke="#000000" points="33.5,-2029 37.5,-2029 37.5,-2025 33.5,-2025 "/>
<text text-anchor="middle" x="109" y="-2043.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#61</text>
<text text-anchor="middle" x="109" y="-2028.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to ff traits</text>
</a>
</g>
</g>
<!-- zcash/halo2#68 -->
<g id="node109" class="node">
<title>zcash/halo2#68</title>
<g id="a_node109"><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,-2066.5 272,-2066.5 272,-2013.5 436,-2013.5 436,-2066.5"/>
<text text-anchor="middle" x="354" y="-2051.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#68</text>
<text text-anchor="middle" x="354" y="-2036.3" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate to the Pasta</text>
<text text-anchor="middle" x="354" y="-2021.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="edge121" class="edge">
<title>zcash/halo2#61&#45;&gt;zcash/halo2#68</title>
<path fill="none" stroke="#000000" d="M184.51,-2040C208.96,-2040 236.36,-2040 261.88,-2040"/>
<polygon fill="#000000" stroke="#000000" points="261.93,-2043.5001 271.93,-2040 261.93,-2036.5001 261.93,-2043.5001"/>
</g>
<!-- zcash/halo2#68&#45;&gt;zcash/halo2#72 -->
<g id="edge122" class="edge">
<title>zcash/halo2#68&#45;&gt;zcash/halo2#72</title>
<path fill="none" stroke="#000000" d="M436.29,-2053.4C469.03,-2058.7 507.03,-2064.9 541.42,-2070.5"/>
<polygon fill="#000000" stroke="#000000" points="541.0572,-2073.9882 551.5,-2072.2 542.2213,-2067.0856 541.0572,-2073.9882"/>
</g>
<!-- zcash/halo2#70 -->
<g id="node110" class="node">
<title>zcash/halo2#70</title>
<g id="a_node110"><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,-1538 258.5,-1538 258.5,-1534 254.5,-1534 254.5,-1530 258.5,-1530 258.5,-1478 254.5,-1478 254.5,-1474 258.5,-1474 258.5,-1470 449.5,-1470 449.5,-1538"/>
<polyline fill="none" stroke="#000000" points="258.5,-1534 262.5,-1534 262.5,-1530 258.5,-1530 "/>
<polyline fill="none" stroke="#000000" points="258.5,-1478 262.5,-1478 262.5,-1474 258.5,-1474 "/>
<text text-anchor="middle" x="354" y="-1522.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#70</text>
<text text-anchor="middle" x="354" y="-1507.8" font-family="Times,serif" font-size="14.00" fill="#000000">Extract permutation</text>
<text text-anchor="middle" x="354" y="-1492.8" font-family="Times,serif" font-size="14.00" fill="#000000">argument and introduce</text>
<text text-anchor="middle" x="354" y="-1477.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="edge123" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#44</title>
<path fill="none" stroke="#000000" d="M360.92,-1469.8C379.57,-1380.9 433.26,-1145.9 490,-1093 499.47,-1084.2 510.67,-1077.3 522.62,-1071.9"/>
<polygon fill="#000000" stroke="#000000" points="523.9721,-1075.1285 531.9,-1068.1 521.3195,-1068.6505 523.9721,-1075.1285"/>
</g>
<!-- zcash/halo2#70&#45;&gt;zcash/halo2#62 -->
<g id="edge124" class="edge">
<title>zcash/halo2#70&#45;&gt;zcash/halo2#62</title>
<path fill="none" stroke="#000000" d="M380.31,-1538C407.51,-1573.1 451.33,-1629.2 490,-1677 623.33,-1841.9 687.53,-1861.2 795,-2044 817.46,-2082.2 798.3,-2107.1 831,-2137 845.87,-2150.6 864.69,-2160 883.99,-2166.6"/>
<polygon fill="#000000" stroke="#000000" points="883.2136,-2170.0225 893.8,-2169.6 885.2607,-2163.3285 883.2136,-2170.0225"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node111" class="node">
<title>zcash/halo2#78</title>
<g id="a_node111"><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,-625 1222.5,-625 1222.5,-557 1426.5,-557 1426.5,-625"/>
<text text-anchor="middle" x="1324.5" y="-609.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="1324.5" y="-594.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="1324.5" y="-579.8" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="1324.5" y="-564.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="edge125" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1426.7,-581.46C1454.6,-579.09 1485,-576.73 1513,-575 1649.3,-566.6 1807,-561.29 1906.8,-558.49"/>
<polygon fill="#000000" stroke="#000000" points="1906.9019,-561.9886 1916.8,-558.21 1906.7059,-554.9914 1906.9019,-561.9886"/>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#79 -->
<g id="edge126" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1426.8,-601.5C1473.9,-606.33 1529.2,-612.01 1574.8,-616.69"/>
<polygon fill="#000000" stroke="#000000" points="1574.5941,-620.1872 1584.9,-617.73 1575.3111,-613.224 1574.5941,-620.1872"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node112" class="node">
<title>zcash/halo2#250</title>
<g id="a_node112"><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,-416.5 1568.5,-416.5 1568.5,-363.5 1762.5,-363.5 1762.5,-416.5"/>
<text text-anchor="middle" x="1665.5" y="-401.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="1665.5" y="-386.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="1665.5" y="-371.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="edge127" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.9,-567.82C1444.1,-562.15 1461.4,-555.26 1477,-547 1538.5,-514.39 1598.3,-459.46 1633.5,-423.98"/>
<polygon fill="#000000" stroke="#000000" points="1636.1104,-426.3166 1640.6,-416.72 1631.1058,-421.4223 1636.1104,-426.3166"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge128" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M1720.3,-416.67C1780.9,-446.2 1878.6,-493.73 1942.6,-524.92"/>
<polygon fill="#000000" stroke="#000000" points="1941.277,-528.1686 1951.8,-529.4 1944.3416,-521.8751 1941.277,-528.1686"/>
</g>
<!-- zcash/halo2#77 -->
<g id="node113" class="node">
<title>zcash/halo2#77</title>
<g id="a_node113"><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,-681 1222,-681 1222,-643 1427,-643 1427,-681"/>
<text text-anchor="middle" x="1324.5" y="-665.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#77</text>
<text text-anchor="middle" x="1324.5" y="-650.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="edge129" class="edge">
<title>zcash/halo2#77&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M1427.3,-651.15C1474.2,-646.19 1529.3,-640.37 1574.7,-635.58"/>
<polygon fill="#000000" stroke="#000000" points="1575.3198,-639.0343 1584.9,-634.51 1574.5894,-632.0725 1575.3198,-639.0343"/>
</g>
<!-- zcash/halo2#248 -->
<g id="node114" class="node">
<title>zcash/halo2#248</title>
<g id="a_node114"><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,-538.5 1223,-538.5 1223,-485.5 1426,-485.5 1426,-538.5"/>
<text text-anchor="middle" x="1324.5" y="-523.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="1324.5" y="-508.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="1324.5" y="-493.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="edge130" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1426.2,-490.93C1443.3,-486.55 1460.8,-481.55 1477,-476 1521.2,-460.85 1569.1,-438.92 1605.6,-420.99"/>
<polygon fill="#000000" stroke="#000000" points="1607.2007,-424.103 1614.6,-416.52 1604.0869,-417.8336 1607.2007,-424.103"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node115" class="node">
<title>zcash/halo2#249</title>
<g id="a_node115"><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,-381 1232,-381 1232,-313 1417,-313 1417,-381"/>
<text text-anchor="middle" x="1324.5" y="-365.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="1324.5" y="-350.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="1324.5" y="-335.8" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="1324.5" y="-320.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="edge131" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1417.2,-358.69C1460.8,-364.18 1512.9,-370.76 1558.2,-376.47"/>
<polygon fill="#000000" stroke="#000000" points="1557.9393,-379.9649 1568.3,-377.75 1558.8194,-373.0204 1557.9393,-379.9649"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node116" class="node">
<title>zcash/halo2#246</title>
<g id="a_node116"><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,-459.5 894,-459.5 894,-406.5 1073,-406.5 1073,-459.5"/>
<text text-anchor="middle" x="983.5" y="-444.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="983.5" y="-429.3" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="983.5" y="-414.3" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node117" class="node">
<title>zcash/halo2#247</title>
<g id="a_node117"><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,-467 1236.5,-467 1236.5,-399 1412.5,-399 1412.5,-467"/>
<text text-anchor="middle" x="1324.5" y="-451.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="1324.5" y="-436.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="1324.5" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="1324.5" y="-406.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="edge132" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M1073.1,-433C1120.2,-433 1177.9,-433 1226.2,-433"/>
<polygon fill="#000000" stroke="#000000" points="1226.4,-436.5001 1236.4,-433 1226.4,-429.5001 1226.4,-436.5001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge133" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1412.8,-421.87C1457.2,-416.27 1511.3,-409.44 1558.1,-403.54"/>
<polygon fill="#000000" stroke="#000000" points="1558.8136,-406.978 1568.3,-402.26 1557.942,-400.0325 1558.8136,-406.978"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node118" class="node">
<title>zcash/halo2#245</title>
<g id="a_node118"><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,-295 1221.5,-295 1221.5,-227 1427.5,-227 1427.5,-295"/>
<text text-anchor="middle" x="1324.5" y="-279.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="1324.5" y="-264.8" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="1324.5" y="-249.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="-234.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="edge134" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1427.7,-287.78C1444.3,-292.76 1461.2,-298.22 1477,-304 1520.3,-319.87 1567.5,-341.4 1603.8,-358.95"/>
<polygon fill="#000000" stroke="#000000" points="1602.2745,-362.1 1612.8,-363.31 1605.3264,-355.8003 1602.2745,-362.1"/>
</g>
<!-- zcash/halo2#151 -->
<g id="node119" class="node">
<title>zcash/halo2#151</title>
<g id="a_node119"><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,-208.5 1241,-208.5 1241,-155.5 1408,-155.5 1408,-208.5"/>
<text text-anchor="middle" x="1324.5" y="-193.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#151</text>
<text text-anchor="middle" x="1324.5" y="-178.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="-163.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="edge135" class="edge">
<title>zcash/halo2#151&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1408.4,-193.81C1431.5,-199.17 1456,-206.89 1477,-218 1542.8,-252.76 1603.5,-316 1637.4,-355.35"/>
<polygon fill="#000000" stroke="#000000" points="1635.0633,-358.0061 1644.2,-363.37 1640.4025,-353.4791 1635.0633,-358.0061"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node120" class="node">
<title>zcash/halo2#210</title>
<g id="a_node120"><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,-137 1215.5,-137 1215.5,-69 1433.5,-69 1433.5,-137"/>
<text text-anchor="middle" x="1324.5" y="-121.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="1324.5" y="-106.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="1324.5" y="-91.8" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="1324.5" y="-76.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="edge136" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M1433.7,-124.5C1449,-130.1 1463.9,-137.15 1477,-146 1557.8,-200.54 1619,-300.92 1647.6,-354.35"/>
<polygon fill="#000000" stroke="#000000" points="1644.6387,-356.238 1652.4,-363.45 1650.8302,-352.9721 1644.6387,-356.238"/>
</g>
<!-- zcash/orchard#29 -->
<g id="node121" class="node">
<title>zcash/orchard#29</title>
<g id="a_node121"><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,-1065.5 1571,-1065.5 1571,-1012.5 1760,-1012.5 1760,-1065.5"/>
<text text-anchor="middle" x="1665.5" y="-1050.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#29</text>
<text text-anchor="middle" x="1665.5" y="-1035.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="1665.5" y="-1020.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="edge137" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1760.3,-1044.4C1781.7,-1049.8 1802.6,-1059.2 1818,-1075 1872.2,-1130.6 1796.9,-1193.3 1854,-1246 1904.2,-1292.3 2095.2,-1260.6 2159,-1285 2198.6,-1300.2 2237.9,-1328.4 2265.3,-1350.8"/>
<polygon fill="#000000" stroke="#000000" points="2263.1009,-1353.5239 2273,-1357.3 2267.6163,-1348.175 2263.1009,-1353.5239"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#36 -->
<g id="edge138" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#36</title>
<path fill="none" stroke="#000000" d="M1760,-1040.9C1803.3,-1041.8 1854.7,-1042.9 1899.4,-1043.8"/>
<polygon fill="#000000" stroke="#000000" points="1899.332,-1047.2992 1909.4,-1044 1899.472,-1040.3006 1899.332,-1047.2992"/>
</g>
<!-- zcash/orchard#29&#45;&gt;zcash/orchard#30 -->
<g id="edge139" class="edge">
<title>zcash/orchard#29&#45;&gt;zcash/orchard#30</title>
<path fill="none" stroke="#000000" d="M1760,-1046.2C1781,-1051.7 1801.9,-1060.6 1818,-1075 1853.2,-1106.4 1818.8,-1143.6 1854,-1175 1869.8,-1189.1 1890,-1197.9 1910.6,-1203.4"/>
<polygon fill="#000000" stroke="#000000" points="1909.7521,-1206.7957 1920.3,-1205.8 1911.4334,-1200.0006 1909.7521,-1206.7957"/>
</g>
<!-- zcash/orchard#27 -->
<g id="node122" class="node">
<title>zcash/orchard#27</title>
<g id="a_node122"><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,-1422 1561.5,-1422 1561.5,-1418 1557.5,-1418 1557.5,-1414 1561.5,-1414 1561.5,-1362 1557.5,-1362 1557.5,-1358 1561.5,-1358 1561.5,-1354 1769.5,-1354 1769.5,-1422"/>
<polyline fill="none" stroke="#000000" points="1561.5,-1418 1565.5,-1418 1565.5,-1414 1561.5,-1414 "/>
<polyline fill="none" stroke="#000000" points="1561.5,-1362 1565.5,-1362 1565.5,-1358 1561.5,-1358 "/>
<text text-anchor="middle" x="1665.5" y="-1406.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#27</text>
<text text-anchor="middle" x="1665.5" y="-1391.8" font-family="Times,serif" font-size="14.00" fill="#000000">Make Bundle a parametric</text>
<text text-anchor="middle" x="1665.5" y="-1376.8" font-family="Times,serif" font-size="14.00" fill="#000000">type over an</text>
<text text-anchor="middle" x="1665.5" y="-1361.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="edge140" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M1769.6,-1387.3C1891.8,-1386.6 2092.6,-1385.3 2209.7,-1384.6"/>
<polygon fill="#000000" stroke="#000000" points="2209.7355,-1388.0999 2219.7,-1384.5 2209.6655,-1381.1003 2209.7355,-1388.0999"/>
</g>
<!-- zcash/orchard#27&#45;&gt;zcash/orchard#34 -->
<g id="edge141" class="edge">
<title>zcash/orchard#27&#45;&gt;zcash/orchard#34</title>
<path fill="none" stroke="#000000" d="M1769.6,-1408.3C1786.6,-1414.1 1803.3,-1421.5 1818,-1431 1838.9,-1444.5 1836.6,-1456.1 1854,-1474 1886.5,-1507.4 1925.9,-1542.2 1956.5,-1568.1"/>
<polygon fill="#000000" stroke="#000000" points="1954.5862,-1571.0626 1964.5,-1574.8 1959.0807,-1565.696 1954.5862,-1571.0626"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node123" class="node">
<title>zcash/orchard#38</title>
<g id="a_node123"><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,-1621.5 1570,-1621.5 1570,-1568.5 1761,-1568.5 1761,-1621.5"/>
<text text-anchor="middle" x="1665.5" y="-1606.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="1665.5" y="-1591.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="1665.5" y="-1576.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="edge142" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M1761.2,-1613C1780.3,-1617.9 1800.1,-1623.8 1818,-1631 1835.2,-1637.9 1837.9,-1642.9 1854,-1652 1885.1,-1669.6 1920,-1688.9 1948.5,-1704.5"/>
<polygon fill="#000000" stroke="#000000" points="1947.1359,-1707.7406 1957.6,-1709.4 1950.4546,-1701.5773 1947.1359,-1707.7406"/>
</g>
<!-- zcash/orchard#55 -->
<g id="node124" class="node">
<title>zcash/orchard#55</title>
<g id="a_node124"><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,-2432 1562.5,-2432 1562.5,-2364 1768.5,-2364 1768.5,-2432"/>
<text text-anchor="middle" x="1665.5" y="-2416.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#55</text>
<text text-anchor="middle" x="1665.5" y="-2401.8" font-family="Times,serif" font-size="14.00" fill="#000000">Handle the (negligible</text>
<text text-anchor="middle" x="1665.5" y="-2386.8" font-family="Times,serif" font-size="14.00" fill="#000000">probability of) failure</text>
<text text-anchor="middle" x="1665.5" y="-2371.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="edge143" class="edge">
<title>zcash/orchard#55&#45;&gt;zcash/orchard#33</title>
<path fill="none" stroke="#000000" d="M1768.8,-2375.7C1785.9,-2369.9 1802.9,-2362.8 1818,-2354 1837.3,-2342.8 1834.4,-2329.7 1854,-2319 1863.3,-2313.9 1873.3,-2309.6 1883.6,-2305.9"/>
<polygon fill="#000000" stroke="#000000" points="1884.8809,-2309.1608 1893.2,-2302.6 1882.6053,-2302.541 1884.8809,-2309.1608"/>
</g>
<!-- zcash/orchard#70 -->
<g id="node125" class="node">
<title>zcash/orchard#70</title>
<g id="a_node125"><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,-1178 1591.5,-1178 1591.5,-1174 1587.5,-1174 1587.5,-1170 1591.5,-1170 1591.5,-1148 1587.5,-1148 1587.5,-1144 1591.5,-1144 1591.5,-1140 1739.5,-1140 1739.5,-1178"/>
<polyline fill="none" stroke="#000000" points="1591.5,-1174 1595.5,-1174 1595.5,-1170 1591.5,-1170 "/>
<polyline fill="none" stroke="#000000" points="1591.5,-1148 1595.5,-1148 1595.5,-1144 1591.5,-1144 "/>
<text text-anchor="middle" x="1665.5" y="-1162.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#70</text>
<text text-anchor="middle" x="1665.5" y="-1147.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bundle APIs</text>
</a>
</g>
</g>
<!-- zcash/orchard#49 -->
<g id="node126" class="node">
<title>zcash/orchard#49</title>
<g id="a_node126"><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,-1332 1932.5,-1332 1932.5,-1328 1928.5,-1328 1928.5,-1324 1932.5,-1324 1932.5,-1302 1928.5,-1302 1928.5,-1298 1932.5,-1298 1932.5,-1294 2080.5,-1294 2080.5,-1332"/>
<polyline fill="none" stroke="#000000" points="1932.5,-1328 1936.5,-1328 1936.5,-1324 1932.5,-1324 "/>
<polyline fill="none" stroke="#000000" points="1932.5,-1302 1936.5,-1302 1936.5,-1298 1932.5,-1298 "/>
<text text-anchor="middle" x="2006.5" y="-1316.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#49</text>
<text text-anchor="middle" x="2006.5" y="-1301.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="edge144" class="edge">
<title>zcash/orchard#70&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1739.7,-1158C1766.9,-1161.1 1796.3,-1169.1 1818,-1187 1852.1,-1215.3 1820.3,-1251.2 1854,-1280 1873,-1296.2 1898.1,-1305.1 1922.5,-1309.7"/>
<polygon fill="#000000" stroke="#000000" points="1922.0548,-1313.1745 1932.5,-1311.4 1923.2281,-1306.2735 1922.0548,-1313.1745"/>
</g>
<!-- zcash/orchard#49&#45;&gt;zcash/orchard#35 -->
<g id="edge145" class="edge">
<title>zcash/orchard#49&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M2080.8,-1330.8C2120,-1340.2 2168.4,-1351.8 2209.9,-1361.8"/>
<polygon fill="#000000" stroke="#000000" points="2209.2569,-1365.2454 2219.8,-1364.2 2210.9061,-1358.4424 2209.2569,-1365.2454"/>
</g>
<!-- zcash/orchard#58 -->
<g id="node127" class="node">
<title>zcash/orchard#58</title>
<g id="a_node127"><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,-1264 1579,-1264 1579,-1260 1575,-1260 1575,-1256 1579,-1256 1579,-1204 1575,-1204 1575,-1200 1579,-1200 1579,-1196 1752,-1196 1752,-1264"/>
<polyline fill="none" stroke="#000000" points="1579,-1260 1583,-1260 1583,-1256 1579,-1256 "/>
<polyline fill="none" stroke="#000000" points="1579,-1204 1583,-1204 1583,-1200 1579,-1200 "/>
<text text-anchor="middle" x="1665.5" y="-1248.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#58</text>
<text text-anchor="middle" x="1665.5" y="-1233.8" font-family="Times,serif" font-size="14.00" fill="#000000">Proving and verifying</text>
<text text-anchor="middle" x="1665.5" y="-1218.8" font-family="Times,serif" font-size="14.00" fill="#000000">keys, and placeholder</text>
<text text-anchor="middle" x="1665.5" y="-1203.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="edge146" class="edge">
<title>zcash/orchard#58&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1752.1,-1253.9C1784,-1262.4 1820.6,-1272 1854,-1280 1876.1,-1285.3 1900.2,-1290.7 1922.5,-1295.5"/>
<polygon fill="#000000" stroke="#000000" points="1921.7762,-1298.9245 1932.3,-1297.7 1923.3095,-1292.0945 1921.7762,-1298.9245"/>
</g>
<!-- zcash/orchard#60 -->
<g id="node128" class="node">
<title>zcash/orchard#60</title>
<g id="a_node128"><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,-1336 1229.5,-1336 1229.5,-1332 1225.5,-1332 1225.5,-1328 1229.5,-1328 1229.5,-1306 1225.5,-1306 1225.5,-1302 1229.5,-1302 1229.5,-1298 1419.5,-1298 1419.5,-1336"/>
<polyline fill="none" stroke="#000000" points="1229.5,-1332 1233.5,-1332 1233.5,-1328 1229.5,-1328 "/>
<polyline fill="none" stroke="#000000" points="1229.5,-1306 1233.5,-1306 1233.5,-1302 1229.5,-1302 "/>
<text text-anchor="middle" x="1324.5" y="-1320.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#60</text>
<text text-anchor="middle" x="1324.5" y="-1305.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="edge147" class="edge">
<title>zcash/orchard#60&#45;&gt;zcash/orchard#58</title>
<path fill="none" stroke="#000000" d="M1419.6,-1302.1C1438.8,-1298.2 1458.7,-1293.5 1477,-1288 1493.6,-1283 1496.6,-1278.7 1513,-1273 1530.9,-1266.8 1550.3,-1260.8 1568.9,-1255.3"/>
<polygon fill="#000000" stroke="#000000" points="1569.963,-1258.6361 1578.6,-1252.5 1568.0216,-1251.9107 1569.963,-1258.6361"/>
</g>
<!-- zcash/orchard#72 -->
<g id="node129" class="node">
<title>zcash/orchard#72</title>
<g id="a_node129"><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,-1122 1583,-1122 1583,-1118 1579,-1118 1579,-1114 1583,-1114 1583,-1092 1579,-1092 1579,-1088 1583,-1088 1583,-1084 1748,-1084 1748,-1122"/>
<polyline fill="none" stroke="#000000" points="1583,-1118 1587,-1118 1587,-1114 1583,-1114 "/>
<polyline fill="none" stroke="#000000" points="1583,-1092 1587,-1092 1587,-1088 1583,-1088 "/>
<text text-anchor="middle" x="1665.5" y="-1106.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#72</text>
<text text-anchor="middle" x="1665.5" y="-1091.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="edge148" class="edge">
<title>zcash/orchard#72&#45;&gt;zcash/orchard#49</title>
<path fill="none" stroke="#000000" d="M1748.1,-1101.4C1773.4,-1105 1799.3,-1113.3 1818,-1131 1867.5,-1177.8 1805.3,-1232.4 1854,-1280 1872.1,-1297.7 1897.4,-1306.9 1922.2,-1311.4"/>
<polygon fill="#000000" stroke="#000000" points="1921.8755,-1314.8922 1932.3,-1313 1922.9708,-1307.9784 1921.8755,-1314.8922"/>
</g>
</g>
</svg>