developers/zcash-core-dag.svg

1324 lines
93 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="1660pt" height="2307pt"
viewBox="0.00 0.00 1660.00 2307.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 2303)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2303 1656,-2303 1656,4 -4,4"/>
<!-- zcash/librustzcash#226 -->
<g id="node1" class="node">
<title>zcash/librustzcash#226</title>
<g id="a_node1"><a xlink:href="https://github.com/zcash/librustzcash/issues/226" xlink:title="zcash/librustzcash#226&#10;Bring in Bolt TZE" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="246.5,-45.5 58.5,-45.5 58.5,-7.5 246.5,-7.5 246.5,-45.5"/>
<text text-anchor="middle" x="152.5" y="-30.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#226</text>
<text text-anchor="middle" x="152.5" y="-15.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bring in Bolt TZE</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#225 -->
<g id="node2" class="node">
<title>zcash/librustzcash#225</title>
<g id="a_node2"><a xlink:href="https://github.com/zcash/librustzcash/issues/225" xlink:title="zcash/librustzcash#225&#10;Add Bolt TZE support to&#10;the transaction builder" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="589.5,-53 397.5,-53 397.5,0 589.5,0 589.5,-53"/>
<text text-anchor="middle" x="493.5" y="-37.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#225</text>
<text text-anchor="middle" x="493.5" y="-22.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Bolt TZE support to</text>
<text text-anchor="middle" x="493.5" y="-7.8" font-family="Times,serif" font-size="14.00" fill="#000000">the transaction builder</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225 -->
<g id="edge1" class="edge">
<title>zcash/librustzcash#226&#45;&gt;zcash/librustzcash#225</title>
<path fill="none" stroke="#000000" d="M246.58,-26.5C290.2,-26.5 342.24,-26.5 387.26,-26.5"/>
<polygon fill="#000000" stroke="#000000" points="387.35,-30.0001 397.35,-26.5 387.35,-23.0001 387.35,-30.0001"/>
</g>
<!-- zcash/zcash#4190 -->
<g id="node3" class="node">
<title>zcash/zcash#4190</title>
<g id="a_node3"><a xlink:href="https://github.com/zcash/zcash/issues/4190" xlink:title="zcash/zcash#4190&#10;TZE: implement zcashd&#10;&#39;host&#39; logic." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="245.5,-132 59.5,-132 59.5,-79 245.5,-79 245.5,-132"/>
<text text-anchor="middle" x="152.5" y="-116.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-101.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-86.8" font-family="Times,serif" font-size="14.00" fill="#000000">&#39;host&#39; logic.</text>
</a>
</g>
</g>
<!-- zcash/halo2#73 -->
<g id="node4" class="node">
<title>zcash/halo2#73</title>
<g id="a_node4"><a xlink:href="https://github.com/zcash/halo2/issues/73" xlink:title="zcash/halo2#73&#10;Implement Sinsemilla&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="580,-721 407,-721 407,-668 580,-668 580,-721"/>
<text text-anchor="middle" x="493.5" y="-705.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="493.5" y="-690.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="493.5" y="-675.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#4 -->
<g id="node5" class="node">
<title>zcash/orchard#4</title>
<g id="a_node5"><a xlink:href="https://github.com/zcash/orchard/issues/4" xlink:title="zcash/orchard#4&#10;Implement the Action&#10;circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="876.5,-737 703.5,-737 703.5,-684 876.5,-684 876.5,-737"/>
<text text-anchor="middle" x="790" y="-721.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="790" y="-706.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="790" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#73&#45;&gt;zcash/orchard#4 -->
<g id="edge2" class="edge">
<title>zcash/halo2#73&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M580.06,-699.17C615.52,-701.08 656.72,-703.31 693.19,-705.28"/>
<polygon fill="#000000" stroke="#000000" points="693.1681,-708.7837 703.34,-705.82 693.5401,-701.7936 693.1681,-708.7837"/>
</g>
<!-- zcash/librustzcash#320 -->
<g id="node6" class="node">
<title>zcash/librustzcash#320</title>
<g id="a_node6"><a xlink:href="https://github.com/zcash/librustzcash/issues/320" xlink:title="zcash/librustzcash#320&#10;Implement Orchard as a&#10;future NU feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1139,-737 947,-737 947,-684 1139,-684 1139,-737"/>
<text text-anchor="middle" x="1043" y="-721.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="1043" y="-706.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard as a</text>
<text text-anchor="middle" x="1043" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">future NU feature</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge3" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M876.71,-710.5C896.05,-710.5 916.76,-710.5 936.78,-710.5"/>
<polygon fill="#000000" stroke="#000000" points="936.86,-714.0001 946.86,-710.5 936.86,-707.0001 936.86,-714.0001"/>
</g>
<!-- zcash/orchard#35 -->
<g id="node7" class="node">
<title>zcash/orchard#35</title>
<g id="a_node7"><a xlink:href="https://github.com/zcash/orchard/issues/35" xlink:title="zcash/orchard#35&#10;Transaction building&#10;support" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="1125.5,-911 960.5,-911 960.5,-858 1125.5,-858 1125.5,-911"/>
<text text-anchor="middle" x="1043" y="-895.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="1043" y="-880.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="1043" y="-865.8" font-family="Times,serif" font-size="14.00" fill="#000000">support</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/orchard#35 -->
<g id="edge4" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M834.65,-737.09C854.31,-749.08 877.54,-763.64 898,-777.5 933.24,-801.38 971.98,-830.1 1000.6,-851.77"/>
<polygon fill="#000000" stroke="#000000" points="998.6318,-854.6711 1008.7,-857.97 1002.8865,-849.1125 998.6318,-854.6711"/>
</g>
<!-- zcash/zcash#5021 -->
<g id="node8" class="node">
<title>zcash/zcash#5021</title>
<g id="a_node8"><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="1391.5,-1118 1203.5,-1118 1203.5,-1065 1391.5,-1065 1391.5,-1118"/>
<text text-anchor="middle" x="1297.5" y="-1102.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1297.5" y="-1087.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1297.5" y="-1072.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction builder</text>
</a>
</g>
</g>
<!-- zcash/orchard#35&#45;&gt;zcash/zcash#5021 -->
<g id="edge5" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M1075.8,-911.14C1122,-948.79 1206.6,-1017.5 1256.8,-1058.4"/>
<polygon fill="#000000" stroke="#000000" points="1254.9368,-1061.3966 1264.9,-1065 1259.3585,-1055.9699 1254.9368,-1061.3966"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node12" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/zcash/issues/5023" xlink:title="zcash/zcash#5023&#10;Implement support for&#10;Orchard shielded coinbase&#10;output" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1652,-1292.5 1443,-1292.5 1443,-1224.5 1652,-1224.5 1652,-1292.5"/>
<text text-anchor="middle" x="1547.5" y="-1277.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1547.5" y="-1262.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1547.5" y="-1247.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1547.5" y="-1232.3" font-family="Times,serif" font-size="14.00" fill="#000000">output</text>
</a>
</g>
</g>
<!-- zcash/zcash#5021&#45;&gt;zcash/zcash#5023 -->
<g id="edge9" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1337.4,-1118.1C1378,-1145.3 1441.5,-1187.7 1488,-1218.8"/>
<polygon fill="#000000" stroke="#000000" points="1486.2238,-1221.8211 1496.5,-1224.4 1490.0749,-1215.9757 1486.2238,-1221.8211"/>
</g>
<!-- zcash/zcash#4714 -->
<g id="node9" class="node">
<title>zcash/zcash#4714</title>
<g id="a_node9"><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="#a6cfff" stroke="#000000" points="582,-863 405,-863 405,-810 582,-810 582,-863"/>
<text text-anchor="middle" x="493.5" y="-847.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="493.5" y="-832.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="493.5" y="-817.8" font-family="Times,serif" font-size="14.00" fill="#000000">Halo 2 proofs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707 -->
<g id="node10" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node10"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="874.5,-840 705.5,-840 705.5,-787 874.5,-787 874.5,-840"/>
<text text-anchor="middle" x="790" y="-824.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="790" y="-809.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="790" y="-794.8" font-family="Times,serif" font-size="14.00" fill="#000000">specification</text>
</a>
</g>
</g>
<!-- zcash/zcash#4714&#45;&gt;zcash/zcash#4707 -->
<g id="edge6" class="edge">
<title>zcash/zcash#4714&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M582.06,-829.63C617.78,-826.86 659.05,-823.66 695.36,-820.84"/>
<polygon fill="#000000" stroke="#000000" points="695.7592,-824.3197 705.46,-820.06 695.2202,-817.3405 695.7592,-824.3197"/>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge7" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M855.15,-786.97C889.69,-772.91 932.29,-755.57 968.18,-740.96"/>
<polygon fill="#000000" stroke="#000000" points="969.6896,-744.1244 977.63,-737.11 967.0485,-737.6417 969.6896,-744.1244"/>
</g>
<!-- zcash/zcash#5024 -->
<g id="node11" class="node">
<title>zcash/zcash#5024</title>
<g id="a_node11"><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="1122.5,-1063 963.5,-1063 963.5,-1010 1122.5,-1010 1122.5,-1063"/>
<text text-anchor="middle" x="1043" y="-1047.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1043" y="-1032.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1043" y="-1017.8" 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="edge8" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M874.61,-833.49C883.04,-837.6 891.03,-842.54 898,-848.5 924.89,-871.49 913.74,-890.49 934,-919.5 955.14,-949.76 983.72,-980.15 1006.3,-1002.4"/>
<polygon fill="#000000" stroke="#000000" points="1004.092,-1005.135 1013.7,-1009.6 1008.9735,-1000.1179 1004.092,-1005.135"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node13" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node13"><a xlink:href="https://github.com/zcash/zcash/issues/4819" xlink:title="zcash/zcash#4819&#10;Backport upstream PRs&#10;that remove Boost usage" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="250,-1862 55,-1862 55,-1809 250,-1809 250,-1862"/>
<text text-anchor="middle" x="152.5" y="-1846.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-1831.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-1816.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/halo2#144 -->
<g id="node14" class="node">
<title>zcash/halo2#144</title>
<g id="a_node14"><a xlink:href="https://github.com/zcash/halo2/issues/144" xlink:title="zcash/halo2#144&#10;book: Specify proof&#10;encoding" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="230,-863 75,-863 75,-810 230,-810 230,-863"/>
<text text-anchor="middle" x="152.5" y="-847.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="152.5" y="-832.8" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="152.5" y="-817.8" font-family="Times,serif" font-size="14.00" fill="#000000">encoding</text>
</a>
</g>
</g>
<!-- zcash/halo2#144&#45;&gt;zcash/zcash#4714 -->
<g id="edge10" class="edge">
<title>zcash/halo2#144&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M230.3,-836.5C279.05,-836.5 342.31,-836.5 394.6,-836.5"/>
<polygon fill="#000000" stroke="#000000" points="394.9,-840.0001 404.9,-836.5 394.9,-833.0001 394.9,-840.0001"/>
</g>
<!-- zcash/orchard#33 -->
<g id="node15" class="node">
<title>zcash/orchard#33</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/orchard/issues/33" xlink:title="zcash/orchard#33&#10;Implement note commitment&#10;tree logic for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="606.5,-1327 380.5,-1327 380.5,-1274 606.5,-1274 606.5,-1327"/>
<text text-anchor="middle" x="493.5" y="-1311.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="493.5" y="-1296.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="493.5" y="-1281.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node16" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node16"><a xlink:href="https://github.com/zcash/zcash/issues/5018" xlink:title="zcash/zcash#5018&#10;Add Orchard note&#10;commitment tree and&#10;nullifier set to&#10;CCoinsView" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="876,-1342 704,-1342 704,-1259 876,-1259 876,-1342"/>
<text text-anchor="middle" x="790" y="-1326.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="790" y="-1311.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="790" y="-1296.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="790" y="-1281.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="790" y="-1266.8" font-family="Times,serif" font-size="14.00" fill="#000000">CCoinsView</text>
</a>
</g>
</g>
<!-- zcash/orchard#33&#45;&gt;zcash/zcash#5018 -->
<g id="edge11" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M606.86,-1300.5C635.55,-1300.5 666.08,-1300.5 693.82,-1300.5"/>
<polygon fill="#000000" stroke="#000000" points="693.91,-1304.0001 703.91,-1300.5 693.91,-1297.0001 693.91,-1304.0001"/>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5024 -->
<g id="edge12" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M876.08,-1265.2C883.85,-1260.5 891.3,-1255.2 898,-1249.5 957.34,-1198.8 1003.1,-1118.3 1026.3,-1072.1"/>
<polygon fill="#000000" stroke="#000000" points="1029.4583,-1073.6095 1030.8,-1063.1 1023.1973,-1070.479 1029.4583,-1073.6095"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node17" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node17"><a xlink:href="https://github.com/zcash/zcash/issues/5037" xlink:title="zcash/zcash#5037&#10;Add Orchard metadata to&#10;history trees" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1143,-1290 943,-1290 943,-1237 1143,-1237 1143,-1290"/>
<text text-anchor="middle" x="1043" y="-1274.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="1043" y="-1259.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="1043" y="-1244.8" font-family="Times,serif" font-size="14.00" fill="#000000">history trees</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5037 -->
<g id="edge13" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M876.01,-1287.9C894.31,-1285.2 913.87,-1282.4 932.92,-1279.6"/>
<polygon fill="#000000" stroke="#000000" points="933.4665,-1283.0572 942.83,-1278.1 932.4188,-1276.1361 933.4665,-1283.0572"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node18" class="node">
<title>zcash/orchard#32</title>
<g id="a_node18"><a xlink:href="https://github.com/zcash/orchard/issues/32" xlink:title="zcash/orchard#32&#10;Implement note encryption&#10;for Orchard" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="896,-911 684,-911 684,-858 896,-858 896,-911"/>
<text text-anchor="middle" x="790" y="-895.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="790" y="-880.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="790" y="-865.8" font-family="Times,serif" font-size="14.00" fill="#000000">for Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/orchard#35 -->
<g id="edge14" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M896.2,-884.5C914.06,-884.5 932.47,-884.5 949.97,-884.5"/>
<polygon fill="#000000" stroke="#000000" points="950.15,-888.0001 960.15,-884.5 950.15,-881.0001 950.15,-888.0001"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node19" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/zcash/issues/5020" xlink:title="zcash/zcash#5020&#10;Add Orchard note&#10;detection and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1139,-1376.5 947,-1376.5 947,-1308.5 1139,-1308.5 1139,-1376.5"/>
<text text-anchor="middle" x="1043" y="-1361.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1043" y="-1346.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1043" y="-1331.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1043" y="-1316.3" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/orchard#32&#45;&gt;zcash/zcash#5020 -->
<g id="edge15" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M889.84,-911.05C892.79,-913.62 895.53,-916.43 898,-919.5 950.94,-985.49 883.41,-1230.7 934,-1298.5 935.6,-1300.6 937.33,-1302.7 939.15,-1304.6"/>
<polygon fill="#000000" stroke="#000000" points="936.9872,-1307.3676 946.7,-1311.6 941.7465,-1302.2344 936.9872,-1307.3676"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node20" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node20"><a xlink:href="https://github.com/zcash/zcash/issues/5019" xlink:title="zcash/zcash#5019&#10;Add Orchard keys and&#10;addresses to the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="881.5,-1484 698.5,-1484 698.5,-1431 881.5,-1431 881.5,-1484"/>
<text text-anchor="middle" x="790" y="-1468.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="790" y="-1453.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="790" y="-1438.8" font-family="Times,serif" font-size="14.00" fill="#000000">addresses to the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5023 -->
<g id="edge17" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M881.78,-1442.2C955.35,-1429.3 1061,-1409.1 1152,-1385.5 1251.8,-1359.6 1363.4,-1323.1 1442.6,-1295.8"/>
<polygon fill="#000000" stroke="#000000" points="1443.8022,-1299.0876 1452.1,-1292.5 1441.5052,-1292.4752 1443.8022,-1299.0876"/>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5020 -->
<g id="edge16" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M881.34,-1431C887.1,-1428.4 892.7,-1425.5 898,-1422.5 916.58,-1411.9 915.99,-1402.1 934,-1390.5 938.9,-1387.4 944.05,-1384.3 949.33,-1381.4"/>
<polygon fill="#000000" stroke="#000000" points="951.1344,-1384.4041 958.3,-1376.6 947.8316,-1378.2322 951.1344,-1384.4041"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node21" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node21"><a xlink:href="https://github.com/zcash/zcash/issues/5179" xlink:title="zcash/zcash#5179&#10;Add Unified Address key&#10;generation and storage to&#10;the wallet" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1144,-1599.5 942,-1599.5 942,-1531.5 1144,-1531.5 1144,-1599.5"/>
<text text-anchor="middle" x="1043" y="-1584.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1043" y="-1569.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1043" y="-1554.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1043" y="-1539.3" font-family="Times,serif" font-size="14.00" fill="#000000">the wallet</text>
</a>
</g>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5179 -->
<g id="edge18" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M873.57,-1484.1C881.88,-1487.1 890.14,-1490.3 898,-1493.5 921.97,-1503.4 947.49,-1515.5 970.34,-1526.9"/>
<polygon fill="#000000" stroke="#000000" points="968.796,-1530.0416 979.29,-1531.5 971.9959,-1523.8158 968.796,-1530.0416"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node22" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node22"><a xlink:href="https://github.com/zcash/zcash/issues/5178" xlink:title="zcash/zcash#5178&#10;New RPC: z_getnewaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1407,-1613.5 1188,-1613.5 1188,-1575.5 1407,-1575.5 1407,-1613.5"/>
<text text-anchor="middle" x="1297.5" y="-1598.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1297.5" y="-1583.3" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC: z_getnewaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5178 -->
<g id="edge19" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1144.3,-1577C1155.2,-1578.3 1166.4,-1579.6 1177.6,-1580.8"/>
<polygon fill="#000000" stroke="#000000" points="1177.4595,-1584.3075 1187.8,-1582 1178.2775,-1577.3555 1177.4595,-1584.3075"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node23" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node23"><a xlink:href="https://github.com/zcash/zcash/issues/5182" xlink:title="zcash/zcash#5182&#10;New RPC:&#10;z_getbalanceforaddress" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1391,-1771 1204,-1771 1204,-1718 1391,-1718 1391,-1771"/>
<text text-anchor="middle" x="1297.5" y="-1755.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1297.5" y="-1740.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1725.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaddress</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5182 -->
<g id="edge20" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1069.5,-1599.5C1096.3,-1631.7 1140.3,-1679.4 1188,-1708.5 1190.8,-1710.2 1193.7,-1711.9 1196.7,-1713.4"/>
<polygon fill="#000000" stroke="#000000" points="1195.2964,-1716.6122 1205.8,-1718 1198.4544,-1710.365 1195.2964,-1716.6122"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node24" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node24"><a xlink:href="https://github.com/zcash/zcash/issues/5185" xlink:title="zcash/zcash#5185&#10;Add support for funding&#10;z_sendmany from a UA&#10;account" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1392,-1699.5 1203,-1699.5 1203,-1631.5 1392,-1631.5 1392,-1699.5"/>
<text text-anchor="middle" x="1297.5" y="-1684.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1297.5" y="-1669.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1297.5" y="-1654.3" font-family="Times,serif" font-size="14.00" fill="#000000">z_sendmany from a UA</text>
<text text-anchor="middle" x="1297.5" y="-1639.3" font-family="Times,serif" font-size="14.00" fill="#000000">account</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5185 -->
<g id="edge21" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1129.6,-1599.6C1148.9,-1607.1 1169.1,-1615.1 1188,-1622.5 1192.4,-1624.2 1196.9,-1626 1201.5,-1627.8"/>
<polygon fill="#000000" stroke="#000000" points="1200.2145,-1631.0553 1210.8,-1631.5 1202.8022,-1624.5512 1200.2145,-1631.0553"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node25" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node25"><a xlink:href="https://github.com/zcash/zcash/issues/5180" xlink:title="zcash/zcash#5180&#10;New RPC:&#10;z_getaddressforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1391.5,-1486 1203.5,-1486 1203.5,-1433 1391.5,-1433 1391.5,-1486"/>
<text text-anchor="middle" x="1297.5" y="-1470.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1297.5" y="-1455.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1440.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getaddressforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5180 -->
<g id="edge22" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M1108.9,-1531.4C1133.4,-1519.3 1161.7,-1506.1 1188,-1495.5 1193,-1493.5 1198.1,-1491.5 1203.4,-1489.6"/>
<polygon fill="#000000" stroke="#000000" points="1204.6498,-1492.8695 1212.8,-1486.1 1202.2072,-1486.3094 1204.6498,-1492.8695"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node26" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node26"><a xlink:href="https://github.com/zcash/zcash/issues/5183" xlink:title="zcash/zcash#5183&#10;New RPC:&#10;z_getbalanceforaccount" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1391.5,-1557 1203.5,-1557 1203.5,-1504 1391.5,-1504 1391.5,-1557"/>
<text text-anchor="middle" x="1297.5" y="-1541.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1297.5" y="-1526.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1511.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalanceforaccount</text>
</a>
</g>
</g>
<!-- zcash/zcash#5179&#45;&gt;zcash/zcash#5183 -->
<g id="edge23" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5183</title>
<path fill="none" stroke="#000000" d="M1144.3,-1551.6C1160.4,-1549.4 1177,-1547.1 1193.2,-1544.8"/>
<polygon fill="#000000" stroke="#000000" points="1193.6408,-1548.2723 1203.1,-1543.5 1192.7294,-1541.3318 1193.6408,-1548.2723"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node27" class="node">
<title>zcash/orchard#36</title>
<g id="a_node27"><a xlink:href="https://github.com/zcash/orchard/issues/36" xlink:title="zcash/orchard#36&#10;Parsing and serialization&#10;of Orchard keys and&#10;addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="590.5,-1659.5 396.5,-1659.5 396.5,-1591.5 590.5,-1591.5 590.5,-1659.5"/>
<text text-anchor="middle" x="493.5" y="-1644.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="493.5" y="-1629.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="493.5" y="-1614.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="493.5" y="-1599.3" font-family="Times,serif" font-size="14.00" fill="#000000">addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/zcash#5019 -->
<g id="edge24" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M590.54,-1601.9C610.52,-1593.8 630.25,-1582.9 646,-1568.5 673.29,-1543.6 654.26,-1518 682,-1493.5 684.48,-1491.3 687.1,-1489.3 689.83,-1487.3"/>
<polygon fill="#000000" stroke="#000000" points="691.7605,-1490.2201 698.32,-1481.9 688.0037,-1484.3136 691.7605,-1490.2201"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node28" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node28"><a xlink:href="https://github.com/zcash/librustzcash/issues/371" xlink:title="zcash/librustzcash#371&#10;Implement parsing and&#10;serialization of Unified&#10;Addresses" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="884,-1752.5 696,-1752.5 696,-1684.5 884,-1684.5 884,-1752.5"/>
<text text-anchor="middle" x="790" y="-1737.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="790" y="-1722.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="790" y="-1707.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="790" y="-1692.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/orchard#36&#45;&gt;zcash/librustzcash#371 -->
<g id="edge25" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M590.59,-1656C621.27,-1665.6 655.29,-1676.2 686.42,-1686"/>
<polygon fill="#000000" stroke="#000000" points="685.3908,-1689.3453 695.98,-1689 687.4867,-1682.6664 685.3908,-1689.3453"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node29" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node29"><a xlink:href="https://github.com/zcash/zcash/issues/5133" xlink:title="zcash/zcash#5133&#10;Implement Unified Address&#10;parsing and serialization&#10;to KeyIO" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1150.5,-1773.5 935.5,-1773.5 935.5,-1705.5 1150.5,-1705.5 1150.5,-1773.5"/>
<text text-anchor="middle" x="1043" y="-1758.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1043" y="-1743.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1043" y="-1728.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1043" y="-1713.3" font-family="Times,serif" font-size="14.00" fill="#000000">to KeyIO</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#371&#45;&gt;zcash/zcash#5133 -->
<g id="edge26" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M884.21,-1726.3C897.42,-1727.4 911.13,-1728.6 924.72,-1729.7"/>
<polygon fill="#000000" stroke="#000000" points="924.83,-1733.2189 935.07,-1730.5 925.3695,-1726.2397 924.83,-1733.2189"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge27" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1076.6,-1705.2C1104.3,-1679 1145.6,-1643.7 1188,-1622.5 1191.7,-1620.6 1195.6,-1618.9 1199.6,-1617.2"/>
<polygon fill="#000000" stroke="#000000" points="1200.9132,-1620.445 1209,-1613.6 1198.4096,-1613.908 1200.9132,-1620.445"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge28" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1150.6,-1741.6C1164.8,-1741.9 1179.3,-1742.2 1193.4,-1742.5"/>
<polygon fill="#000000" stroke="#000000" points="1193.5333,-1746.0032 1203.6,-1742.7 1193.6706,-1739.0045 1193.5333,-1746.0032"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge29" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1150.6,-1708.2C1164.7,-1704.1 1179.1,-1699.9 1193.2,-1695.8"/>
<polygon fill="#000000" stroke="#000000" points="1194.18,-1699.1601 1202.8,-1693 1192.22,-1692.4401 1194.18,-1699.1601"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node30" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node30"><a xlink:href="https://github.com/zcash/zcash/issues/5181" xlink:title="zcash/zcash#5181&#10;New RPC:&#10;z_listunifiedreceivers" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1382.5,-1913 1212.5,-1913 1212.5,-1860 1382.5,-1860 1382.5,-1913"/>
<text text-anchor="middle" x="1297.5" y="-1897.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="1297.5" y="-1882.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1867.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_listunifiedreceivers</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5181 -->
<g id="edge30" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M1079.6,-1773.6C1107.5,-1798.1 1147.9,-1830.4 1188,-1851.5 1192.8,-1854 1197.8,-1856.4 1203,-1858.6"/>
<polygon fill="#000000" stroke="#000000" points="1201.7245,-1861.8604 1212.3,-1862.5 1204.4316,-1855.405 1201.7245,-1861.8604"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node31" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node31"><a xlink:href="https://github.com/zcash/zcash/issues/5184" xlink:title="zcash/zcash#5184&#10;Add support for UA&#10;recipients to z_sendmany" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1397.5,-1842 1197.5,-1842 1197.5,-1789 1397.5,-1789 1397.5,-1842"/>
<text text-anchor="middle" x="1297.5" y="-1826.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="1297.5" y="-1811.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="1297.5" y="-1796.8" font-family="Times,serif" font-size="14.00" fill="#000000">recipients to z_sendmany</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5184 -->
<g id="edge31" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M1150.6,-1771.6C1166.5,-1776.4 1182.9,-1781.3 1198.7,-1786"/>
<polygon fill="#000000" stroke="#000000" points="1197.8164,-1789.3889 1208.4,-1788.9 1199.8216,-1782.6822 1197.8164,-1789.3889"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node32" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node32"><a xlink:href="https://github.com/zcash/zcash/issues/5022" xlink:title="zcash/zcash#5022&#10;Implement ZIP&#45;225&#10;transaction format&#10;changes in zcashd." target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="867.5,-1098.5 712.5,-1098.5 712.5,-1030.5 867.5,-1030.5 867.5,-1098.5"/>
<text text-anchor="middle" x="790" y="-1083.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="790" y="-1068.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="790" y="-1053.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="790" y="-1038.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5021 -->
<g id="edge33" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M867.63,-1068.6C954.79,-1073.3 1096.6,-1080.8 1193.4,-1086"/>
<polygon fill="#000000" stroke="#000000" points="1193.3391,-1089.5012 1203.5,-1086.5 1193.6853,-1082.5097 1193.3391,-1089.5012"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5024 -->
<g id="edge32" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M867.63,-1055.9C894.67,-1052.9 925.22,-1049.5 953.17,-1046.4"/>
<polygon fill="#000000" stroke="#000000" points="953.7649,-1049.8561 963.33,-1045.3 953.0113,-1042.8968 953.7649,-1049.8561"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node33" class="node">
<title>zcash/orchard#30</title>
<g id="a_node33"><a xlink:href="https://github.com/zcash/orchard/issues/30" xlink:title="zcash/orchard#30&#10;Implement ZIP 32 for&#10;Orchard" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="579.5,-1484 407.5,-1484 407.5,-1431 579.5,-1431 579.5,-1484"/>
<text text-anchor="middle" x="493.5" y="-1468.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="493.5" y="-1453.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="493.5" y="-1438.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard</text>
</a>
</g>
</g>
<!-- zcash/orchard#30&#45;&gt;zcash/zcash#5019 -->
<g id="edge34" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M579.66,-1457.5C613.58,-1457.5 652.8,-1457.5 688.12,-1457.5"/>
<polygon fill="#000000" stroke="#000000" points="688.45,-1461.0001 698.45,-1457.5 688.45,-1454.0001 688.45,-1461.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node34" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/zcash/pull/2534" xlink:title="zcash/zcash#2534&#10;Bitcoin 0.12 P2P/Net PRs&#10;1" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="252.5,-1993 52.5,-1993 52.5,-1989 48.5,-1989 48.5,-1985 52.5,-1985 52.5,-1948 48.5,-1948 48.5,-1944 52.5,-1944 52.5,-1940 252.5,-1940 252.5,-1993"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1989 56.5,-1989 56.5,-1985 52.5,-1985 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1948 56.5,-1948 56.5,-1944 52.5,-1944 "/>
<text text-anchor="middle" x="152.5" y="-1977.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1962.8" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.12 P2P/Net PRs</text>
<text text-anchor="middle" x="152.5" y="-1947.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node35" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node35"><a xlink:href="https://github.com/zcash/zcash/pull/5003" xlink:title="zcash/zcash#5003&#10;net: prerequisites for&#10;p2p encapsulation changes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="599.5,-2030 387.5,-2030 387.5,-2026 383.5,-2026 383.5,-2022 387.5,-2022 387.5,-1985 383.5,-1985 383.5,-1981 387.5,-1981 387.5,-1977 599.5,-1977 599.5,-2030"/>
<polyline fill="none" stroke="#000000" points="387.5,-2026 391.5,-2026 391.5,-2022 387.5,-2022 "/>
<polyline fill="none" stroke="#000000" points="387.5,-1985 391.5,-1985 391.5,-1981 387.5,-1981 "/>
<text text-anchor="middle" x="493.5" y="-2014.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="493.5" y="-1999.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="493.5" y="-1984.8" font-family="Times,serif" font-size="14.00" fill="#000000">p2p encapsulation changes</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5003 -->
<g id="edge35" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.51,-1977.4C291.55,-1981.6 336.58,-1986.5 377.07,-1990.9"/>
<polygon fill="#000000" stroke="#000000" points="376.9421,-1994.4064 387.26,-1992 377.6934,-1987.4469 376.9421,-1994.4064"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node36" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node36"><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="885.5,-1953.5 694.5,-1953.5 694.5,-1949.5 690.5,-1949.5 690.5,-1945.5 694.5,-1945.5 694.5,-1893.5 690.5,-1893.5 690.5,-1889.5 694.5,-1889.5 694.5,-1885.5 885.5,-1885.5 885.5,-1953.5"/>
<polyline fill="none" stroke="#000000" points="694.5,-1949.5 698.5,-1949.5 698.5,-1945.5 694.5,-1945.5 "/>
<polyline fill="none" stroke="#000000" points="694.5,-1893.5 698.5,-1893.5 698.5,-1889.5 694.5,-1889.5 "/>
<text text-anchor="middle" x="790" y="-1938.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="790" y="-1923.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="790" y="-1908.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="790" y="-1893.3" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/zcash#2534&#45;&gt;zcash/zcash#5005 -->
<g id="edge36" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.81,-1959.1C370.36,-1950.4 564.27,-1936.1 684.15,-1927.3"/>
<polygon fill="#000000" stroke="#000000" points="684.7414,-1930.7647 694.44,-1926.5 684.1988,-1923.7857 684.7414,-1930.7647"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node37" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node37"><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="877,-2055 703,-2055 703,-2051 699,-2051 699,-2047 703,-2047 703,-1980 699,-1980 699,-1976 703,-1976 703,-1972 877,-1972 877,-2055"/>
<polyline fill="none" stroke="#000000" points="703,-2051 707,-2051 707,-2047 703,-2047 "/>
<polyline fill="none" stroke="#000000" points="703,-1980 707,-1980 707,-1976 703,-1976 "/>
<text text-anchor="middle" x="790" y="-2039.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="790" y="-2024.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="790" y="-2009.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="790" y="-1994.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="790" y="-1979.8" font-family="Times,serif" font-size="14.00" fill="#000000">disconnect otherwise.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003&#45;&gt;zcash/zcash#5004 -->
<g id="edge37" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M599.71,-2007.1C629.88,-2008.1 662.59,-2009.2 692.24,-2010.2"/>
<polygon fill="#000000" stroke="#000000" points="692.4623,-2013.7111 702.59,-2010.6 692.7327,-2006.7163 692.4623,-2013.7111"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node38" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node38"><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="1152,-1984.5 934,-1984.5 934,-1980.5 930,-1980.5 930,-1976.5 934,-1976.5 934,-1954.5 930,-1954.5 930,-1950.5 934,-1950.5 934,-1946.5 1152,-1946.5 1152,-1984.5"/>
<polyline fill="none" stroke="#000000" points="934,-1980.5 938,-1980.5 938,-1976.5 934,-1976.5 "/>
<polyline fill="none" stroke="#000000" points="934,-1954.5 938,-1954.5 938,-1950.5 934,-1950.5 "/>
<text text-anchor="middle" x="1043" y="-1969.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1043" y="-1954.3" font-family="Times,serif" font-size="14.00" fill="#000000">Rework AddNode behaviour</text>
</a>
</g>
</g>
<!-- zcash/zcash#5005&#45;&gt;zcash/zcash#5006 -->
<g id="edge38" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M885.65,-1936.9C899.63,-1939.4 914.15,-1942.1 928.47,-1944.7"/>
<polygon fill="#000000" stroke="#000000" points="927.864,-1948.1471 938.33,-1946.5 929.1212,-1941.2609 927.864,-1948.1471"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge39" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M877.07,-1997C895,-1993.6 914.11,-1990 932.74,-1986.4"/>
<polygon fill="#000000" stroke="#000000" points="933.551,-1989.8085 942.72,-1984.5 932.2418,-1982.9321 933.551,-1989.8085"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node39" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node39"><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="1392,-1999.5 1203,-1999.5 1203,-1995.5 1199,-1995.5 1199,-1991.5 1203,-1991.5 1203,-1939.5 1199,-1939.5 1199,-1935.5 1203,-1935.5 1203,-1931.5 1392,-1931.5 1392,-1999.5"/>
<polyline fill="none" stroke="#000000" points="1203,-1995.5 1207,-1995.5 1207,-1991.5 1203,-1991.5 "/>
<polyline fill="none" stroke="#000000" points="1203,-1939.5 1207,-1939.5 1207,-1935.5 1203,-1935.5 "/>
<text text-anchor="middle" x="1297.5" y="-1984.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1297.5" y="-1969.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1297.5" y="-1954.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1297.5" y="-1939.3" font-family="Times,serif" font-size="14.00" fill="#000000">in the tried table.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5006&#45;&gt;zcash/zcash#5008 -->
<g id="edge40" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1152,-1965.5C1165.5,-1965.5 1179.2,-1965.5 1192.6,-1965.5"/>
<polygon fill="#000000" stroke="#000000" points="1192.7,-1969.0001 1202.7,-1965.5 1192.7,-1962.0001 1192.7,-1969.0001"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node40" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node40"><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="884,-1413 696,-1413 696,-1360 884,-1360 884,-1413"/>
<text text-anchor="middle" x="790" y="-1397.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="790" y="-1382.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="790" y="-1367.8" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard support</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#368&#45;&gt;zcash/zcash#5037 -->
<g id="edge41" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M884.13,-1360.4C888.99,-1357.7 893.65,-1354.7 898,-1351.5 920.56,-1334.7 911.49,-1316.3 934,-1299.5 935.88,-1298.1 937.82,-1296.7 939.8,-1295.4"/>
<polygon fill="#000000" stroke="#000000" points="941.9592,-1298.1903 948.8,-1290.1 938.4071,-1292.1585 941.9592,-1298.1903"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node41" class="node">
<title>zcash/orchard#45</title>
<g id="a_node41"><a xlink:href="https://github.com/zcash/orchard/issues/45" xlink:title="zcash/orchard#45&#10;Implement Poseidon gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="602,-611.5 385,-611.5 385,-573.5 602,-573.5 602,-611.5"/>
<text text-anchor="middle" x="493.5" y="-596.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="493.5" y="-581.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Poseidon gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/orchard#4 -->
<g id="edge42" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M602.01,-605.73C617.52,-610.48 632.7,-616.88 646,-625.5 668.68,-640.2 660.16,-658.59 682,-674.5 685.89,-677.33 690.02,-679.95 694.3,-682.37"/>
<polygon fill="#000000" stroke="#000000" points="692.7971,-685.5338 703.28,-687.07 696.0431,-679.3319 692.7971,-685.5338"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node42" class="node">
<title>zcash/halo2#79</title>
<g id="a_node42"><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="870.5,-579 709.5,-579 709.5,-496 870.5,-496 870.5,-579"/>
<text text-anchor="middle" x="790" y="-563.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="790" y="-548.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="790" y="-533.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="790" y="-518.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="790" y="-503.8" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction</text>
</a>
</g>
</g>
<!-- zcash/orchard#45&#45;&gt;zcash/halo2#79 -->
<g id="edge43" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M597.28,-573.5C613.59,-570.5 630.25,-567.42 646,-564.5 663.14,-561.32 681.43,-557.91 699.02,-554.61"/>
<polygon fill="#000000" stroke="#000000" points="700.0944,-557.9698 709.28,-552.69 698.8068,-551.0892 700.0944,-557.9698"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node43" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node43"><a xlink:href="https://github.com/zcash/zcash/pull/5034" xlink:title="zcash/zcash#5034&#10;Bitcoin 0.17 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="249,-2111.5 56,-2111.5 56,-2107.5 52,-2107.5 52,-2103.5 56,-2103.5 56,-2081.5 52,-2081.5 52,-2077.5 56,-2077.5 56,-2073.5 249,-2073.5 249,-2111.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-2107.5 60,-2107.5 60,-2103.5 56,-2103.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-2081.5 60,-2081.5 60,-2077.5 56,-2077.5 "/>
<text text-anchor="middle" x="152.5" y="-2096.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-2081.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.17 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050 -->
<g id="node44" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node44"><a xlink:href="https://github.com/zcash/zcash/pull/5050" xlink:title="zcash/zcash#5050&#10;Bitcoin 0.18 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="590,-2111.5 397,-2111.5 397,-2107.5 393,-2107.5 393,-2103.5 397,-2103.5 397,-2081.5 393,-2081.5 393,-2077.5 397,-2077.5 397,-2073.5 590,-2073.5 590,-2111.5"/>
<polyline fill="none" stroke="#000000" points="397,-2107.5 401,-2107.5 401,-2103.5 397,-2103.5 "/>
<polyline fill="none" stroke="#000000" points="397,-2081.5 401,-2081.5 401,-2077.5 397,-2077.5 "/>
<text text-anchor="middle" x="493.5" y="-2096.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="493.5" y="-2081.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.18 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5034&#45;&gt;zcash/zcash#5050 -->
<g id="edge44" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.3,-2092.5C292.14,-2092.5 342.66,-2092.5 386.61,-2092.5"/>
<polygon fill="#000000" stroke="#000000" points="386.75,-2096.0001 396.75,-2092.5 386.75,-2089.0001 386.75,-2096.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node45" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node45"><a xlink:href="https://github.com/zcash/zcash/pull/5163" xlink:title="zcash/zcash#5163&#10;Bitcoin 0.19 locking PRs" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="886.5,-2111.5 693.5,-2111.5 693.5,-2107.5 689.5,-2107.5 689.5,-2103.5 693.5,-2103.5 693.5,-2081.5 689.5,-2081.5 689.5,-2077.5 693.5,-2077.5 693.5,-2073.5 886.5,-2073.5 886.5,-2111.5"/>
<polyline fill="none" stroke="#000000" points="693.5,-2107.5 697.5,-2107.5 697.5,-2103.5 693.5,-2103.5 "/>
<polyline fill="none" stroke="#000000" points="693.5,-2081.5 697.5,-2081.5 697.5,-2077.5 693.5,-2077.5 "/>
<text text-anchor="middle" x="790" y="-2096.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="790" y="-2081.3" font-family="Times,serif" font-size="14.00" fill="#000000">Bitcoin 0.19 locking PRs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5050&#45;&gt;zcash/zcash#5163 -->
<g id="edge45" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M590.17,-2092.5C619.93,-2092.5 652.86,-2092.5 683.25,-2092.5"/>
<polygon fill="#000000" stroke="#000000" points="683.46,-2096.0001 693.46,-2092.5 683.46,-2089.0001 683.46,-2096.0001"/>
</g>
<!-- zcash/zcash#5056 -->
<g id="node46" class="node">
<title>zcash/zcash#5056</title>
<g id="a_node46"><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="#a6cfff" stroke="#000000" stroke-width="2" points="586,-1248.5 401,-1248.5 401,-1180.5 586,-1180.5 586,-1248.5"/>
<text text-anchor="middle" x="493.5" y="-1233.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5056</text>
<text text-anchor="middle" x="493.5" y="-1218.3" font-family="Times,serif" font-size="14.00" fill="#000000">Identify necessary RPC</text>
<text text-anchor="middle" x="493.5" y="-1203.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes to support</text>
<text text-anchor="middle" x="493.5" y="-1188.3" 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="edge46" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M586.18,-1229.1C608.41,-1236.7 630.24,-1248.1 646,-1265.5 694.1,-1318.5 633.65,-1369.7 682,-1422.5 684.55,-1425.3 687.31,-1427.8 690.26,-1430.2"/>
<polygon fill="#000000" stroke="#000000" points="688.2414,-1433.0593 698.42,-1436 692.2969,-1427.3537 688.2414,-1433.0593"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node47" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node47"><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="881,-1241 699,-1241 699,-1188 881,-1188 881,-1241"/>
<text text-anchor="middle" x="790" y="-1225.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="790" y="-1210.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="790" y="-1195.8" 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="edge47" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5177</title>
<path fill="none" stroke="#000000" d="M586.09,-1214.5C618.66,-1214.5 655.42,-1214.5 688.67,-1214.5"/>
<polygon fill="#000000" stroke="#000000" points="688.87,-1218.0001 698.87,-1214.5 688.87,-1211.0001 688.87,-1218.0001"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node48" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node48"><a xlink:href="https://github.com/zcash/zcash/issues/5186" xlink:title="zcash/zcash#5186&#10;z_viewtransaction: Figure&#10;out how to render UAs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="891.5,-1170 688.5,-1170 688.5,-1117 891.5,-1117 891.5,-1170"/>
<text text-anchor="middle" x="790" y="-1154.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="790" y="-1139.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="790" y="-1124.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/zcash#5056&#45;&gt;zcash/zcash#5186 -->
<g id="edge48" class="edge">
<title>zcash/zcash#5056&#45;&gt;zcash/zcash#5186</title>
<path fill="none" stroke="#000000" d="M586.09,-1192.3C615.38,-1185.3 648.05,-1177.5 678.52,-1170.2"/>
<polygon fill="#000000" stroke="#000000" points="679.4396,-1173.5783 688.32,-1167.8 677.7745,-1166.7792 679.4396,-1173.5783"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node49" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node49"><a xlink:href="https://github.com/zcash/zcash/issues/5176" xlink:title="zcash/zcash#5176&#10;Implement BIP 39 seed&#10;phrase support" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="586,-1559 401,-1559 401,-1506 586,-1506 586,-1559"/>
<text text-anchor="middle" x="493.5" y="-1543.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="493.5" y="-1528.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="493.5" y="-1513.8" font-family="Times,serif" font-size="14.00" fill="#000000">phrase support</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#5019 -->
<g id="edge49" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M586.09,-1509.1C618.65,-1500.8 655.39,-1491.5 688.63,-1483.1"/>
<polygon fill="#000000" stroke="#000000" points="689.4892,-1486.4931 698.36,-1480.7 687.8128,-1479.6967 689.4892,-1486.4931"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node50" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node50"><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="891,-1570.5 689,-1570.5 689,-1502.5 891,-1502.5 891,-1570.5"/>
<text text-anchor="middle" x="790" y="-1555.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="790" y="-1540.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="790" y="-1525.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="790" y="-1510.3" font-family="Times,serif" font-size="14.00" fill="#000000">(BIP 32)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5176&#45;&gt;zcash/zcash#2673 -->
<g id="edge50" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M586.09,-1533.7C615.41,-1534.1 648.11,-1534.6 678.6,-1535"/>
<polygon fill="#000000" stroke="#000000" points="678.8063,-1538.5021 688.84,-1535.1 678.8747,-1531.5024 678.8063,-1538.5021"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge51" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M891.08,-1548.1C904.35,-1549.6 918.01,-1551.2 931.45,-1552.7"/>
<polygon fill="#000000" stroke="#000000" points="931.3198,-1556.2087 941.66,-1553.9 932.1369,-1549.2566 931.3198,-1556.2087"/>
</g>
<!-- zcash/zips#364 -->
<g id="node51" class="node">
<title>zcash/zips#364</title>
<g id="a_node51"><a xlink:href="https://github.com/zcash/zips/issues/364" xlink:title="zcash/zips#364&#10;[ZIP 339] Wallet Recovery&#10;Words (a la BIP 39)" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="255,-1559 50,-1559 50,-1506 255,-1506 255,-1559"/>
<text text-anchor="middle" x="152.5" y="-1543.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="152.5" y="-1528.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="152.5" y="-1513.8" font-family="Times,serif" font-size="14.00" fill="#000000">Words (a la BIP 39)</text>
</a>
</g>
</g>
<!-- zcash/zips#364&#45;&gt;zcash/zcash#5176 -->
<g id="edge52" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M255.27,-1532.5C298.12,-1532.5 347.78,-1532.5 390.63,-1532.5"/>
<polygon fill="#000000" stroke="#000000" points="390.8,-1536.0001 400.8,-1532.5 390.8,-1529.0001 390.8,-1536.0001"/>
</g>
<!-- zcash/zips#511 -->
<g id="node52" class="node">
<title>zcash/zips#511</title>
<g id="a_node52"><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="897.5,-1656.5 682.5,-1656.5 682.5,-1588.5 897.5,-1588.5 897.5,-1656.5"/>
<text text-anchor="middle" x="790" y="-1641.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="790" y="-1626.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="790" y="-1611.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="790" y="-1596.3" font-family="Times,serif" font-size="14.00" fill="#000000">Addresses</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/zcash#5179 -->
<g id="edge53" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M897.66,-1598.2C909,-1595.7 920.54,-1593.1 931.92,-1590.5"/>
<polygon fill="#000000" stroke="#000000" points="932.8615,-1593.8765 941.87,-1588.3 931.3502,-1587.0415 932.8615,-1593.8765"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node53" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node53"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/23" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#10;Implement ZIP 244 test&#10;vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="646,-1044 341,-1044 341,-991 646,-991 646,-1044"/>
<text text-anchor="middle" x="493.5" y="-1028.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</text>
<text text-anchor="middle" x="493.5" y="-1013.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="493.5" y="-998.8" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/zcash#5022 -->
<g id="edge54" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/zcash#5022</title>
<path fill="none" stroke="#000000" d="M646.09,-1041.7C665.31,-1044.7 684.43,-1047.8 702.15,-1050.6"/>
<polygon fill="#000000" stroke="#000000" points="702.0004,-1054.1188 712.42,-1052.2 703.078,-1047.2023 702.0004,-1054.1188"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node54" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node54"><a xlink:href="https://github.com/zcash/librustzcash/issues/350" xlink:title="zcash/librustzcash#350&#10;Implement ZIP&#45;225&#10;transaction format &amp;&#10;hashing changes in&#10;librustzcash." target="_blank">
<polygon fill="#a6cfff" stroke="#000000" points="884,-1012 696,-1012 696,-929 884,-929 884,-1012"/>
<text text-anchor="middle" x="790" y="-996.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="790" y="-981.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="790" y="-966.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="790" y="-951.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="790" y="-936.8" font-family="Times,serif" font-size="14.00" fill="#000000">librustzcash.</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350 -->
<g id="edge55" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M646.09,-993.31C659.42,-991.2 672.69,-989.1 685.49,-987.07"/>
<polygon fill="#000000" stroke="#000000" points="686.3211,-990.4821 695.65,-985.46 685.2254,-983.5683 686.3211,-990.4821"/>
</g>
<!-- zcash/halo2#63 -->
<g id="node55" class="node">
<title>zcash/halo2#63</title>
<g id="a_node55"><a xlink:href="https://github.com/zcash/halo2/issues/63" xlink:title="zcash/halo2#63&#10;Implement zero&#45;knowledge&#45;&#10;ness" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="898,-666 682,-666 682,-613 898,-613 898,-666"/>
<text text-anchor="middle" x="790" y="-650.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="790" y="-635.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="790" y="-620.8" font-family="Times,serif" font-size="14.00" fill="#000000">ness</text>
</a>
</g>
</g>
<!-- zcash/halo2#63&#45;&gt;zcash/librustzcash#320 -->
<g id="edge56" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M884.57,-666.04C902.21,-670.99 920.74,-676.19 938.66,-681.22"/>
<polygon fill="#000000" stroke="#000000" points="937.9766,-684.6632 948.55,-683.99 939.8645,-677.9226 937.9766,-684.6632"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node56" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node56"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="646,-1745 341,-1745 341,-1692 646,-1692 646,-1745"/>
<text text-anchor="middle" x="493.5" y="-1729.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</text>
<text text-anchor="middle" x="493.5" y="-1714.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="493.5" y="-1699.8" font-family="Times,serif" font-size="14.00" fill="#000000">encodings</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371 -->
<g id="edge57" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M646.09,-1718.5C659.42,-1718.5 672.69,-1718.5 685.49,-1718.5"/>
<polygon fill="#000000" stroke="#000000" points="685.65,-1722.0001 695.65,-1718.5 685.65,-1715.0001 685.65,-1722.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node57" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node57"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/15" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#10;Implement ZIP 225 test&#10;vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="305,-1044 0,-1044 0,-991 305,-991 305,-1044"/>
<text text-anchor="middle" x="152.5" y="-1028.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</text>
<text text-anchor="middle" x="152.5" y="-1013.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="152.5" y="-998.8" font-family="Times,serif" font-size="14.00" fill="#000000">vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="edge58" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<path fill="none" stroke="#000000" d="M305.05,-1017.5C313.59,-1017.5 322.19,-1017.5 330.76,-1017.5"/>
<polygon fill="#000000" stroke="#000000" points="330.81,-1021.0001 340.81,-1017.5 330.81,-1014.0001 330.81,-1021.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24 -->
<g id="node58" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/24" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#10;Implement Orchard key&#10;components test vectors" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="305,-1745 0,-1745 0,-1692 305,-1692 305,-1745"/>
<text text-anchor="middle" x="152.5" y="-1729.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#24</text>
<text text-anchor="middle" x="152.5" y="-1714.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard key</text>
<text text-anchor="middle" x="152.5" y="-1699.8" font-family="Times,serif" font-size="14.00" fill="#000000">components test vectors</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="edge59" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#24&#45;&gt;zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<path fill="none" stroke="#000000" d="M305.05,-1718.5C313.59,-1718.5 322.19,-1718.5 330.76,-1718.5"/>
<polygon fill="#000000" stroke="#000000" points="330.81,-1722.0001 340.81,-1718.5 330.81,-1715.0001 330.81,-1722.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#30 -->
<g id="node59" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#30</title>
<g id="a_node59"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/pull/30" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#10;Orchard note encryption" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="646,-919.5 341,-919.5 341,-915.5 337,-915.5 337,-911.5 341,-911.5 341,-889.5 337,-889.5 337,-885.5 341,-885.5 341,-881.5 646,-881.5 646,-919.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="341,-915.5 345,-915.5 345,-911.5 341,-911.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="341,-889.5 345,-889.5 345,-885.5 341,-885.5 "/>
<text text-anchor="middle" x="493.5" y="-904.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash&#45;hackworks/zcash&#45;test&#45;vectors#30</text>
<text text-anchor="middle" x="493.5" y="-889.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard note encryption</text>
</a>
</g>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#45;&gt;zcash/orchard#32 -->
<g id="edge60" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#30&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M646.09,-892.27C655.37,-891.76 664.63,-891.27 673.71,-890.78"/>
<polygon fill="#000000" stroke="#000000" points="674.1032,-894.264 683.9,-890.23 673.7259,-887.2741 674.1032,-894.264"/>
</g>
<!-- zcash/halo2#64 -->
<g id="node60" class="node">
<title>zcash/halo2#64</title>
<g id="a_node60"><a xlink:href="https://github.com/zcash/halo2/issues/64" xlink:title="zcash/halo2#64&#10;Design gadget API or&#10;interaction model" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="237.5,-765 67.5,-765 67.5,-712 237.5,-712 237.5,-765"/>
<text text-anchor="middle" x="152.5" y="-749.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="152.5" y="-734.8" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="152.5" y="-719.8" font-family="Times,serif" font-size="14.00" fill="#000000">interaction model</text>
</a>
</g>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#73 -->
<g id="edge61" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M237.67,-727.51C285.93,-721.28 346.48,-713.47 396.56,-707.01"/>
<polygon fill="#000000" stroke="#000000" points="397.2825,-710.4457 406.75,-705.69 396.3832,-703.5037 397.2825,-710.4457"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node61" class="node">
<title>zcash/halo2#235</title>
<g id="a_node61"><a xlink:href="https://github.com/zcash/halo2/issues/235" xlink:title="zcash/halo2#235&#10;[Circuit] Implement&#10;Core/Chip abstraction" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="581.5,-792 405.5,-792 405.5,-739 581.5,-739 581.5,-792"/>
<text text-anchor="middle" x="493.5" y="-776.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="493.5" y="-761.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="493.5" y="-746.8" font-family="Times,serif" font-size="14.00" fill="#000000">Core/Chip abstraction</text>
</a>
</g>
</g>
<!-- zcash/halo2#64&#45;&gt;zcash/halo2#235 -->
<g id="edge62" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M237.67,-745.24C285.47,-749.03 345.32,-753.77 395.12,-757.71"/>
<polygon fill="#000000" stroke="#000000" points="395.0157,-761.2126 405.26,-758.51 395.5663,-754.2342 395.0157,-761.2126"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge63" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M581.66,-749.15C616.84,-742.62 657.46,-735.09 693.44,-728.41"/>
<polygon fill="#000000" stroke="#000000" points="694.2668,-731.8164 703.46,-726.55 692.9891,-724.934 694.2668,-731.8164"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node62" class="node">
<title>zcash/halo2#75</title>
<g id="a_node62"><a xlink:href="https://github.com/zcash/halo2/issues/75" xlink:title="zcash/halo2#75&#10;Implement support for&#10;recursion" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1132.5,-437 953.5,-437 953.5,-384 1132.5,-384 1132.5,-437"/>
<text text-anchor="middle" x="1043" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="1043" y="-406.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1043" y="-391.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node63" class="node">
<title>zcash/halo2#251</title>
<g id="a_node63"><a xlink:href="https://github.com/zcash/halo2/issues/251" xlink:title="zcash/halo2#251&#10;Implement user&#45;facing API&#10;for recursive proving" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1402.5,-437 1192.5,-437 1192.5,-384 1402.5,-384 1402.5,-437"/>
<text text-anchor="middle" x="1297.5" y="-421.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1297.5" y="-406.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement user&#45;facing API</text>
<text text-anchor="middle" x="1297.5" y="-391.8" font-family="Times,serif" font-size="14.00" fill="#000000">for recursive proving</text>
</a>
</g>
</g>
<!-- zcash/halo2#75&#45;&gt;zcash/halo2#251 -->
<g id="edge64" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1132.7,-410.5C1148.7,-410.5 1165.6,-410.5 1182.2,-410.5"/>
<polygon fill="#000000" stroke="#000000" points="1182.5,-414.0001 1192.5,-410.5 1182.5,-407.0001 1182.5,-414.0001"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node64" class="node">
<title>zcash/halo2#78</title>
<g id="a_node64"><a xlink:href="https://github.com/zcash/halo2/issues/78" xlink:title="zcash/halo2#78&#10;Implement algebraic hash&#10;/ random oracle&#10;abstraction gadget" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="595.5,-555.5 391.5,-555.5 391.5,-487.5 595.5,-487.5 595.5,-555.5"/>
<text text-anchor="middle" x="493.5" y="-540.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#78</text>
<text text-anchor="middle" x="493.5" y="-525.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement algebraic hash</text>
<text text-anchor="middle" x="493.5" y="-510.3" font-family="Times,serif" font-size="14.00" fill="#000000">/ random oracle</text>
<text text-anchor="middle" x="493.5" y="-495.3" font-family="Times,serif" font-size="14.00" fill="#000000">abstraction gadget</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#79 -->
<g id="edge65" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M595.54,-527.01C629.24,-528.82 666.48,-530.83 699.28,-532.6"/>
<polygon fill="#000000" stroke="#000000" points="699.1232,-536.0966 709.3,-533.15 699.5069,-529.1071 699.1232,-536.0966"/>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#75 -->
<g id="edge66" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M595.57,-500.88C694.89,-480.82 844.85,-450.53 943.34,-430.63"/>
<polygon fill="#000000" stroke="#000000" points="944.19,-434.0291 953.3,-428.62 942.8052,-427.1674 944.19,-434.0291"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node65" class="node">
<title>zcash/halo2#250</title>
<g id="a_node65"><a xlink:href="https://github.com/zcash/halo2/issues/250" xlink:title="zcash/halo2#250&#10;Implement the recursive&#10;verifier circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="887,-383 693,-383 693,-330 887,-330 887,-383"/>
<text text-anchor="middle" x="790" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="790" y="-352.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="790" y="-337.8" font-family="Times,serif" font-size="14.00" fill="#000000">verifier circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#78&#45;&gt;zcash/halo2#250 -->
<g id="edge67" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595.81,-502.18C613.4,-496.25 630.87,-488.53 646,-478.5 667.35,-464.35 663.39,-451.1 682,-433.5 699.19,-417.24 719.98,-401.62 738.71,-388.76"/>
<polygon fill="#000000" stroke="#000000" points="740.8287,-391.5524 747.15,-383.05 736.9062,-385.7546 740.8287,-391.5524"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge68" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M887.09,-377.22C905.52,-381.16 924.83,-385.28 943.33,-389.23"/>
<polygon fill="#000000" stroke="#000000" points="942.7098,-392.6764 953.22,-391.34 944.1704,-385.8304 942.7098,-392.6764"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node66" class="node">
<title>zcash/halo2#57</title>
<g id="a_node66"><a xlink:href="https://github.com/zcash/halo2/issues/57" xlink:title="zcash/halo2#57&#10;Remove unused&#10;fixed_values from&#10;ProvingKey" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="224,-2197.5 81,-2197.5 81,-2129.5 224,-2129.5 224,-2197.5"/>
<text text-anchor="middle" x="152.5" y="-2182.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-2167.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-2152.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-2137.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node67" class="node">
<title>zcash/halo2#82</title>
<g id="a_node67"><a xlink:href="https://github.com/zcash/halo2/issues/82" xlink:title="zcash/halo2#82&#10;Consider not sampling&#10;beta and gamma if there&#10;are no permutations or&#10;lookups" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="249,-2299 56,-2299 56,-2216 249,-2216 249,-2299"/>
<text text-anchor="middle" x="152.5" y="-2283.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-2268.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-2253.8" font-family="Times,serif" font-size="14.00" fill="#000000">beta and gamma if there</text>
<text text-anchor="middle" x="152.5" y="-2238.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-2223.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node68" class="node">
<title>zcash/halo2#248</title>
<g id="a_node68"><a xlink:href="https://github.com/zcash/halo2/issues/248" xlink:title="zcash/halo2#248&#10;Implement endoscaling in&#10;the circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="595,-383 392,-383 392,-330 595,-330 595,-383"/>
<text text-anchor="middle" x="493.5" y="-367.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="493.5" y="-352.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="493.5" y="-337.8" font-family="Times,serif" font-size="14.00" fill="#000000">the circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#248&#45;&gt;zcash/halo2#250 -->
<g id="edge69" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595.12,-356.5C623.19,-356.5 653.74,-356.5 682.15,-356.5"/>
<polygon fill="#000000" stroke="#000000" points="682.51,-360.0001 692.51,-356.5 682.51,-353.0001 682.51,-360.0001"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node69" class="node">
<title>zcash/halo2#249</title>
<g id="a_node69"><a xlink:href="https://github.com/zcash/halo2/issues/249" xlink:title="zcash/halo2#249&#10;Implement circuit logic&#10;for handling public&#10;inputs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="586,-311.5 401,-311.5 401,-243.5 586,-243.5 586,-311.5"/>
<text text-anchor="middle" x="493.5" y="-296.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="493.5" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="493.5" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="493.5" y="-251.3" font-family="Times,serif" font-size="14.00" fill="#000000">inputs</text>
</a>
</g>
</g>
<!-- zcash/halo2#249&#45;&gt;zcash/halo2#250 -->
<g id="edge70" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M586.09,-302.17C616.89,-310.38 651.44,-319.58 683.22,-328.05"/>
<polygon fill="#000000" stroke="#000000" points="682.4262,-331.4605 692.99,-330.65 684.2265,-324.6959 682.4262,-331.4605"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node70" class="node">
<title>zcash/halo2#246</title>
<g id="a_node70"><a xlink:href="https://github.com/zcash/halo2/issues/246" xlink:title="zcash/halo2#246&#10;Create recursive proof&#10;structures" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="242,-218 63,-218 63,-165 242,-165 242,-218"/>
<text text-anchor="middle" x="152.5" y="-202.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="152.5" y="-187.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="152.5" y="-172.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node71" class="node">
<title>zcash/halo2#247</title>
<g id="a_node71"><a xlink:href="https://github.com/zcash/halo2/issues/247" xlink:title="zcash/halo2#247&#10;Implement underlying&#10;scaffolding for the&#10;recursive circuit" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="581.5,-225.5 405.5,-225.5 405.5,-157.5 581.5,-157.5 581.5,-225.5"/>
<text text-anchor="middle" x="493.5" y="-210.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="493.5" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="493.5" y="-180.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="493.5" y="-165.3" font-family="Times,serif" font-size="14.00" fill="#000000">recursive circuit</text>
</a>
</g>
</g>
<!-- zcash/halo2#246&#45;&gt;zcash/halo2#247 -->
<g id="edge71" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M242.09,-191.5C289.16,-191.5 346.94,-191.5 395.24,-191.5"/>
<polygon fill="#000000" stroke="#000000" points="395.39,-195.0001 405.39,-191.5 395.39,-188.0001 395.39,-195.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge72" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M581.88,-209.52C603.56,-215.79 626.21,-223.97 646,-234.5 689.1,-257.43 730.81,-294.99 758.15,-322.39"/>
<polygon fill="#000000" stroke="#000000" points="755.9549,-325.1498 765.46,-329.83 760.9481,-320.2439 755.9549,-325.1498"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node72" class="node">
<title>zcash/halo2#245</title>
<g id="a_node72"><a xlink:href="https://github.com/zcash/halo2/issues/245" xlink:title="zcash/halo2#245&#10;Remove the need to&#10;multiply by powers of x^n&#10;in verifier" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="596.5,-139.5 390.5,-139.5 390.5,-71.5 596.5,-71.5 596.5,-139.5"/>
<text text-anchor="middle" x="493.5" y="-124.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#245</text>
<text text-anchor="middle" x="493.5" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="493.5" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">multiply by powers of x^n</text>
<text text-anchor="middle" x="493.5" y="-79.3" font-family="Times,serif" font-size="14.00" fill="#000000">in verifier</text>
</a>
</g>
</g>
<!-- zcash/halo2#245&#45;&gt;zcash/halo2#250 -->
<g id="edge73" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M596.8,-124.1C614.19,-130.1 631.34,-138.03 646,-148.5 708.53,-193.15 752.85,-273.91 774.64,-320.58"/>
<polygon fill="#000000" stroke="#000000" points="771.4748,-322.0746 778.82,-329.71 777.8395,-319.1606 771.4748,-322.0746"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node73" class="node">
<title>zcash/halo2#210</title>
<g id="a_node73"><a xlink:href="https://github.com/zcash/halo2/issues/210" xlink:title="zcash/halo2#210&#10;Make multiopen&#10;point_index_map dependent&#10;only on the rotation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="602.5,-469.5 384.5,-469.5 384.5,-401.5 602.5,-401.5 602.5,-469.5"/>
<text text-anchor="middle" x="493.5" y="-454.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#210</text>
<text text-anchor="middle" x="493.5" y="-439.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="493.5" y="-424.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="493.5" y="-409.3" font-family="Times,serif" font-size="14.00" fill="#000000">only on the rotation</text>
</a>
</g>
</g>
<!-- zcash/halo2#210&#45;&gt;zcash/halo2#250 -->
<g id="edge74" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M602.64,-406.42C628.85,-399.44 656.82,-391.99 682.93,-385.03"/>
<polygon fill="#000000" stroke="#000000" points="684.078,-388.3463 692.84,-382.39 682.276,-381.5822 684.078,-388.3463"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node74" class="node">
<title>zcash/orchard#38</title>
<g id="a_node74"><a xlink:href="https://github.com/zcash/orchard/issues/38" xlink:title="zcash/orchard#38&#10;Implement generic ECC&#10;gadget" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="248,-680 57,-680 57,-627 248,-627 248,-680"/>
<text text-anchor="middle" x="152.5" y="-664.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="152.5" y="-649.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="152.5" y="-634.8" font-family="Times,serif" font-size="14.00" fill="#000000">gadget</text>
</a>
</g>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/halo2#73 -->
<g id="edge75" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M248.39,-665.03C294.73,-670.6 350.23,-677.27 396.69,-682.86"/>
<polygon fill="#000000" stroke="#000000" points="396.4241,-686.3531 406.77,-684.07 397.2585,-679.403 396.4241,-686.3531"/>
</g>
<!-- zcash/orchard#38&#45;&gt;zcash/orchard#4 -->
<g id="edge76" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M248.39,-643.09C348.77,-634.83 510.37,-629 646,-658.5 663.11,-662.22 665.68,-668.17 682,-674.5 687.12,-676.49 692.41,-678.47 697.76,-680.42"/>
<polygon fill="#000000" stroke="#000000" points="696.8555,-683.814 707.45,-683.9 699.2215,-677.2259 696.8555,-683.814"/>
</g>
</g>
</svg>