developers/zcash-core-dag.svg

1441 lines
102 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="2473pt"
viewBox="0.00 0.00 1660.00 2473.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 2469)">
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-2469 1656,-2469 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,-175 59.5,-175 59.5,-122 245.5,-122 245.5,-175"/>
<text text-anchor="middle" x="152.5" y="-159.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4190</text>
<text text-anchor="middle" x="152.5" y="-144.8" font-family="Times,serif" font-size="14.00" fill="#000000">TZE: implement zcashd</text>
<text text-anchor="middle" x="152.5" y="-129.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,-988 407,-988 407,-935 580,-935 580,-988"/>
<text text-anchor="middle" x="493.5" y="-972.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#73</text>
<text text-anchor="middle" x="493.5" y="-957.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Sinsemilla</text>
<text text-anchor="middle" x="493.5" y="-942.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,-1052 703.5,-1052 703.5,-999 876.5,-999 876.5,-1052"/>
<text text-anchor="middle" x="790" y="-1036.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#4</text>
<text text-anchor="middle" x="790" y="-1021.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the Action</text>
<text text-anchor="middle" x="790" y="-1006.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,-980.18C615.52,-987.84 656.72,-996.73 693.19,-1004.6"/>
<polygon fill="#000000" stroke="#000000" points="692.8255,-1008.1022 703.34,-1006.8 694.3084,-1001.2611 692.8255,-1008.1022"/>
</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&#10;consensus rules as an NU&#10;feature" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1144.5,-1170.5 941.5,-1170.5 941.5,-1102.5 1144.5,-1102.5 1144.5,-1170.5"/>
<text text-anchor="middle" x="1043" y="-1155.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#320</text>
<text text-anchor="middle" x="1043" y="-1140.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1043" y="-1125.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules as an NU</text>
<text text-anchor="middle" x="1043" y="-1110.3" font-family="Times,serif" font-size="14.00" fill="#000000">feature</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/librustzcash#320 -->
<g id="edge3" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M850.6,-1052.1C882.14,-1065.9 921.25,-1083.1 955.96,-1098.3"/>
<polygon fill="#000000" stroke="#000000" points="954.5937,-1101.5224 965.16,-1102.3 957.3849,-1095.1029 954.5937,-1101.5224"/>
</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,-1242 960.5,-1242 960.5,-1189 1125.5,-1189 1125.5,-1242"/>
<text text-anchor="middle" x="1043" y="-1226.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#35</text>
<text text-anchor="middle" x="1043" y="-1211.8" font-family="Times,serif" font-size="14.00" fill="#000000">Transaction building</text>
<text text-anchor="middle" x="1043" y="-1196.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="M846.32,-1052.1C864.66,-1062.9 883.9,-1076.8 898,-1093.5 924.78,-1125.1 903.59,-1151.4 934,-1179.5 939.16,-1184.3 944.97,-1188.4 951.14,-1192"/>
<polygon fill="#000000" stroke="#000000" points="949.9521,-1195.3304 960.43,-1196.9 953.2178,-1189.1389 949.9521,-1195.3304"/>
</g>
<!-- zcash/zcash#5195 -->
<g id="node8" class="node">
<title>zcash/zcash#5195</title>
<g id="a_node8"><a xlink:href="https://github.com/zcash/zcash/issues/5195" xlink:title="zcash/zcash#5195&#10;Implement Orchard proof&#10;verification consensus&#10;rule" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1143.5,-1046.5 942.5,-1046.5 942.5,-978.5 1143.5,-978.5 1143.5,-1046.5"/>
<text text-anchor="middle" x="1043" y="-1031.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5195</text>
<text text-anchor="middle" x="1043" y="-1016.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard proof</text>
<text text-anchor="middle" x="1043" y="-1001.3" font-family="Times,serif" font-size="14.00" fill="#000000">verification consensus</text>
<text text-anchor="middle" x="1043" y="-986.3" font-family="Times,serif" font-size="14.00" fill="#000000">rule</text>
</a>
</g>
</g>
<!-- zcash/orchard#4&#45;&gt;zcash/zcash#5195 -->
<g id="edge5" class="edge">
<title>zcash/orchard#4&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M876.71,-1021C894.66,-1020.1 913.79,-1019.1 932.46,-1018.2"/>
<polygon fill="#000000" stroke="#000000" points="932.6571,-1021.6946 942.47,-1017.7 932.3078,-1014.7033 932.6571,-1021.6946"/>
</g>
<!-- zcash/zcash#5024 -->
<g id="node9" class="node">
<title>zcash/zcash#5024</title>
<g id="a_node9"><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="1377,-754 1218,-754 1218,-701 1377,-701 1377,-754"/>
<text text-anchor="middle" x="1297.5" y="-738.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5024</text>
<text text-anchor="middle" x="1297.5" y="-723.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1297.5" y="-708.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#320&#45;&gt;zcash/zcash#5024 -->
<g id="edge6" class="edge">
<title>zcash/librustzcash#320&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1100.1,-1102.4C1118.4,-1089.5 1137.6,-1073.5 1152,-1055.5 1225.7,-963.37 1270,-828.06 1288,-763.87"/>
<polygon fill="#000000" stroke="#000000" points="1291.3817,-764.7729 1290.7,-754.2 1284.6396,-762.8903 1291.3817,-764.7729"/>
</g>
<!-- zcash/zcash#5021 -->
<g id="node10" class="node">
<title>zcash/zcash#5021</title>
<g id="a_node10"><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,-1242 1203.5,-1242 1203.5,-1189 1391.5,-1189 1391.5,-1242"/>
<text text-anchor="middle" x="1297.5" y="-1226.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5021</text>
<text text-anchor="middle" x="1297.5" y="-1211.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard support to</text>
<text text-anchor="middle" x="1297.5" y="-1196.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="edge7" class="edge">
<title>zcash/orchard#35&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M1125.6,-1215.5C1147.2,-1215.5 1170.6,-1215.5 1193.1,-1215.5"/>
<polygon fill="#000000" stroke="#000000" points="1193.4,-1219.0001 1203.4,-1215.5 1193.4,-1212.0001 1193.4,-1219.0001"/>
</g>
<!-- zcash/zcash#5195&#45;&gt;zcash/zcash#5024 -->
<g id="edge8" class="edge">
<title>zcash/zcash#5195&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1138.6,-978.44C1143.3,-975.38 1147.8,-972.07 1152,-968.5 1218.9,-911.48 1263.6,-815.58 1284.3,-763.61"/>
<polygon fill="#000000" stroke="#000000" points="1287.6246,-764.7182 1288,-754.13 1281.1036,-762.1731 1287.6246,-764.7182"/>
</g>
<!-- zcash/zcash#5023 -->
<g id="node13" class="node">
<title>zcash/zcash#5023</title>
<g id="a_node13"><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,-1319.5 1443,-1319.5 1443,-1251.5 1652,-1251.5 1652,-1319.5"/>
<text text-anchor="middle" x="1547.5" y="-1304.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5023</text>
<text text-anchor="middle" x="1547.5" y="-1289.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1547.5" y="-1274.3" font-family="Times,serif" font-size="14.00" fill="#000000">Orchard shielded coinbase</text>
<text text-anchor="middle" x="1547.5" y="-1259.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="edge11" class="edge">
<title>zcash/zcash#5021&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M1391.7,-1241.9C1405.1,-1245.6 1419.1,-1249.6 1432.9,-1253.4"/>
<polygon fill="#000000" stroke="#000000" points="1432.4284,-1256.9012 1443,-1256.2 1434.2985,-1250.1556 1432.4284,-1256.9012"/>
</g>
<!-- zcash/zcash#4714 -->
<g id="node11" class="node">
<title>zcash/zcash#4714</title>
<g id="a_node11"><a xlink:href="https://github.com/zcash/zcash/issues/4714" xlink:title="zcash/zcash#4714&#10;[Orchard] Encoding of&#10;Halo 2 proofs" target="_blank">
<polygon fill="#fad8c7" stroke="#000000" points="582,-1156 405,-1156 405,-1103 582,-1103 582,-1156"/>
<text text-anchor="middle" x="493.5" y="-1140.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4714</text>
<text text-anchor="middle" x="493.5" y="-1125.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Encoding of</text>
<text text-anchor="middle" x="493.5" y="-1110.8" font-family="Times,serif" font-size="14.00" fill="#000000">Halo 2 proofs</text>
</a>
</g>
</g>
<!-- zcash/zcash#4707 -->
<g id="node12" class="node">
<title>zcash/zcash#4707</title>
<g id="a_node12"><a xlink:href="https://github.com/zcash/zcash/issues/4707" xlink:title="zcash/zcash#4707&#10;[Orchard] Consensus&#10;specification" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="874.5,-1156 705.5,-1156 705.5,-1103 874.5,-1103 874.5,-1156"/>
<text text-anchor="middle" x="790" y="-1140.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4707</text>
<text text-anchor="middle" x="790" y="-1125.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Orchard] Consensus</text>
<text text-anchor="middle" x="790" y="-1110.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="edge9" class="edge">
<title>zcash/zcash#4714&#45;&gt;zcash/zcash#4707</title>
<path fill="none" stroke="#000000" d="M582.06,-1129.5C617.78,-1129.5 659.05,-1129.5 695.36,-1129.5"/>
<polygon fill="#000000" stroke="#000000" points="695.46,-1133.0001 705.46,-1129.5 695.46,-1126.0001 695.46,-1133.0001"/>
</g>
<!-- zcash/zcash#4707&#45;&gt;zcash/librustzcash#320 -->
<g id="edge10" class="edge">
<title>zcash/zcash#4707&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M874.6,-1131.8C892.74,-1132.3 912.18,-1132.9 931.17,-1133.4"/>
<polygon fill="#000000" stroke="#000000" points="931.2613,-1136.9041 941.36,-1133.7 931.4674,-1129.9071 931.2613,-1136.9041"/>
</g>
<!-- zcash/zcash#4819 -->
<g id="node14" class="node">
<title>zcash/zcash#4819</title>
<g id="a_node14"><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,-1817 55,-1817 55,-1764 250,-1764 250,-1817"/>
<text text-anchor="middle" x="152.5" y="-1801.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#4819</text>
<text text-anchor="middle" x="152.5" y="-1786.8" font-family="Times,serif" font-size="14.00" fill="#000000">Backport upstream PRs</text>
<text text-anchor="middle" x="152.5" y="-1771.8" font-family="Times,serif" font-size="14.00" fill="#000000">that remove Boost usage</text>
</a>
</g>
</g>
<!-- zcash/halo2#144 -->
<g id="node15" class="node">
<title>zcash/halo2#144</title>
<g id="a_node15"><a xlink:href="https://github.com/zcash/halo2/issues/144" xlink:title="zcash/halo2#144&#10;book: Specify proof&#10;encoding" target="_blank">
<polygon fill="#a6cfff" stroke="#000000" stroke-width="2" points="230,-1156 75,-1156 75,-1103 230,-1103 230,-1156"/>
<text text-anchor="middle" x="152.5" y="-1140.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#144</text>
<text text-anchor="middle" x="152.5" y="-1125.8" font-family="Times,serif" font-size="14.00" fill="#000000">book: Specify proof</text>
<text text-anchor="middle" x="152.5" y="-1110.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="edge12" class="edge">
<title>zcash/halo2#144&#45;&gt;zcash/zcash#4714</title>
<path fill="none" stroke="#000000" d="M230.3,-1129.5C279.05,-1129.5 342.31,-1129.5 394.6,-1129.5"/>
<polygon fill="#000000" stroke="#000000" points="394.9,-1133.0001 404.9,-1129.5 394.9,-1126.0001 394.9,-1133.0001"/>
</g>
<!-- zcash/orchard#33 -->
<g id="node16" class="node">
<title>zcash/orchard#33</title>
<g id="a_node16"><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,-627 380.5,-627 380.5,-574 606.5,-574 606.5,-627"/>
<text text-anchor="middle" x="493.5" y="-611.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#33</text>
<text text-anchor="middle" x="493.5" y="-596.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note commitment</text>
<text text-anchor="middle" x="493.5" y="-581.8" font-family="Times,serif" font-size="14.00" fill="#000000">tree logic for Orchard</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018 -->
<g id="node17" class="node">
<title>zcash/zcash#5018</title>
<g id="a_node17"><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,-593 704,-593 704,-510 876,-510 876,-593"/>
<text text-anchor="middle" x="790" y="-577.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5018</text>
<text text-anchor="middle" x="790" y="-562.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="790" y="-547.8" font-family="Times,serif" font-size="14.00" fill="#000000">commitment tree and</text>
<text text-anchor="middle" x="790" y="-532.8" font-family="Times,serif" font-size="14.00" fill="#000000">nullifier set to</text>
<text text-anchor="middle" x="790" y="-517.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="edge13" class="edge">
<title>zcash/orchard#33&#45;&gt;zcash/zcash#5018</title>
<path fill="none" stroke="#000000" d="M606.86,-581.77C635.55,-577.03 666.08,-571.98 693.82,-567.39"/>
<polygon fill="#000000" stroke="#000000" points="694.6109,-570.807 703.91,-565.73 693.4744,-563.8999 694.6109,-570.807"/>
</g>
<!-- zcash/zcash#5037 -->
<g id="node18" class="node">
<title>zcash/zcash#5037</title>
<g id="a_node18"><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,-499 943,-499 943,-446 1143,-446 1143,-499"/>
<text text-anchor="middle" x="1043" y="-483.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5037</text>
<text text-anchor="middle" x="1043" y="-468.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard metadata to</text>
<text text-anchor="middle" x="1043" y="-453.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="edge14" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M876.01,-524.64C899.3,-517.37 924.64,-509.46 948.38,-502.05"/>
<polygon fill="#000000" stroke="#000000" points="949.5925,-505.338 958.09,-499.01 947.501,-498.6577 949.5925,-505.338"/>
</g>
<!-- zcash/zcash#5197 -->
<g id="node19" class="node">
<title>zcash/zcash#5197</title>
<g id="a_node19"><a xlink:href="https://github.com/zcash/zcash/issues/5197" xlink:title="zcash/zcash#5197&#10;Implement NU5 block&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1131,-570 955,-570 955,-517 1131,-517 1131,-570"/>
<text text-anchor="middle" x="1043" y="-554.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5197</text>
<text text-anchor="middle" x="1043" y="-539.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement NU5 block</text>
<text text-anchor="middle" x="1043" y="-524.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5018&#45;&gt;zcash/zcash#5197 -->
<g id="edge15" class="edge">
<title>zcash/zcash#5018&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M876.01,-548.78C898,-548.09 921.81,-547.33 944.38,-546.62"/>
<polygon fill="#000000" stroke="#000000" points="944.7676,-550.1094 954.65,-546.29 944.5427,-543.1131 944.7676,-550.1094"/>
</g>
<!-- zcash/zcash#5037&#45;&gt;zcash/zcash#5024 -->
<g id="edge16" class="edge">
<title>zcash/zcash#5037&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1139.1,-499.08C1143.6,-501.64 1148,-504.44 1152,-507.5 1216.7,-556.51 1261.5,-643.07 1283,-691.72"/>
<polygon fill="#000000" stroke="#000000" points="1279.8029,-693.1449 1287,-700.92 1286.2224,-690.3537 1279.8029,-693.1449"/>
</g>
<!-- zcash/zcash#5197&#45;&gt;zcash/zcash#5024 -->
<g id="edge17" class="edge">
<title>zcash/zcash#5197&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1131.2,-568.53C1138.5,-571.8 1145.5,-575.45 1152,-579.5 1200.5,-609.68 1244.7,-659.25 1271.4,-692.61"/>
<polygon fill="#000000" stroke="#000000" points="1268.861,-695.0428 1277.8,-700.73 1274.3586,-690.7096 1268.861,-695.0428"/>
</g>
<!-- zcash/orchard#32 -->
<g id="node20" class="node">
<title>zcash/orchard#32</title>
<g id="a_node20"><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,-1306 684,-1306 684,-1253 896,-1253 896,-1306"/>
<text text-anchor="middle" x="790" y="-1290.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#32</text>
<text text-anchor="middle" x="790" y="-1275.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement note encryption</text>
<text text-anchor="middle" x="790" y="-1260.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="edge18" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/orchard#35</title>
<path fill="none" stroke="#000000" d="M895.1,-1252.9C913.43,-1248.3 932.37,-1243.5 950.33,-1238.9"/>
<polygon fill="#000000" stroke="#000000" points="951.3655,-1242.2483 960.2,-1236.4 949.6467,-1235.4626 951.3655,-1242.2483"/>
</g>
<!-- zcash/zcash#5020 -->
<g id="node21" class="node">
<title>zcash/zcash#5020</title>
<g id="a_node21"><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,-1328.5 947,-1328.5 947,-1260.5 1139,-1260.5 1139,-1328.5"/>
<text text-anchor="middle" x="1043" y="-1313.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5020</text>
<text text-anchor="middle" x="1043" y="-1298.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard note</text>
<text text-anchor="middle" x="1043" y="-1283.3" font-family="Times,serif" font-size="14.00" fill="#000000">detection and storage to</text>
<text text-anchor="middle" x="1043" y="-1268.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="edge19" class="edge">
<title>zcash/orchard#32&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M896.2,-1285.8C909.56,-1286.6 923.23,-1287.4 936.6,-1288.2"/>
<polygon fill="#000000" stroke="#000000" points="936.5609,-1291.7037 946.75,-1288.8 936.974,-1284.7159 936.5609,-1291.7037"/>
</g>
<!-- zcash/zcash#5019 -->
<g id="node22" class="node">
<title>zcash/zcash#5019</title>
<g id="a_node22"><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,-1441 698.5,-1441 698.5,-1388 881.5,-1388 881.5,-1441"/>
<text text-anchor="middle" x="790" y="-1425.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5019</text>
<text text-anchor="middle" x="790" y="-1410.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add Orchard keys and</text>
<text text-anchor="middle" x="790" y="-1395.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="edge21" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5023</title>
<path fill="none" stroke="#000000" d="M881.75,-1398.9C1020.1,-1375.3 1281.9,-1330.7 1432.7,-1305.1"/>
<polygon fill="#000000" stroke="#000000" points="1433.6604,-1308.4847 1442.9,-1303.3 1432.4439,-1301.5912 1433.6604,-1308.4847"/>
</g>
<!-- zcash/zcash#5019&#45;&gt;zcash/zcash#5020 -->
<g id="edge20" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5020</title>
<path fill="none" stroke="#000000" d="M841.69,-1387.9C868.99,-1374 903.14,-1357 934,-1342.5 940.91,-1339.3 948.09,-1335.9 955.32,-1332.7"/>
<polygon fill="#000000" stroke="#000000" points="956.8627,-1335.8432 964.5,-1328.5 953.9504,-1329.4778 956.8627,-1335.8432"/>
</g>
<!-- zcash/zcash#5179 -->
<g id="node23" class="node">
<title>zcash/zcash#5179</title>
<g id="a_node23"><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,-1530.5 942,-1530.5 942,-1462.5 1144,-1462.5 1144,-1530.5"/>
<text text-anchor="middle" x="1043" y="-1515.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5179</text>
<text text-anchor="middle" x="1043" y="-1500.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add Unified Address key</text>
<text text-anchor="middle" x="1043" y="-1485.3" font-family="Times,serif" font-size="14.00" fill="#000000">generation and storage to</text>
<text text-anchor="middle" x="1043" y="-1470.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="edge22" class="edge">
<title>zcash/zcash#5019&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M871.79,-1441C890.99,-1447.2 911.75,-1454 931.99,-1460.5"/>
<polygon fill="#000000" stroke="#000000" points="930.958,-1463.8447 941.55,-1463.6 933.1172,-1457.186 930.958,-1463.8447"/>
</g>
<!-- zcash/zcash#5178 -->
<g id="node24" class="node">
<title>zcash/zcash#5178</title>
<g id="a_node24"><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,-1723.5 1188,-1723.5 1188,-1685.5 1407,-1685.5 1407,-1723.5"/>
<text text-anchor="middle" x="1297.5" y="-1708.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5178</text>
<text text-anchor="middle" x="1297.5" y="-1693.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="edge23" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1136.9,-1530.5C1142.4,-1534.7 1147.5,-1539.3 1152,-1544.5 1191.7,-1590.6 1144.7,-1633.8 1188,-1676.5 1188.9,-1677.4 1189.9,-1678.3 1190.9,-1679.2"/>
<polygon fill="#000000" stroke="#000000" points="1188.9063,-1682.0801 1199,-1685.3 1193.1174,-1676.4883 1188.9063,-1682.0801"/>
</g>
<!-- zcash/zcash#5182 -->
<g id="node25" class="node">
<title>zcash/zcash#5182</title>
<g id="a_node25"><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,-1667 1204,-1667 1204,-1614 1391,-1614 1391,-1667"/>
<text text-anchor="middle" x="1297.5" y="-1651.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5182</text>
<text text-anchor="middle" x="1297.5" y="-1636.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1621.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="edge24" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1133,-1530.5C1139.7,-1534.7 1146.2,-1539.4 1152,-1544.5 1175.3,-1565.1 1163.7,-1585.1 1188,-1604.5 1190.3,-1606.3 1192.7,-1608.1 1195.2,-1609.8"/>
<polygon fill="#000000" stroke="#000000" points="1193.539,-1612.8864 1203.9,-1615.1 1197.1808,-1606.9083 1193.539,-1612.8864"/>
</g>
<!-- zcash/zcash#5185 -->
<g id="node26" class="node">
<title>zcash/zcash#5185</title>
<g id="a_node26"><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,-1595.5 1203,-1595.5 1203,-1527.5 1392,-1527.5 1392,-1595.5"/>
<text text-anchor="middle" x="1297.5" y="-1580.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5185</text>
<text text-anchor="middle" x="1297.5" y="-1565.3" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for funding</text>
<text text-anchor="middle" x="1297.5" y="-1550.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="-1535.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="edge25" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1144.3,-1522.4C1160.3,-1526.5 1176.8,-1530.7 1192.8,-1534.8"/>
<polygon fill="#000000" stroke="#000000" points="1192.1474,-1538.245 1202.7,-1537.3 1193.8613,-1531.4581 1192.1474,-1538.245"/>
</g>
<!-- zcash/zcash#5180 -->
<g id="node27" class="node">
<title>zcash/zcash#5180</title>
<g id="a_node27"><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,-1509 1203.5,-1509 1203.5,-1456 1391.5,-1456 1391.5,-1509"/>
<text text-anchor="middle" x="1297.5" y="-1493.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5180</text>
<text text-anchor="middle" x="1297.5" y="-1478.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1463.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="edge26" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5180</title>
<path fill="none" stroke="#000000" d="M1144.3,-1490.9C1160.2,-1490.1 1176.7,-1489.1 1192.7,-1488.3"/>
<polygon fill="#000000" stroke="#000000" points="1193.3182,-1491.7702 1203.1,-1487.7 1192.915,-1484.7819 1193.3182,-1491.7702"/>
</g>
<!-- zcash/zcash#5183 -->
<g id="node28" class="node">
<title>zcash/zcash#5183</title>
<g id="a_node28"><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,-1438 1203.5,-1438 1203.5,-1385 1391.5,-1385 1391.5,-1438"/>
<text text-anchor="middle" x="1297.5" y="-1422.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5183</text>
<text text-anchor="middle" x="1297.5" y="-1407.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1392.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="edge27" class="edge">
<title>zcash/zcash#5179&#45;&gt;zcash/zcash#5183</title>
<path fill="none" stroke="#000000" d="M1143.6,-1462.4C1158.5,-1457.4 1173.6,-1452.3 1188,-1447.5 1194,-1445.5 1200.3,-1443.4 1206.6,-1441.3"/>
<polygon fill="#000000" stroke="#000000" points="1207.9804,-1444.5312 1216.4,-1438.1 1205.8075,-1437.877 1207.9804,-1444.5312"/>
</g>
<!-- zcash/orchard#36 -->
<g id="node29" class="node">
<title>zcash/orchard#36</title>
<g id="a_node29"><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,-1624.5 396.5,-1624.5 396.5,-1556.5 590.5,-1556.5 590.5,-1624.5"/>
<text text-anchor="middle" x="493.5" y="-1609.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#36</text>
<text text-anchor="middle" x="493.5" y="-1594.3" font-family="Times,serif" font-size="14.00" fill="#000000">Parsing and serialization</text>
<text text-anchor="middle" x="493.5" y="-1579.3" font-family="Times,serif" font-size="14.00" fill="#000000">of Orchard keys and</text>
<text text-anchor="middle" x="493.5" y="-1564.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="edge28" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M590.61,-1561.5C610.59,-1552.3 630.3,-1540.5 646,-1525.5 672.72,-1499.9 654.26,-1475 682,-1450.5 684.48,-1448.3 687.1,-1446.3 689.83,-1444.3"/>
<polygon fill="#000000" stroke="#000000" points="691.7605,-1447.2201 698.32,-1438.9 688.0037,-1441.3136 691.7605,-1447.2201"/>
</g>
<!-- zcash/librustzcash#371 -->
<g id="node30" class="node">
<title>zcash/librustzcash#371</title>
<g id="a_node30"><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,-1725.5 696,-1725.5 696,-1657.5 884,-1657.5 884,-1725.5"/>
<text text-anchor="middle" x="790" y="-1710.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#371</text>
<text text-anchor="middle" x="790" y="-1695.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement parsing and</text>
<text text-anchor="middle" x="790" y="-1680.3" font-family="Times,serif" font-size="14.00" fill="#000000">serialization of Unified</text>
<text text-anchor="middle" x="790" y="-1665.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="edge29" class="edge">
<title>zcash/orchard#36&#45;&gt;zcash/librustzcash#371</title>
<path fill="none" stroke="#000000" d="M590.59,-1623.6C621.27,-1634 655.29,-1645.6 686.42,-1656.2"/>
<polygon fill="#000000" stroke="#000000" points="685.3853,-1659.5454 695.98,-1659.5 687.6694,-1652.9285 685.3853,-1659.5454"/>
</g>
<!-- zcash/zcash#5133 -->
<g id="node31" class="node">
<title>zcash/zcash#5133</title>
<g id="a_node31"><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,-1738.5 935.5,-1738.5 935.5,-1670.5 1150.5,-1670.5 1150.5,-1738.5"/>
<text text-anchor="middle" x="1043" y="-1723.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5133</text>
<text text-anchor="middle" x="1043" y="-1708.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1043" y="-1693.3" font-family="Times,serif" font-size="14.00" fill="#000000">parsing and serialization</text>
<text text-anchor="middle" x="1043" y="-1678.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="edge30" class="edge">
<title>zcash/librustzcash#371&#45;&gt;zcash/zcash#5133</title>
<path fill="none" stroke="#000000" d="M884.21,-1696.3C897.42,-1697 911.13,-1697.7 924.72,-1698.4"/>
<polygon fill="#000000" stroke="#000000" points="924.8842,-1701.9153 935.07,-1699 925.2894,-1694.927 924.8842,-1701.9153"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5178 -->
<g id="edge31" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5178</title>
<path fill="none" stroke="#000000" d="M1150.6,-1704.5C1159.5,-1704.5 1168.6,-1704.5 1177.7,-1704.5"/>
<polygon fill="#000000" stroke="#000000" points="1177.9,-1708.0001 1187.9,-1704.5 1177.9,-1701.0001 1177.9,-1708.0001"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5182 -->
<g id="edge32" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5182</title>
<path fill="none" stroke="#000000" d="M1150.6,-1677.5C1164.9,-1673.8 1179.6,-1670.2 1193.8,-1666.6"/>
<polygon fill="#000000" stroke="#000000" points="1194.7755,-1669.9633 1203.6,-1664.1 1193.0451,-1663.1805 1194.7755,-1669.9633"/>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5185 -->
<g id="edge33" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5185</title>
<path fill="none" stroke="#000000" d="M1087.4,-1670.4C1115.4,-1650 1152.6,-1624.4 1188,-1605.5 1191.5,-1603.6 1195.1,-1601.8 1198.8,-1600"/>
<polygon fill="#000000" stroke="#000000" points="1200.4888,-1603.0721 1208,-1595.6 1197.4685,-1596.7571 1200.4888,-1603.0721"/>
</g>
<!-- zcash/zcash#5181 -->
<g id="node32" class="node">
<title>zcash/zcash#5181</title>
<g id="a_node32"><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,-1937 1212.5,-1937 1212.5,-1884 1382.5,-1884 1382.5,-1937"/>
<text text-anchor="middle" x="1297.5" y="-1921.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5181</text>
<text text-anchor="middle" x="1297.5" y="-1906.8" font-family="Times,serif" font-size="14.00" fill="#000000">New RPC:</text>
<text text-anchor="middle" x="1297.5" y="-1891.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="edge34" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5181</title>
<path fill="none" stroke="#000000" d="M1063.6,-1738.7C1088.4,-1777.3 1133.8,-1839.3 1188,-1875.5 1192.8,-1878.7 1198,-1881.7 1203.3,-1884.4"/>
<polygon fill="#000000" stroke="#000000" points="1201.9496,-1887.6309 1212.5,-1888.6 1204.8567,-1881.2631 1201.9496,-1887.6309"/>
</g>
<!-- zcash/zcash#5184 -->
<g id="node33" class="node">
<title>zcash/zcash#5184</title>
<g id="a_node33"><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,-1866 1197.5,-1866 1197.5,-1813 1397.5,-1813 1397.5,-1866"/>
<text text-anchor="middle" x="1297.5" y="-1850.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5184</text>
<text text-anchor="middle" x="1297.5" y="-1835.8" font-family="Times,serif" font-size="14.00" fill="#000000">Add support for UA</text>
<text text-anchor="middle" x="1297.5" y="-1820.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="edge35" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5184</title>
<path fill="none" stroke="#000000" d="M1085.3,-1738.7C1113.2,-1759.9 1151.2,-1786.4 1188,-1804.5 1191.1,-1806 1194.4,-1807.5 1197.6,-1809"/>
<polygon fill="#000000" stroke="#000000" points="1196.4221,-1812.3005 1207,-1812.9 1199.1047,-1805.8349 1196.4221,-1812.3005"/>
</g>
<!-- zcash/zcash#5191 -->
<g id="node34" class="node">
<title>zcash/zcash#5191</title>
<g id="a_node34"><a xlink:href="https://github.com/zcash/zcash/issues/5191" xlink:title="zcash/zcash#5191&#10;z_getbalance: Return&#10;error if given a UA" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1382,-1795 1213,-1795 1213,-1742 1382,-1742 1382,-1795"/>
<text text-anchor="middle" x="1297.5" y="-1779.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5191</text>
<text text-anchor="middle" x="1297.5" y="-1764.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_getbalance: Return</text>
<text text-anchor="middle" x="1297.5" y="-1749.8" font-family="Times,serif" font-size="14.00" fill="#000000">error if given a UA</text>
</a>
</g>
</g>
<!-- zcash/zcash#5133&#45;&gt;zcash/zcash#5191 -->
<g id="edge36" class="edge">
<title>zcash/zcash#5133&#45;&gt;zcash/zcash#5191</title>
<path fill="none" stroke="#000000" d="M1150.6,-1731.5C1167.9,-1735.9 1185.8,-1740.4 1202.8,-1744.7"/>
<polygon fill="#000000" stroke="#000000" points="1202.1474,-1748.145 1212.7,-1747.2 1203.8613,-1741.3581 1202.1474,-1748.145"/>
</g>
<!-- zcash/zcash#5022 -->
<g id="node35" class="node">
<title>zcash/zcash#5022</title>
<g id="a_node35"><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,-866.5 712.5,-866.5 712.5,-798.5 867.5,-798.5 867.5,-866.5"/>
<text text-anchor="middle" x="790" y="-851.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5022</text>
<text text-anchor="middle" x="790" y="-836.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="790" y="-821.3" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format</text>
<text text-anchor="middle" x="790" y="-806.3" font-family="Times,serif" font-size="14.00" fill="#000000">changes in zcashd.</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5195 -->
<g id="edge37" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5195</title>
<path fill="none" stroke="#000000" d="M867.72,-854.25C878.84,-859.85 889.41,-866.83 898,-875.5 929.19,-906.99 902.88,-936.94 934,-968.5 935.1,-969.61 936.23,-970.7 937.38,-971.76"/>
<polygon fill="#000000" stroke="#000000" points="935.4649,-974.7168 945.41,-978.37 939.9137,-969.3123 935.4649,-974.7168"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5021 -->
<g id="edge38" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5021</title>
<path fill="none" stroke="#000000" d="M867.72,-852.31C879.19,-858.17 889.86,-865.73 898,-875.5 950.22,-938.18 875.6,-998.53 934,-1055.5 1004.4,-1124.2 1062.8,-1052 1152,-1093.5 1197.3,-1114.5 1239.9,-1153.4 1267.2,-1181.6"/>
<polygon fill="#000000" stroke="#000000" points="1264.6872,-1184.0368 1274.1,-1188.9 1269.7744,-1179.2284 1264.6872,-1184.0368"/>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5197 -->
<g id="edge39" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5197</title>
<path fill="none" stroke="#000000" d="M846.5,-798.41C865.53,-784.28 885.16,-766.29 898,-745.5 937.66,-681.26 883.51,-635.62 934,-579.5 937.71,-575.38 941.9,-571.73 946.42,-568.5"/>
<polygon fill="#000000" stroke="#000000" points="948.3199,-571.4396 954.88,-563.12 944.5636,-565.5328 948.3199,-571.4396"/>
</g>
<!-- zcash/zcash#5196 -->
<g id="node36" class="node">
<title>zcash/zcash#5196</title>
<g id="a_node36"><a xlink:href="https://github.com/zcash/zcash/issues/5196" xlink:title="zcash/zcash#5196&#10;Implement v5 transaction&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1144.5,-859 941.5,-859 941.5,-806 1144.5,-806 1144.5,-859"/>
<text text-anchor="middle" x="1043" y="-843.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5196</text>
<text text-anchor="middle" x="1043" y="-828.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement v5 transaction</text>
<text text-anchor="middle" x="1043" y="-813.8" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5196 -->
<g id="edge40" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5196</title>
<path fill="none" stroke="#000000" d="M867.63,-832.5C887.69,-832.5 909.69,-832.5 931.13,-832.5"/>
<polygon fill="#000000" stroke="#000000" points="931.26,-836.0001 941.26,-832.5 931.26,-829.0001 931.26,-836.0001"/>
</g>
<!-- zcash/zcash#5194 -->
<g id="node37" class="node">
<title>zcash/zcash#5194</title>
<g id="a_node37"><a xlink:href="https://github.com/zcash/zcash/issues/5194" xlink:title="zcash/zcash#5194&#10;Implement Orchard&#10;signature verification&#10;consensus rules" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1128.5,-656.5 957.5,-656.5 957.5,-588.5 1128.5,-588.5 1128.5,-656.5"/>
<text text-anchor="middle" x="1043" y="-641.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5194</text>
<text text-anchor="middle" x="1043" y="-626.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Orchard</text>
<text text-anchor="middle" x="1043" y="-611.3" font-family="Times,serif" font-size="14.00" fill="#000000">signature verification</text>
<text text-anchor="middle" x="1043" y="-596.3" font-family="Times,serif" font-size="14.00" fill="#000000">consensus rules</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5194 -->
<g id="edge41" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5194</title>
<path fill="none" stroke="#000000" d="M841.99,-798.49C861.4,-783.91 882.47,-765.6 898,-745.5 921.84,-714.65 905.79,-692.41 934,-665.5 938.38,-661.32 943.22,-657.53 948.36,-654.09"/>
<polygon fill="#000000" stroke="#000000" points="950.5421,-656.8572 957.23,-648.64 946.8775,-650.893 950.5421,-656.8572"/>
</g>
<!-- zcash/zcash#5198 -->
<g id="node38" class="node">
<title>zcash/zcash#5198</title>
<g id="a_node38"><a xlink:href="https://github.com/zcash/zcash/issues/5198" xlink:title="zcash/zcash#5198&#10;Switch to a `(txid,&#10;auth_digest)` identifier&#10;in places where the node&#10;needs to commit to a&#10;specific instance of a&#10;transaction" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1141,-788 945,-788 945,-675 1141,-675 1141,-788"/>
<text text-anchor="middle" x="1043" y="-772.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5198</text>
<text text-anchor="middle" x="1043" y="-757.8" font-family="Times,serif" font-size="14.00" fill="#000000">Switch to a `(txid,</text>
<text text-anchor="middle" x="1043" y="-742.8" font-family="Times,serif" font-size="14.00" fill="#000000">auth_digest)` identifier</text>
<text text-anchor="middle" x="1043" y="-727.8" font-family="Times,serif" font-size="14.00" fill="#000000">in places where the node</text>
<text text-anchor="middle" x="1043" y="-712.8" font-family="Times,serif" font-size="14.00" fill="#000000">needs to commit to a</text>
<text text-anchor="middle" x="1043" y="-697.8" font-family="Times,serif" font-size="14.00" fill="#000000">specific instance of a</text>
<text text-anchor="middle" x="1043" y="-682.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5198 -->
<g id="edge42" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5198</title>
<path fill="none" stroke="#000000" d="M867.63,-801.51C889.08,-792.95 912.74,-783.5 935.55,-774.39"/>
<polygon fill="#000000" stroke="#000000" points="936.9374,-777.6048 944.93,-770.65 934.3448,-771.1026 936.9374,-777.6048"/>
</g>
<!-- zcash/zcash#5199 -->
<g id="node39" class="node">
<title>zcash/zcash#5199</title>
<g id="a_node39"><a xlink:href="https://github.com/zcash/zcash/issues/5199" xlink:title="zcash/zcash#5199&#10;[ZIP 239] Relay v5+&#10;transactions with a&#10;(txid, auth_digest) tuple&#10;(or digest thereof)" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1137.5,-960 948.5,-960 948.5,-877 1137.5,-877 1137.5,-960"/>
<text text-anchor="middle" x="1043" y="-944.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5199</text>
<text text-anchor="middle" x="1043" y="-929.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 239] Relay v5+</text>
<text text-anchor="middle" x="1043" y="-914.8" font-family="Times,serif" font-size="14.00" fill="#000000">transactions with a</text>
<text text-anchor="middle" x="1043" y="-899.8" font-family="Times,serif" font-size="14.00" fill="#000000">(txid, auth_digest) tuple</text>
<text text-anchor="middle" x="1043" y="-884.8" font-family="Times,serif" font-size="14.00" fill="#000000">(or digest thereof)</text>
</a>
</g>
</g>
<!-- zcash/zcash#5022&#45;&gt;zcash/zcash#5199 -->
<g id="edge43" class="edge">
<title>zcash/zcash#5022&#45;&gt;zcash/zcash#5199</title>
<path fill="none" stroke="#000000" d="M867.63,-858.89C889.97,-866.48 914.71,-874.89 938.4,-882.94"/>
<polygon fill="#000000" stroke="#000000" points="937.5255,-886.3395 948.12,-886.25 939.7821,-879.7132 937.5255,-886.3395"/>
</g>
<!-- zcash/zcash#5196&#45;&gt;zcash/zcash#5024 -->
<g id="edge44" class="edge">
<title>zcash/zcash#5196&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1127,-805.93C1135.5,-802.89 1144,-799.72 1152,-796.5 1180.2,-785.21 1210.7,-771.07 1236.4,-758.54"/>
<polygon fill="#000000" stroke="#000000" points="1238.249,-761.5322 1245.7,-754 1235.1782,-755.2417 1238.249,-761.5322"/>
</g>
<!-- zcash/zcash#5194&#45;&gt;zcash/zcash#5024 -->
<g id="edge45" class="edge">
<title>zcash/zcash#5194&#45;&gt;zcash/zcash#5024</title>
<path fill="none" stroke="#000000" d="M1128.8,-656.08C1136.6,-659.24 1144.5,-662.41 1152,-665.5 1176.4,-675.53 1203.1,-686.78 1226.8,-696.91"/>
<polygon fill="#000000" stroke="#000000" points="1225.5288,-700.1729 1236.1,-700.88 1228.2771,-693.7349 1225.5288,-700.1729"/>
</g>
<!-- zcash/orchard#30 -->
<g id="node40" class="node">
<title>zcash/orchard#30</title>
<g id="a_node40"><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,-1441 407.5,-1441 407.5,-1388 579.5,-1388 579.5,-1441"/>
<text text-anchor="middle" x="493.5" y="-1425.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#30</text>
<text text-anchor="middle" x="493.5" y="-1410.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 32 for</text>
<text text-anchor="middle" x="493.5" y="-1395.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="edge46" class="edge">
<title>zcash/orchard#30&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M579.66,-1414.5C613.58,-1414.5 652.8,-1414.5 688.12,-1414.5"/>
<polygon fill="#000000" stroke="#000000" points="688.45,-1418.0001 698.45,-1414.5 688.45,-1411.0001 688.45,-1418.0001"/>
</g>
<!-- zcash/zcash#2534 -->
<g id="node41" class="node">
<title>zcash/zcash#2534</title>
<g id="a_node41"><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,-2025 52.5,-2025 52.5,-2021 48.5,-2021 48.5,-2017 52.5,-2017 52.5,-1980 48.5,-1980 48.5,-1976 52.5,-1976 52.5,-1972 252.5,-1972 252.5,-2025"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-2021 56.5,-2021 56.5,-2017 52.5,-2017 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="52.5,-1980 56.5,-1980 56.5,-1976 52.5,-1976 "/>
<text text-anchor="middle" x="152.5" y="-2009.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2534</text>
<text text-anchor="middle" x="152.5" y="-1994.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="-1979.8" font-family="Times,serif" font-size="14.00" fill="#000000">1</text>
</a>
</g>
</g>
<!-- zcash/zcash#5003 -->
<g id="node42" class="node">
<title>zcash/zcash#5003</title>
<g id="a_node42"><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,-2053 387.5,-2053 387.5,-2049 383.5,-2049 383.5,-2045 387.5,-2045 387.5,-2008 383.5,-2008 383.5,-2004 387.5,-2004 387.5,-2000 599.5,-2000 599.5,-2053"/>
<polyline fill="none" stroke="#000000" points="387.5,-2049 391.5,-2049 391.5,-2045 387.5,-2045 "/>
<polyline fill="none" stroke="#000000" points="387.5,-2008 391.5,-2008 391.5,-2004 387.5,-2004 "/>
<text text-anchor="middle" x="493.5" y="-2037.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5003</text>
<text text-anchor="middle" x="493.5" y="-2022.8" font-family="Times,serif" font-size="14.00" fill="#000000">net: prerequisites for</text>
<text text-anchor="middle" x="493.5" y="-2007.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="edge47" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5003</title>
<path fill="none" stroke="#000000" d="M252.51,-2006.7C291.55,-2009.9 336.58,-2013.6 377.07,-2016.9"/>
<polygon fill="#000000" stroke="#000000" points="376.9908,-2020.4065 387.26,-2017.8 377.6067,-2013.4337 376.9908,-2020.4065"/>
</g>
<!-- zcash/zcash#5005 -->
<g id="node43" class="node">
<title>zcash/zcash#5005</title>
<g id="a_node43"><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,-1976.5 694.5,-1976.5 694.5,-1972.5 690.5,-1972.5 690.5,-1968.5 694.5,-1968.5 694.5,-1916.5 690.5,-1916.5 690.5,-1912.5 694.5,-1912.5 694.5,-1908.5 885.5,-1908.5 885.5,-1976.5"/>
<polyline fill="none" stroke="#000000" points="694.5,-1972.5 698.5,-1972.5 698.5,-1968.5 694.5,-1968.5 "/>
<polyline fill="none" stroke="#000000" points="694.5,-1916.5 698.5,-1916.5 698.5,-1912.5 694.5,-1912.5 "/>
<text text-anchor="middle" x="790" y="-1961.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5005</text>
<text text-anchor="middle" x="790" y="-1946.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Split DNS resolving</text>
<text text-anchor="middle" x="790" y="-1931.3" font-family="Times,serif" font-size="14.00" fill="#000000">functionality out of net</text>
<text text-anchor="middle" x="790" y="-1916.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="edge48" class="edge">
<title>zcash/zcash#2534&#45;&gt;zcash/zcash#5005</title>
<path fill="none" stroke="#000000" d="M252.81,-1989.7C370.36,-1979.4 564.27,-1962.3 684.15,-1951.8"/>
<polygon fill="#000000" stroke="#000000" points="684.783,-1955.2581 694.44,-1950.9 684.173,-1948.2847 684.783,-1955.2581"/>
</g>
<!-- zcash/zcash#5004 -->
<g id="node44" class="node">
<title>zcash/zcash#5004</title>
<g id="a_node44"><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,-2078 703,-2078 703,-2074 699,-2074 699,-2070 703,-2070 703,-2003 699,-2003 699,-1999 703,-1999 703,-1995 877,-1995 877,-2078"/>
<polyline fill="none" stroke="#000000" points="703,-2074 707,-2074 707,-2070 703,-2070 "/>
<polyline fill="none" stroke="#000000" points="703,-2003 707,-2003 707,-1999 703,-1999 "/>
<text text-anchor="middle" x="790" y="-2062.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5004</text>
<text text-anchor="middle" x="790" y="-2047.8" font-family="Times,serif" font-size="14.00" fill="#000000">Verify that expected</text>
<text text-anchor="middle" x="790" y="-2032.8" font-family="Times,serif" font-size="14.00" fill="#000000">services are available</text>
<text text-anchor="middle" x="790" y="-2017.8" font-family="Times,serif" font-size="14.00" fill="#000000">from peer nodes &amp;</text>
<text text-anchor="middle" x="790" y="-2002.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="edge49" class="edge">
<title>zcash/zcash#5003&#45;&gt;zcash/zcash#5004</title>
<path fill="none" stroke="#000000" d="M599.71,-2030.1C629.88,-2031.1 662.59,-2032.2 692.24,-2033.2"/>
<polygon fill="#000000" stroke="#000000" points="692.4623,-2036.7111 702.59,-2033.6 692.7327,-2029.7163 692.4623,-2036.7111"/>
</g>
<!-- zcash/zcash#5006 -->
<g id="node45" class="node">
<title>zcash/zcash#5006</title>
<g id="a_node45"><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,-2008.5 934,-2008.5 934,-2004.5 930,-2004.5 930,-2000.5 934,-2000.5 934,-1978.5 930,-1978.5 930,-1974.5 934,-1974.5 934,-1970.5 1152,-1970.5 1152,-2008.5"/>
<polyline fill="none" stroke="#000000" points="934,-2004.5 938,-2004.5 938,-2000.5 934,-2000.5 "/>
<polyline fill="none" stroke="#000000" points="934,-1978.5 938,-1978.5 938,-1974.5 934,-1974.5 "/>
<text text-anchor="middle" x="1043" y="-1993.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5006</text>
<text text-anchor="middle" x="1043" y="-1978.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="edge50" class="edge">
<title>zcash/zcash#5005&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M885.65,-1960.3C900.2,-1963 915.33,-1965.8 930.21,-1968.5"/>
<polygon fill="#000000" stroke="#000000" points="929.9748,-1972.02 940.46,-1970.5 931.3154,-1965.1496 929.9748,-1972.02"/>
</g>
<!-- zcash/zcash#5004&#45;&gt;zcash/zcash#5006 -->
<g id="edge51" class="edge">
<title>zcash/zcash#5004&#45;&gt;zcash/zcash#5006</title>
<path fill="none" stroke="#000000" d="M877.07,-2020.3C894.31,-2017.1 912.65,-2013.7 930.6,-2010.4"/>
<polygon fill="#000000" stroke="#000000" points="931.3569,-2013.8187 940.52,-2008.5 930.0401,-2006.9437 931.3569,-2013.8187"/>
</g>
<!-- zcash/zcash#5008 -->
<g id="node46" class="node">
<title>zcash/zcash#5008</title>
<g id="a_node46"><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,-2023.5 1203,-2023.5 1203,-2019.5 1199,-2019.5 1199,-2015.5 1203,-2015.5 1203,-1963.5 1199,-1963.5 1199,-1959.5 1203,-1959.5 1203,-1955.5 1392,-1955.5 1392,-2023.5"/>
<polyline fill="none" stroke="#000000" points="1203,-2019.5 1207,-2019.5 1207,-2015.5 1203,-2015.5 "/>
<polyline fill="none" stroke="#000000" points="1203,-1963.5 1207,-1963.5 1207,-1959.5 1203,-1959.5 "/>
<text text-anchor="middle" x="1297.5" y="-2008.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5008</text>
<text text-anchor="middle" x="1297.5" y="-1993.3" font-family="Times,serif" font-size="14.00" fill="#000000">net: Feeler connections</text>
<text text-anchor="middle" x="1297.5" y="-1978.3" font-family="Times,serif" font-size="14.00" fill="#000000">to increase online addrs</text>
<text text-anchor="middle" x="1297.5" y="-1963.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="edge52" class="edge">
<title>zcash/zcash#5006&#45;&gt;zcash/zcash#5008</title>
<path fill="none" stroke="#000000" d="M1152,-1989.5C1165.5,-1989.5 1179.2,-1989.5 1192.6,-1989.5"/>
<polygon fill="#000000" stroke="#000000" points="1192.7,-1993.0001 1202.7,-1989.5 1192.7,-1986.0001 1192.7,-1993.0001"/>
</g>
<!-- zcash/librustzcash#368 -->
<g id="node47" class="node">
<title>zcash/librustzcash#368</title>
<g id="a_node47"><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,-492 696,-492 696,-439 884,-439 884,-492"/>
<text text-anchor="middle" x="790" y="-476.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#368</text>
<text text-anchor="middle" x="790" y="-461.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_history: Add</text>
<text text-anchor="middle" x="790" y="-446.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="edge53" class="edge">
<title>zcash/librustzcash#368&#45;&gt;zcash/zcash#5037</title>
<path fill="none" stroke="#000000" d="M884.21,-468.11C900.03,-468.54 916.58,-469 932.76,-469.45"/>
<polygon fill="#000000" stroke="#000000" points="932.6861,-472.9492 942.78,-469.73 932.8817,-465.9519 932.6861,-472.9492"/>
</g>
<!-- zcash/orchard#45 -->
<g id="node48" class="node">
<title>zcash/orchard#45</title>
<g id="a_node48"><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,-744.5 385,-744.5 385,-706.5 602,-706.5 602,-744.5"/>
<text text-anchor="middle" x="493.5" y="-729.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#45</text>
<text text-anchor="middle" x="493.5" y="-714.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="edge54" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M542.32,-744.62C576.43,-760.47 620.31,-786.29 646,-822.5 686.67,-879.83 637.41,-922.17 682,-976.5 687.19,-982.82 693.37,-988.36 700.11,-993.21"/>
<polygon fill="#000000" stroke="#000000" points="698.6302,-996.4255 708.91,-998.99 702.4732,-990.5747 698.6302,-996.4255"/>
</g>
<!-- zcash/halo2#79 -->
<g id="node49" class="node">
<title>zcash/halo2#79</title>
<g id="a_node49"><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,-737 709.5,-737 709.5,-654 870.5,-654 870.5,-737"/>
<text text-anchor="middle" x="790" y="-721.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#79</text>
<text text-anchor="middle" x="790" y="-706.8" font-family="Times,serif" font-size="14.00" fill="#000000">Migrate Rescue and</text>
<text text-anchor="middle" x="790" y="-691.8" font-family="Times,serif" font-size="14.00" fill="#000000">Poseidon gadgets to</text>
<text text-anchor="middle" x="790" y="-676.8" font-family="Times,serif" font-size="14.00" fill="#000000">algebraic hash</text>
<text text-anchor="middle" x="790" y="-661.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="edge55" class="edge">
<title>zcash/orchard#45&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M602.22,-714.5C634,-711.28 668.39,-707.8 698.95,-704.71"/>
<polygon fill="#000000" stroke="#000000" points="699.5618,-708.1661 709.16,-703.68 698.8592,-701.2015 699.5618,-708.1661"/>
</g>
<!-- zcash/zcash#5034 -->
<g id="node50" class="node">
<title>zcash/zcash#5034</title>
<g id="a_node50"><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,-2134.5 56,-2134.5 56,-2130.5 52,-2130.5 52,-2126.5 56,-2126.5 56,-2104.5 52,-2104.5 52,-2100.5 56,-2100.5 56,-2096.5 249,-2096.5 249,-2134.5"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-2130.5 60,-2130.5 60,-2126.5 56,-2126.5 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="56,-2104.5 60,-2104.5 60,-2100.5 56,-2100.5 "/>
<text text-anchor="middle" x="152.5" y="-2119.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5034</text>
<text text-anchor="middle" x="152.5" y="-2104.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="node51" class="node">
<title>zcash/zcash#5050</title>
<g id="a_node51"><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,-2134.5 397,-2134.5 397,-2130.5 393,-2130.5 393,-2126.5 397,-2126.5 397,-2104.5 393,-2104.5 393,-2100.5 397,-2100.5 397,-2096.5 590,-2096.5 590,-2134.5"/>
<polyline fill="none" stroke="#000000" points="397,-2130.5 401,-2130.5 401,-2126.5 397,-2126.5 "/>
<polyline fill="none" stroke="#000000" points="397,-2104.5 401,-2104.5 401,-2100.5 397,-2100.5 "/>
<text text-anchor="middle" x="493.5" y="-2119.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5050</text>
<text text-anchor="middle" x="493.5" y="-2104.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="edge56" class="edge">
<title>zcash/zcash#5034&#45;&gt;zcash/zcash#5050</title>
<path fill="none" stroke="#000000" d="M249.3,-2115.5C292.14,-2115.5 342.66,-2115.5 386.61,-2115.5"/>
<polygon fill="#000000" stroke="#000000" points="386.75,-2119.0001 396.75,-2115.5 386.75,-2112.0001 386.75,-2119.0001"/>
</g>
<!-- zcash/zcash#5163 -->
<g id="node52" class="node">
<title>zcash/zcash#5163</title>
<g id="a_node52"><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,-2134.5 693.5,-2134.5 693.5,-2130.5 689.5,-2130.5 689.5,-2126.5 693.5,-2126.5 693.5,-2104.5 689.5,-2104.5 689.5,-2100.5 693.5,-2100.5 693.5,-2096.5 886.5,-2096.5 886.5,-2134.5"/>
<polyline fill="none" stroke="#000000" points="693.5,-2130.5 697.5,-2130.5 697.5,-2126.5 693.5,-2126.5 "/>
<polyline fill="none" stroke="#000000" points="693.5,-2104.5 697.5,-2104.5 697.5,-2100.5 693.5,-2100.5 "/>
<text text-anchor="middle" x="790" y="-2119.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5163</text>
<text text-anchor="middle" x="790" y="-2104.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="edge57" class="edge">
<title>zcash/zcash#5050&#45;&gt;zcash/zcash#5163</title>
<path fill="none" stroke="#000000" d="M590.17,-2115.5C619.93,-2115.5 652.86,-2115.5 683.25,-2115.5"/>
<polygon fill="#000000" stroke="#000000" points="683.46,-2119.0001 693.46,-2115.5 683.46,-2112.0001 683.46,-2119.0001"/>
</g>
<!-- zcash/zcash#5176 -->
<g id="node53" class="node">
<title>zcash/zcash#5176</title>
<g id="a_node53"><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,-1516 401,-1516 401,-1463 586,-1463 586,-1516"/>
<text text-anchor="middle" x="493.5" y="-1500.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5176</text>
<text text-anchor="middle" x="493.5" y="-1485.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement BIP 39 seed</text>
<text text-anchor="middle" x="493.5" y="-1470.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="edge58" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#5019</title>
<path fill="none" stroke="#000000" d="M586.09,-1466.1C618.65,-1457.8 655.39,-1448.5 688.63,-1440.1"/>
<polygon fill="#000000" stroke="#000000" points="689.4892,-1443.4931 698.36,-1437.7 687.8128,-1436.6967 689.4892,-1443.4931"/>
</g>
<!-- zcash/zcash#2673 -->
<g id="node54" class="node">
<title>zcash/zcash#2673</title>
<g id="a_node54"><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,-1527.5 689,-1527.5 689,-1459.5 891,-1459.5 891,-1527.5"/>
<text text-anchor="middle" x="790" y="-1512.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#2673</text>
<text text-anchor="middle" x="790" y="-1497.3" font-family="Times,serif" font-size="14.00" fill="#000000">Support Hierarchical</text>
<text text-anchor="middle" x="790" y="-1482.3" font-family="Times,serif" font-size="14.00" fill="#000000">Deterministic t&#45;addresses</text>
<text text-anchor="middle" x="790" y="-1467.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="edge59" class="edge">
<title>zcash/zcash#5176&#45;&gt;zcash/zcash#2673</title>
<path fill="none" stroke="#000000" d="M586.09,-1490.7C615.41,-1491.1 648.11,-1491.6 678.6,-1492"/>
<polygon fill="#000000" stroke="#000000" points="678.8063,-1495.5021 688.84,-1492.1 678.8747,-1488.5024 678.8063,-1495.5021"/>
</g>
<!-- zcash/zcash#2673&#45;&gt;zcash/zcash#5179 -->
<g id="edge60" class="edge">
<title>zcash/zcash#2673&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M891.08,-1494.7C904.35,-1494.9 918.01,-1495 931.45,-1495.2"/>
<polygon fill="#000000" stroke="#000000" points="931.6262,-1498.7018 941.66,-1495.3 931.6948,-1491.7021 931.6262,-1498.7018"/>
</g>
<!-- zcash/zips#364 -->
<g id="node55" class="node">
<title>zcash/zips#364</title>
<g id="a_node55"><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,-1516 50,-1516 50,-1463 255,-1463 255,-1516"/>
<text text-anchor="middle" x="152.5" y="-1500.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#364</text>
<text text-anchor="middle" x="152.5" y="-1485.8" font-family="Times,serif" font-size="14.00" fill="#000000">[ZIP 339] Wallet Recovery</text>
<text text-anchor="middle" x="152.5" y="-1470.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="edge61" class="edge">
<title>zcash/zips#364&#45;&gt;zcash/zcash#5176</title>
<path fill="none" stroke="#000000" d="M255.27,-1489.5C298.12,-1489.5 347.78,-1489.5 390.63,-1489.5"/>
<polygon fill="#000000" stroke="#000000" points="390.8,-1493.0001 400.8,-1489.5 390.8,-1486.0001 390.8,-1493.0001"/>
</g>
<!-- zcash/zcash#5177 -->
<g id="node56" class="node">
<title>zcash/zcash#5177</title>
<g id="a_node56"><a xlink:href="https://github.com/zcash/zcash/issues/5177" xlink:title="zcash/zcash#5177&#10;Deprecate old address&#45;&#10;related RPCs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="243.5,-2206 61.5,-2206 61.5,-2153 243.5,-2153 243.5,-2206"/>
<text text-anchor="middle" x="152.5" y="-2190.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5177</text>
<text text-anchor="middle" x="152.5" y="-2175.8" font-family="Times,serif" font-size="14.00" fill="#000000">Deprecate old address&#45;</text>
<text text-anchor="middle" x="152.5" y="-2160.8" font-family="Times,serif" font-size="14.00" fill="#000000">related RPCs</text>
</a>
</g>
</g>
<!-- zcash/zips#511 -->
<g id="node57" class="node">
<title>zcash/zips#511</title>
<g id="a_node57"><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,-1613.5 682.5,-1613.5 682.5,-1545.5 897.5,-1545.5 897.5,-1613.5"/>
<text text-anchor="middle" x="790" y="-1598.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zips#511</text>
<text text-anchor="middle" x="790" y="-1583.3" font-family="Times,serif" font-size="14.00" fill="#000000">ZIP 32: Document standard</text>
<text text-anchor="middle" x="790" y="-1568.3" font-family="Times,serif" font-size="14.00" fill="#000000">key structure for Unified</text>
<text text-anchor="middle" x="790" y="-1553.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="edge62" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/zcash#5179</title>
<path fill="none" stroke="#000000" d="M894,-1545.4C906.6,-1541.2 919.5,-1537 932.2,-1532.9"/>
<polygon fill="#000000" stroke="#000000" points="933.4599,-1536.1697 941.85,-1529.7 931.2566,-1529.5255 933.4599,-1536.1697"/>
</g>
<!-- zcash/librustzcash#387 -->
<g id="node58" class="node">
<title>zcash/librustzcash#387</title>
<g id="a_node58"><a xlink:href="https://github.com/zcash/librustzcash/issues/387" xlink:title="zcash/librustzcash#387&#10;Implement Unified Address&#10;key derivation" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" points="1150.5,-1606 935.5,-1606 935.5,-1553 1150.5,-1553 1150.5,-1606"/>
<text text-anchor="middle" x="1043" y="-1590.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#387</text>
<text text-anchor="middle" x="1043" y="-1575.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="1043" y="-1560.8" font-family="Times,serif" font-size="14.00" fill="#000000">key derivation</text>
</a>
</g>
</g>
<!-- zcash/zips#511&#45;&gt;zcash/librustzcash#387 -->
<g id="edge63" class="edge">
<title>zcash/zips#511&#45;&gt;zcash/librustzcash#387</title>
<path fill="none" stroke="#000000" d="M897.66,-1579.5C906.85,-1579.5 916.17,-1579.5 925.42,-1579.5"/>
<polygon fill="#000000" stroke="#000000" points="925.44,-1583.0001 935.44,-1579.5 925.44,-1576.0001 925.44,-1583.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#23 -->
<g id="node59" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23</title>
<g id="a_node59"><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,-885 341,-885 341,-832 646,-832 646,-885"/>
<text text-anchor="middle" x="493.5" y="-869.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="-854.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 244 test</text>
<text text-anchor="middle" x="493.5" y="-839.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="edge64" 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,-845.12C665.31,-843.43 684.43,-841.76 702.15,-840.2"/>
<polygon fill="#000000" stroke="#000000" points="702.7638,-843.6597 712.42,-839.3 702.1526,-836.6864 702.7638,-843.6597"/>
</g>
<!-- zcash/librustzcash#350 -->
<g id="node60" class="node">
<title>zcash/librustzcash#350</title>
<g id="a_node60"><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,-968 696,-968 696,-885 884,-885 884,-968"/>
<text text-anchor="middle" x="790" y="-952.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#350</text>
<text text-anchor="middle" x="790" y="-937.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP&#45;225</text>
<text text-anchor="middle" x="790" y="-922.8" font-family="Times,serif" font-size="14.00" fill="#000000">transaction format &amp;</text>
<text text-anchor="middle" x="790" y="-907.8" font-family="Times,serif" font-size="14.00" fill="#000000">hashing changes in</text>
<text text-anchor="middle" x="790" y="-892.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="edge65" class="edge">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#23&#45;&gt;zcash/librustzcash#350</title>
<path fill="none" stroke="#000000" d="M609.41,-885.08C634.64,-890.87 661.2,-896.96 685.94,-902.63"/>
<polygon fill="#000000" stroke="#000000" points="685.1602,-906.042 695.69,-904.87 686.7276,-899.2197 685.1602,-906.042"/>
</g>
<!-- zcash/zcash#5186 -->
<g id="node61" class="node">
<title>zcash/zcash#5186</title>
<g id="a_node61"><a xlink:href="https://github.com/zcash/zcash/issues/5186" xlink:title="zcash/zcash#5186&#10;z_viewtransaction: Figure&#10;out how to render UAs" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="254,-2277 51,-2277 51,-2224 254,-2224 254,-2277"/>
<text text-anchor="middle" x="152.5" y="-2261.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/zcash#5186</text>
<text text-anchor="middle" x="152.5" y="-2246.8" font-family="Times,serif" font-size="14.00" fill="#000000">z_viewtransaction: Figure</text>
<text text-anchor="middle" x="152.5" y="-2231.8" font-family="Times,serif" font-size="14.00" fill="#000000">out how to render UAs</text>
</a>
</g>
</g>
<!-- zcash/halo2#63 -->
<g id="node62" class="node">
<title>zcash/halo2#63</title>
<g id="a_node62"><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,-1227 682,-1227 682,-1174 898,-1174 898,-1227"/>
<text text-anchor="middle" x="790" y="-1211.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#63</text>
<text text-anchor="middle" x="790" y="-1196.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement zero&#45;knowledge&#45;</text>
<text text-anchor="middle" x="790" y="-1181.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="edge66" class="edge">
<title>zcash/halo2#63&#45;&gt;zcash/librustzcash#320</title>
<path fill="none" stroke="#000000" d="M895.1,-1173.9C907.2,-1170.9 919.58,-1167.7 931.76,-1164.6"/>
<polygon fill="#000000" stroke="#000000" points="932.6106,-1167.9952 941.48,-1162.2 930.9325,-1161.1993 932.6106,-1167.9952"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#26 -->
<g id="node63" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#26</title>
<g id="a_node63"><a xlink:href="https://github.com/zcash-hackworks/zcash-test-vectors/issues/26" xlink:title="zcash&#45;hackworks/zcash&#45;test&#45;vectors#26&#10;Implement Unified Address&#10;encodings" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="646,-1718 341,-1718 341,-1665 646,-1665 646,-1718"/>
<text text-anchor="middle" x="493.5" y="-1702.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="-1687.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement Unified Address</text>
<text text-anchor="middle" x="493.5" y="-1672.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="edge67" 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,-1691.5C659.42,-1691.5 672.69,-1691.5 685.49,-1691.5"/>
<polygon fill="#000000" stroke="#000000" points="685.65,-1695.0001 695.65,-1691.5 685.65,-1688.0001 685.65,-1695.0001"/>
</g>
<!-- zcash/librustzcash#390 -->
<g id="node64" class="node">
<title>zcash/librustzcash#390</title>
<g id="a_node64"><a xlink:href="https://github.com/zcash/librustzcash/pull/390" xlink:title="zcash/librustzcash#390&#10;zcash_note_encryption:&#10;Note decryption fixes" target="_blank">
<polygon fill="#c2e0c6" stroke="#000000" stroke-width="2" points="587.5,-1306 399.5,-1306 399.5,-1302 395.5,-1302 395.5,-1298 399.5,-1298 399.5,-1261 395.5,-1261 395.5,-1257 399.5,-1257 399.5,-1253 587.5,-1253 587.5,-1306"/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="399.5,-1302 403.5,-1302 403.5,-1298 399.5,-1298 "/>
<polyline fill="none" stroke="#000000" stroke-width="2" points="399.5,-1261 403.5,-1261 403.5,-1257 399.5,-1257 "/>
<text text-anchor="middle" x="493.5" y="-1290.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/librustzcash#390</text>
<text text-anchor="middle" x="493.5" y="-1275.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash_note_encryption:</text>
<text text-anchor="middle" x="493.5" y="-1260.8" font-family="Times,serif" font-size="14.00" fill="#000000">Note decryption fixes</text>
</a>
</g>
</g>
<!-- zcash/librustzcash#390&#45;&gt;zcash/orchard#32 -->
<g id="edge68" class="edge">
<title>zcash/librustzcash#390&#45;&gt;zcash/orchard#32</title>
<path fill="none" stroke="#000000" d="M587.72,-1279.5C615.1,-1279.5 645.33,-1279.5 673.88,-1279.5"/>
<polygon fill="#000000" stroke="#000000" points="673.91,-1283.0001 683.91,-1279.5 673.91,-1276.0001 673.91,-1283.0001"/>
</g>
<!-- zcash&#45;hackworks/zcash&#45;test&#45;vectors#15 -->
<g id="node65" class="node">
<title>zcash&#45;hackworks/zcash&#45;test&#45;vectors#15</title>
<g id="a_node65"><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,-885 0,-885 0,-832 305,-832 305,-885"/>
<text text-anchor="middle" x="152.5" y="-869.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="-854.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement ZIP 225 test</text>
<text text-anchor="middle" x="152.5" y="-839.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="edge69" 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,-858.5C313.59,-858.5 322.19,-858.5 330.76,-858.5"/>
<polygon fill="#000000" stroke="#000000" points="330.81,-862.0001 340.81,-858.5 330.81,-855.0001 330.81,-862.0001"/>
</g>
<!-- zcash/halo2#64 -->
<g id="node66" class="node">
<title>zcash/halo2#64</title>
<g id="a_node66"><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,-1059 67.5,-1059 67.5,-1006 237.5,-1006 237.5,-1059"/>
<text text-anchor="middle" x="152.5" y="-1043.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#64</text>
<text text-anchor="middle" x="152.5" y="-1028.8" font-family="Times,serif" font-size="14.00" fill="#000000">Design gadget API or</text>
<text text-anchor="middle" x="152.5" y="-1013.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="edge70" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M237.67,-1014.8C286.03,-1004.7 346.73,-992.06 396.87,-981.62"/>
<polygon fill="#000000" stroke="#000000" points="397.6749,-985.0275 406.75,-979.56 396.2461,-978.1749 397.6749,-985.0275"/>
</g>
<!-- zcash/halo2#235 -->
<g id="node67" class="node">
<title>zcash/halo2#235</title>
<g id="a_node67"><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,-1059 405.5,-1059 405.5,-1006 581.5,-1006 581.5,-1059"/>
<text text-anchor="middle" x="493.5" y="-1043.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#235</text>
<text text-anchor="middle" x="493.5" y="-1028.8" font-family="Times,serif" font-size="14.00" fill="#000000">[Circuit] Implement</text>
<text text-anchor="middle" x="493.5" y="-1013.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="edge71" class="edge">
<title>zcash/halo2#64&#45;&gt;zcash/halo2#235</title>
<path fill="none" stroke="#000000" d="M237.67,-1032.5C285.47,-1032.5 345.32,-1032.5 395.12,-1032.5"/>
<polygon fill="#000000" stroke="#000000" points="395.26,-1036.0001 405.26,-1032.5 395.26,-1029.0001 395.26,-1036.0001"/>
</g>
<!-- zcash/halo2#235&#45;&gt;zcash/orchard#4 -->
<g id="edge72" class="edge">
<title>zcash/halo2#235&#45;&gt;zcash/orchard#4</title>
<path fill="none" stroke="#000000" d="M581.66,-1030.4C616.84,-1029.6 657.46,-1028.6 693.44,-1027.8"/>
<polygon fill="#000000" stroke="#000000" points="693.5693,-1031.2978 703.46,-1027.5 693.3597,-1024.3009 693.5693,-1031.2978"/>
</g>
<!-- zcash/halo2#75 -->
<g id="node68" class="node">
<title>zcash/halo2#75</title>
<g id="a_node68"><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,-345 953.5,-345 953.5,-292 1132.5,-292 1132.5,-345"/>
<text text-anchor="middle" x="1043" y="-329.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#75</text>
<text text-anchor="middle" x="1043" y="-314.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement support for</text>
<text text-anchor="middle" x="1043" y="-299.8" font-family="Times,serif" font-size="14.00" fill="#000000">recursion</text>
</a>
</g>
</g>
<!-- zcash/halo2#251 -->
<g id="node69" class="node">
<title>zcash/halo2#251</title>
<g id="a_node69"><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,-345 1192.5,-345 1192.5,-292 1402.5,-292 1402.5,-345"/>
<text text-anchor="middle" x="1297.5" y="-329.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#251</text>
<text text-anchor="middle" x="1297.5" y="-314.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="-299.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="edge73" class="edge">
<title>zcash/halo2#75&#45;&gt;zcash/halo2#251</title>
<path fill="none" stroke="#000000" d="M1132.7,-318.5C1148.7,-318.5 1165.6,-318.5 1182.2,-318.5"/>
<polygon fill="#000000" stroke="#000000" points="1182.5,-322.0001 1192.5,-318.5 1182.5,-315.0001 1182.5,-322.0001"/>
</g>
<!-- zcash/halo2#78 -->
<g id="node70" class="node">
<title>zcash/halo2#78</title>
<g id="a_node70"><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="edge74" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#79</title>
<path fill="none" stroke="#000000" d="M595.84,-542.32C613.24,-548.08 630.64,-555.35 646,-564.5 665.71,-576.24 665.33,-585.73 682,-601.5 698.06,-616.69 716,-632.68 732.57,-647.07"/>
<polygon fill="#000000" stroke="#000000" points="730.7247,-650.1011 740.58,-653.99 735.3009,-644.804 730.7247,-650.1011"/>
</g>
<!-- zcash/halo2#250 -->
<g id="node71" class="node">
<title>zcash/halo2#250</title>
<g id="a_node71"><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,-345 693,-345 693,-292 887,-292 887,-345"/>
<text text-anchor="middle" x="790" y="-329.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#250</text>
<text text-anchor="middle" x="790" y="-314.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement the recursive</text>
<text text-anchor="middle" x="790" y="-299.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="edge75" class="edge">
<title>zcash/halo2#78&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595.68,-501.97C613.38,-495.88 630.92,-487.91 646,-477.5 667.95,-462.35 664.67,-449.76 682,-429.5 704.98,-402.63 732.85,-374.08 754.52,-352.66"/>
<polygon fill="#000000" stroke="#000000" points="757.2293,-354.9048 761.91,-345.4 752.3236,-349.9113 757.2293,-354.9048"/>
</g>
<!-- zcash/halo2#250&#45;&gt;zcash/halo2#75 -->
<g id="edge76" class="edge">
<title>zcash/halo2#250&#45;&gt;zcash/halo2#75</title>
<path fill="none" stroke="#000000" d="M887.09,-318.5C905.43,-318.5 924.65,-318.5 943.08,-318.5"/>
<polygon fill="#000000" stroke="#000000" points="943.22,-322.0001 953.22,-318.5 943.22,-315.0001 943.22,-322.0001"/>
</g>
<!-- zcash/halo2#57 -->
<g id="node72" class="node">
<title>zcash/halo2#57</title>
<g id="a_node72"><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,-2363.5 81,-2363.5 81,-2295.5 224,-2295.5 224,-2363.5"/>
<text text-anchor="middle" x="152.5" y="-2348.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#57</text>
<text text-anchor="middle" x="152.5" y="-2333.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove unused</text>
<text text-anchor="middle" x="152.5" y="-2318.3" font-family="Times,serif" font-size="14.00" fill="#000000">fixed_values from</text>
<text text-anchor="middle" x="152.5" y="-2303.3" font-family="Times,serif" font-size="14.00" fill="#000000">ProvingKey</text>
</a>
</g>
</g>
<!-- zcash/halo2#82 -->
<g id="node73" class="node">
<title>zcash/halo2#82</title>
<g id="a_node73"><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,-2465 56,-2465 56,-2382 249,-2382 249,-2465"/>
<text text-anchor="middle" x="152.5" y="-2449.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#82</text>
<text text-anchor="middle" x="152.5" y="-2434.8" font-family="Times,serif" font-size="14.00" fill="#000000">Consider not sampling</text>
<text text-anchor="middle" x="152.5" y="-2419.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="-2404.8" font-family="Times,serif" font-size="14.00" fill="#000000">are no permutations or</text>
<text text-anchor="middle" x="152.5" y="-2389.8" font-family="Times,serif" font-size="14.00" fill="#000000">lookups</text>
</a>
</g>
</g>
<!-- zcash/halo2#248 -->
<g id="node74" class="node">
<title>zcash/halo2#248</title>
<g id="a_node74"><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,-469 392,-469 392,-416 595,-416 595,-469"/>
<text text-anchor="middle" x="493.5" y="-453.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#248</text>
<text text-anchor="middle" x="493.5" y="-438.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement endoscaling in</text>
<text text-anchor="middle" x="493.5" y="-423.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="edge77" class="edge">
<title>zcash/halo2#248&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M595,-423.3C612.32,-418.68 629.9,-413.12 646,-406.5 681.21,-392.02 717.77,-369.57 745.25,-350.97"/>
<polygon fill="#000000" stroke="#000000" points="747.5719,-353.6217 753.84,-345.08 743.6133,-347.8485 747.5719,-353.6217"/>
</g>
<!-- zcash/halo2#249 -->
<g id="node75" class="node">
<title>zcash/halo2#249</title>
<g id="a_node75"><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,-397.5 401,-397.5 401,-329.5 586,-329.5 586,-397.5"/>
<text text-anchor="middle" x="493.5" y="-382.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#249</text>
<text text-anchor="middle" x="493.5" y="-367.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement circuit logic</text>
<text text-anchor="middle" x="493.5" y="-352.3" font-family="Times,serif" font-size="14.00" fill="#000000">for handling public</text>
<text text-anchor="middle" x="493.5" y="-337.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="edge78" class="edge">
<title>zcash/halo2#249&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M586.09,-349.45C616.76,-344.79 651.14,-339.57 682.81,-334.77"/>
<polygon fill="#000000" stroke="#000000" points="683.6308,-338.1855 692.99,-333.22 682.5771,-331.2652 683.6308,-338.1855"/>
</g>
<!-- zcash/halo2#246 -->
<g id="node76" class="node">
<title>zcash/halo2#246</title>
<g id="a_node76"><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,-304 63,-304 63,-251 242,-251 242,-304"/>
<text text-anchor="middle" x="152.5" y="-288.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#246</text>
<text text-anchor="middle" x="152.5" y="-273.8" font-family="Times,serif" font-size="14.00" fill="#000000">Create recursive proof</text>
<text text-anchor="middle" x="152.5" y="-258.8" font-family="Times,serif" font-size="14.00" fill="#000000">structures</text>
</a>
</g>
</g>
<!-- zcash/halo2#247 -->
<g id="node77" class="node">
<title>zcash/halo2#247</title>
<g id="a_node77"><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,-311.5 405.5,-311.5 405.5,-243.5 581.5,-243.5 581.5,-311.5"/>
<text text-anchor="middle" x="493.5" y="-296.3" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/halo2#247</text>
<text text-anchor="middle" x="493.5" y="-281.3" font-family="Times,serif" font-size="14.00" fill="#000000">Implement underlying</text>
<text text-anchor="middle" x="493.5" y="-266.3" font-family="Times,serif" font-size="14.00" fill="#000000">scaffolding for the</text>
<text text-anchor="middle" x="493.5" y="-251.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="edge79" class="edge">
<title>zcash/halo2#246&#45;&gt;zcash/halo2#247</title>
<path fill="none" stroke="#000000" d="M242.09,-277.5C289.16,-277.5 346.94,-277.5 395.24,-277.5"/>
<polygon fill="#000000" stroke="#000000" points="395.39,-281.0001 405.39,-277.5 395.39,-274.0001 395.39,-281.0001"/>
</g>
<!-- zcash/halo2#247&#45;&gt;zcash/halo2#250 -->
<g id="edge80" class="edge">
<title>zcash/halo2#247&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M581.66,-289.69C613.37,-294.08 649.5,-299.07 682.67,-303.66"/>
<polygon fill="#000000" stroke="#000000" points="682.4746,-307.1662 692.86,-305.07 683.4341,-300.2323 682.4746,-307.1662"/>
</g>
<!-- zcash/halo2#245 -->
<g id="node78" class="node">
<title>zcash/halo2#245</title>
<g id="a_node78"><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,-225.5 390.5,-225.5 390.5,-157.5 596.5,-157.5 596.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#245</text>
<text text-anchor="middle" x="493.5" y="-195.3" font-family="Times,serif" font-size="14.00" fill="#000000">Remove the need to</text>
<text text-anchor="middle" x="493.5" y="-180.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="-165.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="edge81" class="edge">
<title>zcash/halo2#245&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M596.86,-216.8C613.54,-221.97 630.43,-227.89 646,-234.5 679.54,-248.74 714.91,-269.28 742.2,-286.49"/>
<polygon fill="#000000" stroke="#000000" points="740.4556,-289.5286 750.77,-291.95 744.2168,-283.6249 740.4556,-289.5286"/>
</g>
<!-- zcash/halo2#210 -->
<g id="node79" class="node">
<title>zcash/halo2#210</title>
<g id="a_node79"><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,-139.5 384.5,-139.5 384.5,-71.5 602.5,-71.5 602.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#210</text>
<text text-anchor="middle" x="493.5" y="-109.3" font-family="Times,serif" font-size="14.00" fill="#000000">Make multiopen</text>
<text text-anchor="middle" x="493.5" y="-94.3" font-family="Times,serif" font-size="14.00" fill="#000000">point_index_map dependent</text>
<text text-anchor="middle" x="493.5" y="-79.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="edge82" class="edge">
<title>zcash/halo2#210&#45;&gt;zcash/halo2#250</title>
<path fill="none" stroke="#000000" d="M602.78,-127.68C617.94,-133.18 632.81,-140.02 646,-148.5 699.91,-183.17 744.37,-244.19 769.02,-282.92"/>
<polygon fill="#000000" stroke="#000000" points="766.2906,-285.1567 774.56,-291.78 772.2259,-281.4455 766.2906,-285.1567"/>
</g>
<!-- zcash/orchard#38 -->
<g id="node80" class="node">
<title>zcash/orchard#38</title>
<g id="a_node80"><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,-988 57,-988 57,-935 248,-935 248,-988"/>
<text text-anchor="middle" x="152.5" y="-972.8" font-family="Times,serif" font-size="14.00" fill="#000000">zcash/orchard#38</text>
<text text-anchor="middle" x="152.5" y="-957.8" font-family="Times,serif" font-size="14.00" fill="#000000">Implement generic ECC</text>
<text text-anchor="middle" x="152.5" y="-942.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="edge83" class="edge">
<title>zcash/orchard#38&#45;&gt;zcash/halo2#73</title>
<path fill="none" stroke="#000000" d="M248.39,-961.5C294.73,-961.5 350.23,-961.5 396.69,-961.5"/>
<polygon fill="#000000" stroke="#000000" points="396.77,-965.0001 406.77,-961.5 396.77,-958.0001 396.77,-965.0001"/>
</g>
</g>
</svg>