Skip to content

Instantly share code, notes, and snippets.

@afmsavage
Last active June 28, 2020 21:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save afmsavage/c8685245f81a47e2409487b6eb41932a to your computer and use it in GitHub Desktop.
Save afmsavage/c8685245f81a47e2409487b6eb41932a to your computer and use it in GitHub Desktop.
Call Chart of tBTC
Display the source blob
Display the rendered blob
Raw
<?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.38.0 (20140413.2041)
-->
<!-- Title: G Pages: 1 -->
<svg width="2684pt" height="16558pt"
viewBox="0.00 0.00 2683.79 16558.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 16554)">
<title>G</title>
<polygon fill="#2e3e56" stroke="none" points="-4,4 -4,-16554 2679.79,-16554 2679.79,4 -4,4"/>
<g id="clust1" class="cluster"><title>clusterDepositLog</title>
<path fill="#445773" stroke="#445773" d="M508.36,-11891C508.36,-11891 1056.31,-11891 1056.31,-11891 1062.31,-11891 1068.31,-11897 1068.31,-11903 1068.31,-11903 1068.31,-12656 1068.31,-12656 1068.31,-12662 1062.31,-12668 1056.31,-12668 1056.31,-12668 508.36,-12668 508.36,-12668 502.36,-12668 496.36,-12662 496.36,-12656 496.36,-12656 496.36,-11903 496.36,-11903 496.36,-11897 502.36,-11891 508.36,-11891"/>
<text text-anchor="middle" x="782.337" y="-12652.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositLog</text>
</g>
<g id="clust2" class="cluster"><title>clusterDeposit</title>
<path fill="#445773" stroke="#445773" d="M1139.31,-8485C1139.31,-8485 1731.46,-8485 1731.46,-8485 1737.46,-8485 1743.46,-8491 1743.46,-8497 1743.46,-8497 1743.46,-10600 1743.46,-10600 1743.46,-10606 1737.46,-10612 1731.46,-10612 1731.46,-10612 1139.31,-10612 1139.31,-10612 1133.31,-10612 1127.31,-10606 1127.31,-10600 1127.31,-10600 1127.31,-8497 1127.31,-8497 1127.31,-8491 1133.31,-8485 1139.31,-8485"/>
<text text-anchor="middle" x="1435.39" y="-10596.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">Deposit</text>
</g>
<g id="clust5" class="cluster"><title>clusterDepositRedemption</title>
<path fill="#445773" stroke="#445773" d="M494.711,-2529C494.711,-2529 1783.46,-2529 1783.46,-2529 1789.46,-2529 1795.46,-2535 1795.46,-2541 1795.46,-2541 1795.46,-2808 1795.46,-2808 1795.46,-2814 1789.46,-2820 1783.46,-2820 1783.46,-2820 494.711,-2820 494.711,-2820 488.711,-2820 482.711,-2814 482.711,-2808 482.711,-2808 482.711,-2541 482.711,-2541 482.711,-2535 488.711,-2529 494.711,-2529"/>
<text text-anchor="middle" x="1139.08" y="-2804.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositRedemption &#160;(lib)</text>
</g>
<g id="clust4" class="cluster"><title>clusterDepositLiquidation</title>
<path fill="#445773" stroke="#445773" d="M819.935,-2911C819.935,-2911 1783.46,-2911 1783.46,-2911 1789.46,-2911 1795.46,-2917 1795.46,-2923 1795.46,-2923 1795.46,-3244 1795.46,-3244 1795.46,-3250 1789.46,-3256 1783.46,-3256 1783.46,-3256 819.935,-3256 819.935,-3256 813.935,-3256 807.935,-3250 807.935,-3244 807.935,-3244 807.935,-2923 807.935,-2923 807.935,-2917 813.935,-2911 819.935,-2911"/>
<text text-anchor="middle" x="1301.7" y="-3240.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositLiquidation &#160;(lib)</text>
</g>
<g id="clust3" class="cluster"><title>clusterDepositFunding</title>
<path fill="#445773" stroke="#445773" d="M1184.81,-8078C1184.81,-8078 1789.31,-8078 1789.31,-8078 1795.31,-8078 1801.31,-8084 1801.31,-8090 1801.31,-8090 1801.31,-8465 1801.31,-8465 1801.31,-8471 1795.31,-8477 1789.31,-8477 1789.31,-8477 1184.81,-8477 1184.81,-8477 1178.81,-8477 1172.81,-8471 1172.81,-8465 1172.81,-8465 1172.81,-8090 1172.81,-8090 1172.81,-8084 1178.81,-8078 1184.81,-8078"/>
<text text-anchor="middle" x="1487.06" y="-8461.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositFunding &#160;(lib)</text>
</g>
<g id="clust6" class="cluster"><title>clusterDepositStates</title>
<path fill="#445773" stroke="#445773" d="M94.7434,-12676C94.7434,-12676 342.821,-12676 342.821,-12676 348.821,-12676 354.821,-12682 354.821,-12688 354.821,-12688 354.821,-14197 354.821,-14197 354.821,-14203 348.821,-14209 342.821,-14209 342.821,-14209 94.7434,-14209 94.7434,-14209 88.7434,-14209 82.7434,-14203 82.7434,-14197 82.7434,-14197 82.7434,-12688 82.7434,-12688 82.7434,-12682 88.7434,-12676 94.7434,-12676"/>
<text text-anchor="middle" x="218.782" y="-14193.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositStates &#160;(lib)</text>
</g>
<g id="clust7" class="cluster"><title>clusterDepositUtils</title>
<path fill="#445773" stroke="#445773" d="M1183.51,-1607C1183.51,-1607 2655.79,-1607 2655.79,-1607 2661.79,-1607 2667.79,-1613 2667.79,-1619 2667.79,-1619 2667.79,-2426 2667.79,-2426 2667.79,-2432 2661.79,-2438 2655.79,-2438 2655.79,-2438 1183.51,-2438 1183.51,-2438 1177.51,-2438 1171.51,-2432 1171.51,-2426 1171.51,-2426 1171.51,-1619 1171.51,-1619 1171.51,-1613 1177.51,-1607 1183.51,-1607"/>
<text text-anchor="middle" x="1919.65" y="-2422.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositUtils &#160;(lib)</text>
</g>
<g id="clust9" class="cluster"><title>clusterISatWeiPriceFeed</title>
<path fill="#445773" stroke="#445773" d="M551.156,-8631C551.156,-8631 687.344,-8631 687.344,-8631 693.344,-8631 699.344,-8637 699.344,-8643 699.344,-8643 699.344,-8748 699.344,-8748 699.344,-8754 693.344,-8760 687.344,-8760 687.344,-8760 551.156,-8760 551.156,-8760 545.156,-8760 539.156,-8754 539.156,-8748 539.156,-8748 539.156,-8643 539.156,-8643 539.156,-8637 545.156,-8631 551.156,-8631"/>
<text text-anchor="middle" x="619.25" y="-8744.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">ISatWeiPriceFeed &#160;(iface)</text>
</g>
<g id="clust8" class="cluster"><title>clusterOutsourceDepositLogging</title>
<path fill="#445773" stroke="#445773" d="M108.392,-11945C108.392,-11945 329.172,-11945 329.172,-11945 335.172,-11945 341.172,-11951 341.172,-11957 341.172,-11957 341.172,-12656 341.172,-12656 341.172,-12662 335.172,-12668 329.172,-12668 329.172,-12668 108.392,-12668 108.392,-12668 102.392,-12668 96.3922,-12662 96.3922,-12656 96.3922,-12656 96.3922,-11957 96.3922,-11957 96.3922,-11951 102.392,-11945 108.392,-11945"/>
<text text-anchor="middle" x="218.782" y="-12652.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">OutsourceDepositLogging &#160;(lib)</text>
</g>
<g id="clust10" class="cluster"><title>clusterITBTCSystem</title>
<path fill="#445773" stroke="#445773" d="M36.8985,-14217C36.8985,-14217 400.666,-14217 400.666,-14217 406.666,-14217 412.666,-14223 412.666,-14229 412.666,-14229 412.666,-14820 412.666,-14820 412.666,-14826 406.666,-14832 400.666,-14832 400.666,-14832 36.8985,-14832 36.8985,-14832 30.8985,-14832 24.8985,-14826 24.8985,-14820 24.8985,-14820 24.8985,-14229 24.8985,-14229 24.8985,-14223 30.8985,-14217 36.8985,-14217"/>
<text text-anchor="middle" x="218.782" y="-14816.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">ITBTCSystem &#160;(iface)</text>
</g>
<g id="clust20" class="cluster"><title>clusterKeepFactorySelection</title>
<path fill="#445773" stroke="#445773" d="M109.042,-15205C109.042,-15205 734.339,-15205 734.339,-15205 740.339,-15205 746.339,-15211 746.339,-15217 746.339,-15217 746.339,-15430 746.339,-15430 746.339,-15436 740.339,-15442 734.339,-15442 734.339,-15442 109.042,-15442 109.042,-15442 103.042,-15442 97.0421,-15436 97.0421,-15430 97.0421,-15430 97.0421,-15217 97.0421,-15217 97.0421,-15211 103.042,-15205 109.042,-15205"/>
<text text-anchor="middle" x="421.691" y="-15426.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">KeepFactorySelection &#160;(lib)</text>
</g>
<g id="clust11" class="cluster"><title>clusterITokenRecipient</title>
<path fill="#445773" stroke="#445773" d="M1630.27,-11785C1630.27,-11785 1762.66,-11785 1762.66,-11785 1768.66,-11785 1774.66,-11791 1774.66,-11797 1774.66,-11797 1774.66,-11848 1774.66,-11848 1774.66,-11854 1768.66,-11860 1762.66,-11860 1762.66,-11860 1630.27,-11860 1630.27,-11860 1624.27,-11860 1618.27,-11854 1618.27,-11848 1618.27,-11848 1618.27,-11797 1618.27,-11797 1618.27,-11791 1624.27,-11785 1630.27,-11785"/>
<text text-anchor="middle" x="1696.46" y="-11844.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">ITokenRecipient &#160;(iface)</text>
</g>
<g id="clust17" class="cluster"><title>clusterFeeRebateToken</title>
<path fill="#445773" stroke="#445773" d="M1259.55,-10629C1259.55,-10629 1728.86,-10629 1728.86,-10629 1734.86,-10629 1740.86,-10635 1740.86,-10641 1740.86,-10641 1740.86,-10854 1740.86,-10854 1740.86,-10860 1734.86,-10866 1728.86,-10866 1728.86,-10866 1259.55,-10866 1259.55,-10866 1253.55,-10866 1247.55,-10860 1247.55,-10854 1247.55,-10854 1247.55,-10641 1247.55,-10641 1247.55,-10635 1253.55,-10629 1259.55,-10629"/>
<text text-anchor="middle" x="1494.21" y="-10850.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">FeeRebateToken</text>
</g>
<g id="clust18" class="cluster"><title>clusterRedemptionScript</title>
<path fill="#445773" stroke="#445773" d="M152.588,-9285C152.588,-9285 284.976,-9285 284.976,-9285 290.976,-9285 296.976,-9291 296.976,-9297 296.976,-9297 296.976,-9402 296.976,-9402 296.976,-9408 290.976,-9414 284.976,-9414 284.976,-9414 152.588,-9414 152.588,-9414 146.588,-9414 140.588,-9408 140.588,-9402 140.588,-9402 140.588,-9297 140.588,-9297 140.588,-9291 146.588,-9285 152.588,-9285"/>
<text text-anchor="middle" x="218.782" y="-9398.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">RedemptionScript</text>
</g>
<g id="clust12" class="cluster"><title>clusterSatWeiPriceFeed</title>
<path fill="#445773" stroke="#445773" d="M126.591,-8266C126.591,-8266 310.973,-8266 310.973,-8266 316.973,-8266 322.973,-8272 322.973,-8278 322.973,-8278 322.973,-8607 322.973,-8607 322.973,-8613 316.973,-8619 310.973,-8619 310.973,-8619 126.591,-8619 126.591,-8619 120.591,-8619 114.591,-8613 114.591,-8607 114.591,-8607 114.591,-8278 114.591,-8278 114.591,-8272 120.591,-8266 126.591,-8266"/>
<text text-anchor="middle" x="218.782" y="-8603.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">SatWeiPriceFeed</text>
</g>
<g id="clust15" class="cluster"><title>clusterDepositFactory</title>
<path fill="#445773" stroke="#445773" d="M522.009,-9150C522.009,-9150 1042.66,-9150 1042.66,-9150 1048.66,-9150 1054.66,-9156 1054.66,-9162 1054.66,-9162 1054.66,-9321 1054.66,-9321 1054.66,-9327 1048.66,-9333 1042.66,-9333 1042.66,-9333 522.009,-9333 522.009,-9333 516.009,-9333 510.009,-9327 510.009,-9321 510.009,-9321 510.009,-9162 510.009,-9162 510.009,-9156 516.009,-9150 522.009,-9150"/>
<text text-anchor="middle" x="782.337" y="-9317.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositFactory</text>
</g>
<g id="clust19" class="cluster"><title>clusterKeepFactorySelector</title>
<path fill="#445773" stroke="#445773" d="M141.987,-15122C141.987,-15122 295.577,-15122 295.577,-15122 301.577,-15122 307.577,-15128 307.577,-15134 307.577,-15134 307.577,-15185 307.577,-15185 307.577,-15191 301.577,-15197 295.577,-15197 295.577,-15197 141.987,-15197 141.987,-15197 135.987,-15197 129.987,-15191 129.987,-15185 129.987,-15185 129.987,-15134 129.987,-15134 129.987,-15128 135.987,-15122 141.987,-15122"/>
<text text-anchor="middle" x="218.782" y="-15181.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">KeepFactorySelector &#160;(iface)</text>
</g>
<g id="clust13" class="cluster"><title>clusterCloneFactory</title>
<path fill="#445773" stroke="#445773" d="M168.837,-14840C168.837,-14840 268.727,-14840 268.727,-14840 274.727,-14840 280.727,-14846 280.727,-14852 280.727,-14852 280.727,-14957 280.727,-14957 280.727,-14963 274.727,-14969 268.727,-14969 268.727,-14969 168.837,-14969 168.837,-14969 162.837,-14969 156.837,-14963 156.837,-14957 156.837,-14957 156.837,-14852 156.837,-14852 156.837,-14846 162.837,-14840 168.837,-14840"/>
<text text-anchor="middle" x="218.782" y="-14953.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">CloneFactory</text>
</g>
<g id="clust14" class="cluster"><title>clusterFundingScript</title>
<path fill="#445773" stroke="#445773" d="M152.588,-9422C152.588,-9422 284.976,-9422 284.976,-9422 290.976,-9422 296.976,-9428 296.976,-9434 296.976,-9434 296.976,-9539 296.976,-9539 296.976,-9545 290.976,-9551 284.976,-9551 284.976,-9551 152.588,-9551 152.588,-9551 146.588,-9551 140.588,-9545 140.588,-9539 140.588,-9539 140.588,-9434 140.588,-9434 140.588,-9428 146.588,-9422 152.588,-9422"/>
<text text-anchor="middle" x="218.782" y="-9535.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">FundingScript</text>
</g>
<g id="clust16" class="cluster"><title>clusterDepositFactoryAuthority</title>
<path fill="#445773" stroke="#445773" d="M153.689,-14977C153.689,-14977 284.875,-14977 284.875,-14977 290.875,-14977 296.875,-14983 296.875,-14989 296.875,-14989 296.875,-15102 296.875,-15102 296.875,-15108 290.875,-15114 284.875,-15114 284.875,-15114 153.689,-15114 153.689,-15114 147.689,-15114 141.689,-15108 141.689,-15102 141.689,-15102 141.689,-14989 141.689,-14989 141.689,-14983 147.689,-14977 153.689,-14977"/>
<text text-anchor="middle" x="219.282" y="-15098.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositFactoryAuthority</text>
</g>
<g id="clust21" class="cluster"><title>clusterTBTCConstants</title>
<path fill="#445773" stroke="#445773" d="M2115.63,-216C2115.63,-216 2387.11,-216 2387.11,-216 2393.11,-216 2399.11,-222 2399.11,-228 2399.11,-228 2399.11,-873 2399.11,-873 2399.11,-879 2393.11,-885 2387.11,-885 2387.11,-885 2115.63,-885 2115.63,-885 2109.63,-885 2103.63,-879 2103.63,-873 2103.63,-873 2103.63,-228 2103.63,-228 2103.63,-222 2109.63,-216 2115.63,-216"/>
<text text-anchor="middle" x="2251.37" y="-869.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCConstants &#160;(lib)</text>
</g>
<g id="clust25" class="cluster"><title>clusterTBTCSystemAuthority</title>
<path fill="#445773" stroke="#445773" d="M142.101,-16127C142.101,-16127 295.463,-16127 295.463,-16127 301.463,-16127 307.463,-16133 307.463,-16139 307.463,-16139 307.463,-16252 307.463,-16252 307.463,-16258 301.463,-16264 295.463,-16264 295.463,-16264 142.101,-16264 142.101,-16264 136.101,-16264 130.101,-16258 130.101,-16252 130.101,-16252 130.101,-16139 130.101,-16139 130.101,-16133 136.101,-16127 142.101,-16127"/>
<text text-anchor="middle" x="218.782" y="-16248.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCSystemAuthority</text>
</g>
<g id="clust22" class="cluster"><title>clusterTBTCDepositToken</title>
<path fill="#445773" stroke="#445773" d="M1255,-11868C1255,-11868 1732.76,-11868 1732.76,-11868 1738.76,-11868 1744.76,-11874 1744.76,-11880 1744.76,-11880 1744.76,-12201 1744.76,-12201 1744.76,-12207 1738.76,-12213 1732.76,-12213 1732.76,-12213 1255,-12213 1255,-12213 1249,-12213 1243,-12207 1243,-12201 1243,-12201 1243,-11880 1243,-11880 1243,-11874 1249,-11868 1255,-11868"/>
<text text-anchor="middle" x="1493.88" y="-12197.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCDepositToken</text>
</g>
<g id="clust24" class="cluster"><title>clusterTBTCSystem</title>
<path fill="#445773" stroke="#445773" d="M20,-9559C20,-9559 775.935,-9559 775.935,-9559 781.935,-9559 787.935,-9565 787.935,-9571 787.935,-9571 787.935,-11466 787.935,-11466 787.935,-11472 781.935,-11478 775.935,-11478 775.935,-11478 20,-11478 20,-11478 14,-11478 8,-11472 8,-11466 8,-11466 8,-9571 8,-9571 8,-9565 14,-9559 20,-9559"/>
<text text-anchor="middle" x="397.968" y="-11462.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCSystem</text>
</g>
<g id="clust23" class="cluster"><title>clusterTBTCDevelopmentConstants</title>
<path fill="#445773" stroke="#445773" d="M83.0444,-15450C83.0444,-15450 354.52,-15450 354.52,-15450 360.52,-15450 366.52,-15456 366.52,-15462 366.52,-15462 366.52,-16107 366.52,-16107 366.52,-16113 360.52,-16119 354.52,-16119 354.52,-16119 83.0444,-16119 83.0444,-16119 77.0444,-16119 71.0444,-16113 71.0444,-16107 71.0444,-16107 71.0444,-15462 71.0444,-15462 71.0444,-15456 77.0444,-15450 83.0444,-15450"/>
<text text-anchor="middle" x="218.782" y="-16103.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCDevelopmentConstants &#160;(lib)</text>
</g>
<g id="clust26" class="cluster"><title>clusterTBTCToken</title>
<path fill="#445773" stroke="#445773" d="M1255,-10942C1255,-10942 1744.46,-10942 1744.46,-10942 1750.46,-10942 1756.46,-10948 1756.46,-10954 1756.46,-10954 1756.46,-11437 1756.46,-11437 1756.46,-11443 1750.46,-11449 1744.46,-11449 1744.46,-11449 1255,-11449 1255,-11449 1249,-11449 1243,-11443 1243,-11437 1243,-11437 1243,-10954 1243,-10954 1243,-10948 1249,-10942 1255,-10942"/>
<text text-anchor="middle" x="1499.73" y="-11433.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">TBTCToken</text>
</g>
<g id="clust31" class="cluster"><title>cluster_lotSizeSatoshis</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1654.46,-3264C1654.46,-3264 1739.46,-3264 1739.46,-3264 1745.46,-3264 1751.46,-3270 1751.46,-3276 1751.46,-3276 1751.46,-3327 1751.46,-3327 1751.46,-3333 1745.46,-3339 1739.46,-3339 1739.46,-3339 1654.46,-3339 1654.46,-3339 1648.46,-3339 1642.46,-3333 1642.46,-3327 1642.46,-3327 1642.46,-3276 1642.46,-3276 1642.46,-3270 1648.46,-3264 1654.46,-3264"/>
<text text-anchor="middle" x="1696.96" y="-3323.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_lotSizeSatoshis</text>
</g>
<g id="clust27" class="cluster"><title>clusterVendingMachine</title>
<path fill="#445773" stroke="#445773" d="M516.159,-11486C516.159,-11486 1765.26,-11486 1765.26,-11486 1771.26,-11486 1777.26,-11492 1777.26,-11498 1777.26,-11498 1777.26,-11765 1777.26,-11765 1777.26,-11771 1771.26,-11777 1765.26,-11777 1765.26,-11777 516.159,-11777 516.159,-11777 510.159,-11777 504.159,-11771 504.159,-11765 504.159,-11765 504.159,-11498 504.159,-11498 504.159,-11492 510.159,-11486 516.159,-11486"/>
<text text-anchor="middle" x="1140.71" y="-11761.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">VendingMachine</text>
</g>
<g id="clust30" class="cluster"><title>clusterDepositUtils.Deposit</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1547.08,-3347C1547.08,-3347 1845.85,-3347 1845.85,-3347 1851.85,-3347 1857.85,-3353 1857.85,-3359 1857.85,-3359 1857.85,-7892 1857.85,-7892 1857.85,-7898 1851.85,-7904 1845.85,-7904 1845.85,-7904 1547.08,-7904 1547.08,-7904 1541.08,-7904 1535.08,-7898 1535.08,-7892 1535.08,-7892 1535.08,-3359 1535.08,-3359 1535.08,-3353 1541.08,-3347 1547.08,-3347"/>
<text text-anchor="middle" x="1696.46" y="-7888.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">DepositUtils.Deposit</text>
</g>
<g id="clust34" class="cluster"><title>clusterIBondedECDSAKeep</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1601.02,-779C1601.02,-779 1791.9,-779 1791.9,-779 1797.9,-779 1803.9,-785 1803.9,-791 1803.9,-791 1803.9,-1058 1803.9,-1058 1803.9,-1064 1797.9,-1070 1791.9,-1070 1791.9,-1070 1601.02,-1070 1601.02,-1070 1595.02,-1070 1589.02,-1064 1589.02,-1058 1589.02,-1058 1589.02,-791 1589.02,-791 1589.02,-785 1595.02,-779 1601.02,-779"/>
<text text-anchor="middle" x="1696.46" y="-1054.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">IBondedECDSAKeep</text>
</g>
<g id="clust36" class="cluster"><title>clustercontractEthBalance</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1271.19,-1411C1271.19,-1411 1372.19,-1411 1372.19,-1411 1378.19,-1411 1384.19,-1417 1384.19,-1423 1384.19,-1423 1384.19,-1474 1384.19,-1474 1384.19,-1480 1378.19,-1486 1372.19,-1486 1372.19,-1486 1271.19,-1486 1271.19,-1486 1265.19,-1486 1259.19,-1480 1259.19,-1474 1259.19,-1474 1259.19,-1423 1259.19,-1423 1259.19,-1417 1265.19,-1411 1271.19,-1411"/>
<text text-anchor="middle" x="1321.69" y="-1470.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">contractEthBalance</text>
</g>
<g id="clust40" class="cluster"><title>clusterCheckBitcoinSigs</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1617.92,-8C1617.92,-8 1775.01,-8 1775.01,-8 1781.01,-8 1787.01,-14 1787.01,-20 1787.01,-20 1787.01,-71 1787.01,-71 1787.01,-77 1781.01,-83 1775.01,-83 1775.01,-83 1617.92,-83 1617.92,-83 1611.92,-83 1605.92,-77 1605.92,-71 1605.92,-71 1605.92,-20 1605.92,-20 1605.92,-14 1611.92,-8 1617.92,-8"/>
<text text-anchor="middle" x="1696.46" y="-67.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">CheckBitcoinSigs</text>
</g>
<g id="clust42" class="cluster"><title>cluster_txInputVector</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1649.77,-370C1649.77,-370 1743.16,-370 1743.16,-370 1749.16,-370 1755.16,-376 1755.16,-382 1755.16,-382 1755.16,-487 1755.16,-487 1755.16,-493 1749.16,-499 1743.16,-499 1743.16,-499 1649.77,-499 1649.77,-499 1643.77,-499 1637.77,-493 1637.77,-487 1637.77,-487 1637.77,-382 1637.77,-382 1637.77,-376 1643.77,-370 1649.77,-370"/>
<text text-anchor="middle" x="1696.46" y="-483.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_txInputVector</text>
</g>
<g id="clust45" class="cluster"><title>cluster_bitcoinHeaders</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2166.33,-893C2166.33,-893 2336.41,-893 2336.41,-893 2342.41,-893 2348.41,-899 2348.41,-905 2348.41,-905 2348.41,-1064 2348.41,-1064 2348.41,-1070 2342.41,-1076 2336.41,-1076 2336.41,-1076 2166.33,-1076 2166.33,-1076 2160.33,-1076 2154.33,-1070 2154.33,-1064 2154.33,-1064 2154.33,-905 2154.33,-905 2154.33,-899 2160.33,-893 2166.33,-893"/>
<text text-anchor="middle" x="2251.37" y="-1060.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_bitcoinHeaders</text>
</g>
<g id="clust41" class="cluster"><title>cluster_previousOutputValue</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1637.46,-590C1637.46,-590 1756.46,-590 1756.46,-590 1762.46,-590 1768.46,-596 1768.46,-602 1768.46,-602 1768.46,-653 1768.46,-653 1768.46,-659 1762.46,-665 1756.46,-665 1756.46,-665 1637.46,-665 1637.46,-665 1631.46,-665 1625.46,-659 1625.46,-653 1625.46,-653 1625.46,-602 1625.46,-602 1625.46,-596 1631.46,-590 1637.46,-590"/>
<text text-anchor="middle" x="1696.96" y="-649.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_previousOutputValue</text>
</g>
<g id="clust43" class="cluster"><title>cluster_txOutputVector</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1895.05,-679C1895.05,-679 2066.43,-679 2066.43,-679 2072.43,-679 2078.43,-685 2078.43,-691 2078.43,-691 2078.43,-850 2078.43,-850 2078.43,-856 2072.43,-862 2066.43,-862 2066.43,-862 1895.05,-862 1895.05,-862 1889.05,-862 1883.05,-856 1883.05,-850 1883.05,-850 1883.05,-691 1883.05,-691 1883.05,-685 1889.05,-679 1895.05,-679"/>
<text text-anchor="middle" x="1980.74" y="-846.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_txOutputVector</text>
</g>
<g id="clust37" class="cluster"><title>clusterremainingUnallocated</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1265.19,-1274C1265.19,-1274 1377.19,-1274 1377.19,-1274 1383.19,-1274 1389.19,-1280 1389.19,-1286 1389.19,-1286 1389.19,-1391 1389.19,-1391 1389.19,-1397 1383.19,-1403 1377.19,-1403 1377.19,-1403 1265.19,-1403 1265.19,-1403 1259.19,-1403 1253.19,-1397 1253.19,-1391 1253.19,-1391 1253.19,-1286 1253.19,-1286 1253.19,-1280 1259.19,-1274 1265.19,-1274"/>
<text text-anchor="middle" x="1321.19" y="-1387.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">remainingUnallocated</text>
</g>
<g id="clust50" class="cluster"><title>cluster_basePercentage</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1653.46,-257C1653.46,-257 1739.46,-257 1739.46,-257 1745.46,-257 1751.46,-263 1751.46,-269 1751.46,-269 1751.46,-320 1751.46,-320 1751.46,-326 1745.46,-332 1739.46,-332 1739.46,-332 1653.46,-332 1653.46,-332 1647.46,-332 1641.46,-326 1641.46,-320 1641.46,-320 1641.46,-269 1641.46,-269 1641.46,-263 1647.46,-257 1653.46,-257"/>
<text text-anchor="middle" x="1696.46" y="-316.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_basePercentage</text>
</g>
<g id="clust28" class="cluster"><title>clusterVendingMachineAuthority</title>
<path fill="#445773" stroke="#445773" d="M124.514,-16272C124.514,-16272 313.05,-16272 313.05,-16272 319.05,-16272 325.05,-16278 325.05,-16284 325.05,-16284 325.05,-16397 325.05,-16397 325.05,-16403 319.05,-16409 313.05,-16409 313.05,-16409 124.514,-16409 124.514,-16409 118.514,-16409 112.514,-16403 112.514,-16397 112.514,-16397 112.514,-16284 112.514,-16284 112.514,-16278 118.514,-16272 124.514,-16272"/>
<text text-anchor="middle" x="218.782" y="-16393.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">VendingMachineAuthority</text>
</g>
<g id="clust32" class="cluster"><title>cluster_seized</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1673.46,-7995C1673.46,-7995 1719.46,-7995 1719.46,-7995 1725.46,-7995 1731.46,-8001 1731.46,-8007 1731.46,-8007 1731.46,-8058 1731.46,-8058 1731.46,-8064 1725.46,-8070 1719.46,-8070 1719.46,-8070 1673.46,-8070 1673.46,-8070 1667.46,-8070 1661.46,-8064 1661.46,-8058 1661.46,-8058 1661.46,-8007 1661.46,-8007 1661.46,-8001 1667.46,-7995 1673.46,-7995"/>
<text text-anchor="middle" x="1696.46" y="-8054.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_seized</text>
</g>
<g id="clust33" class="cluster"><title>cluster_publicKey</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1668.46,-7912C1668.46,-7912 1725.46,-7912 1725.46,-7912 1731.46,-7912 1737.46,-7918 1737.46,-7924 1737.46,-7924 1737.46,-7975 1737.46,-7975 1737.46,-7981 1731.46,-7987 1725.46,-7987 1725.46,-7987 1668.46,-7987 1668.46,-7987 1662.46,-7987 1656.46,-7981 1656.46,-7975 1656.46,-7975 1656.46,-7924 1656.46,-7924 1656.46,-7918 1662.46,-7912 1668.46,-7912"/>
<text text-anchor="middle" x="1696.96" y="-7971.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_publicKey</text>
</g>
<g id="clust29" class="cluster"><title>clusterIMedianizer</title>
<path fill="#445773" stroke="#445773" d="M568.802,-8274C568.802,-8274 669.697,-8274 669.697,-8274 675.697,-8274 681.697,-8280 681.697,-8286 681.697,-8286 681.697,-8391 681.697,-8391 681.697,-8397 675.697,-8403 669.697,-8403 669.697,-8403 568.802,-8403 568.802,-8403 562.802,-8403 556.802,-8397 556.802,-8391 556.802,-8391 556.802,-8286 556.802,-8286 556.802,-8280 562.802,-8274 568.802,-8274"/>
<text text-anchor="middle" x="619.25" y="-8387.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">IMedianizer &#160;(iface)</text>
</g>
<g id="clust49" class="cluster"><title>clusterendOfTerm</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2222.37,-1250C2222.37,-1250 2280.37,-1250 2280.37,-1250 2286.37,-1250 2292.37,-1256 2292.37,-1262 2292.37,-1262 2292.37,-1313 2292.37,-1313 2292.37,-1319 2286.37,-1325 2280.37,-1325 2280.37,-1325 2222.37,-1325 2222.37,-1325 2216.37,-1325 2210.37,-1319 2210.37,-1313 2210.37,-1313 2210.37,-1262 2210.37,-1262 2210.37,-1256 2216.37,-1250 2222.37,-1250"/>
<text text-anchor="middle" x="2251.37" y="-1309.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">endOfTerm</text>
</g>
<g id="clust47" class="cluster"><title>cluster_reqDiff</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2228.37,-1333C2228.37,-1333 2274.37,-1333 2274.37,-1333 2280.37,-1333 2286.37,-1339 2286.37,-1345 2286.37,-1345 2286.37,-1396 2286.37,-1396 2286.37,-1402 2280.37,-1408 2274.37,-1408 2274.37,-1408 2228.37,-1408 2228.37,-1408 2222.37,-1408 2216.37,-1402 2216.37,-1396 2216.37,-1396 2216.37,-1345 2216.37,-1345 2216.37,-1339 2222.37,-1333 2228.37,-1333"/>
<text text-anchor="middle" x="2251.37" y="-1392.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_reqDiff</text>
</g>
<g id="clust35" class="cluster"><title>cluster_bondValue</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1666.46,-2828C1666.46,-2828 1727.46,-2828 1727.46,-2828 1733.46,-2828 1739.46,-2834 1739.46,-2840 1739.46,-2840 1739.46,-2891 1739.46,-2891 1739.46,-2897 1733.46,-2903 1727.46,-2903 1727.46,-2903 1666.46,-2903 1666.46,-2903 1660.46,-2903 1654.46,-2897 1654.46,-2891 1654.46,-2891 1654.46,-2840 1654.46,-2840 1654.46,-2834 1660.46,-2828 1666.46,-2828"/>
<text text-anchor="middle" x="1696.96" y="-2887.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_bondValue</text>
</g>
<g id="clust38" class="cluster"><title>clustertbtcLot</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1673.46,-2446C1673.46,-2446 1719.46,-2446 1719.46,-2446 1725.46,-2446 1731.46,-2452 1731.46,-2458 1731.46,-2458 1731.46,-2509 1731.46,-2509 1731.46,-2515 1725.46,-2521 1719.46,-2521 1719.46,-2521 1673.46,-2521 1673.46,-2521 1667.46,-2521 1661.46,-2515 1661.46,-2509 1661.46,-2509 1661.46,-2458 1661.46,-2458 1661.46,-2452 1667.46,-2446 1673.46,-2446"/>
<text text-anchor="middle" x="1696.46" y="-2505.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">tbtcLot</text>
</g>
<g id="clust39" class="cluster"><title>cluster_output</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1928.85,-870C1928.85,-870 2032.64,-870 2032.64,-870 2038.64,-870 2044.64,-876 2044.64,-882 2044.64,-882 2044.64,-1041 2044.64,-1041 2044.64,-1047 2038.64,-1053 2032.64,-1053 2032.64,-1053 1928.85,-1053 1928.85,-1053 1922.85,-1053 1916.85,-1047 1916.85,-1041 1916.85,-1041 1916.85,-882 1916.85,-882 1916.85,-876 1922.85,-870 1928.85,-870"/>
<text text-anchor="middle" x="1980.74" y="-1037.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_output</text>
</g>
<g id="clust46" class="cluster"><title>clusterValidateSPV</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2177.38,-1416C2177.38,-1416 2325.36,-1416 2325.36,-1416 2331.36,-1416 2337.36,-1422 2337.36,-1428 2337.36,-1428 2337.36,-1587 2337.36,-1587 2337.36,-1593 2331.36,-1599 2325.36,-1599 2325.36,-1599 2177.38,-1599 2177.38,-1599 2171.38,-1599 2165.38,-1593 2165.38,-1587 2165.38,-1587 2165.38,-1428 2165.38,-1428 2165.38,-1422 2171.38,-1416 2177.38,-1416"/>
<text text-anchor="middle" x="2251.37" y="-1583.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">ValidateSPV</text>
</g>
<g id="clust44" class="cluster"><title>cluster_input</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1632.87,-507C1632.87,-507 1760.06,-507 1760.06,-507 1766.06,-507 1772.06,-513 1772.06,-519 1772.06,-519 1772.06,-570 1772.06,-570 1772.06,-576 1766.06,-582 1760.06,-582 1760.06,-582 1632.87,-582 1632.87,-582 1626.87,-582 1620.87,-576 1620.87,-570 1620.87,-570 1620.87,-519 1620.87,-519 1620.87,-513 1626.87,-507 1632.87,-507"/>
<text text-anchor="middle" x="1696.46" y="-566.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_input</text>
</g>
<g id="clust48" class="cluster"><title>cluster_txId</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1952.89,-1382C1952.89,-1382 2008.59,-1382 2008.59,-1382 2014.59,-1382 2020.59,-1388 2020.59,-1394 2020.59,-1394 2020.59,-1445 2020.59,-1445 2020.59,-1451 2014.59,-1457 2008.59,-1457 2008.59,-1457 1952.89,-1457 1952.89,-1457 1946.89,-1457 1940.89,-1451 1940.89,-1445 1940.89,-1445 1940.89,-1394 1940.89,-1394 1940.89,-1388 1946.89,-1382 1952.89,-1382"/>
<text text-anchor="middle" x="1980.74" y="-1441.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_txId</text>
</g>
<g id="clust56" class="cluster"><title>clusterKeepFactorySelection.Storage</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M509.01,-8851C509.01,-8851 728.49,-8851 728.49,-8851 734.49,-8851 740.49,-8857 740.49,-8863 740.49,-8863 740.49,-9130 740.49,-9130 740.49,-9136 734.49,-9142 728.49,-9142 728.49,-9142 509.01,-9142 509.01,-9142 503.01,-9142 497.01,-9136 497.01,-9130 497.01,-9130 497.01,-8863 497.01,-8863 497.01,-8857 503.01,-8851 509.01,-8851"/>
<text text-anchor="middle" x="618.75" y="-9126.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">KeepFactorySelection.Storage</text>
</g>
<g id="clust59" class="cluster"><title>clusterIBondedECDSAKeepFactory</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M531.108,-8411C531.108,-8411 706.392,-8411 706.392,-8411 712.392,-8411 718.392,-8417 718.392,-8423 718.392,-8423 718.392,-8474 718.392,-8474 718.392,-8480 712.392,-8486 706.392,-8486 706.392,-8486 531.108,-8486 531.108,-8486 525.108,-8486 519.108,-8480 519.108,-8474 519.108,-8474 519.108,-8423 519.108,-8423 519.108,-8417 525.108,-8411 531.108,-8411"/>
<text text-anchor="middle" x="618.75" y="-8470.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">IBondedECDSAKeepFactory</text>
</g>
<g id="clust55" class="cluster"><title>clusterfee</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1957.74,-1299C1957.74,-1299 2003.74,-1299 2003.74,-1299 2009.74,-1299 2015.74,-1305 2015.74,-1311 2015.74,-1311 2015.74,-1362 2015.74,-1362 2015.74,-1368 2009.74,-1374 2003.74,-1374 2003.74,-1374 1957.74,-1374 1957.74,-1374 1951.74,-1374 1945.74,-1368 1945.74,-1362 1945.74,-1362 1945.74,-1311 1945.74,-1311 1945.74,-1305 1951.74,-1299 1957.74,-1299"/>
<text text-anchor="middle" x="1980.74" y="-1358.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">fee</text>
</g>
<g id="clust60" class="cluster"><title>cluster_delayAmount</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M920.623,-9341C920.623,-9341 994.623,-9341 994.623,-9341 1000.62,-9341 1006.62,-9347 1006.62,-9353 1006.62,-9353 1006.62,-9404 1006.62,-9404 1006.62,-9410 1000.62,-9416 994.623,-9416 994.623,-9416 920.623,-9416 920.623,-9416 914.623,-9416 908.623,-9410 908.623,-9404 908.623,-9404 908.623,-9353 908.623,-9353 908.623,-9347 914.623,-9341 920.623,-9341"/>
<text text-anchor="middle" x="957.623" y="-9400.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_delayAmount</text>
</g>
<g id="clust61" class="cluster"><title>clusterdepositValue</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1289.19,-1524C1289.19,-1524 1354.19,-1524 1354.19,-1524 1360.19,-1524 1366.19,-1530 1366.19,-1536 1366.19,-1536 1366.19,-1587 1366.19,-1587 1366.19,-1593 1360.19,-1599 1354.19,-1599 1354.19,-1599 1289.19,-1599 1289.19,-1599 1283.19,-1599 1277.19,-1593 1277.19,-1587 1277.19,-1587 1277.19,-1536 1277.19,-1536 1277.19,-1530 1283.19,-1524 1289.19,-1524"/>
<text text-anchor="middle" x="1321.69" y="-1583.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">depositValue</text>
</g>
<g id="clust52" class="cluster"><title>cluster_pubkey</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2215.07,-1167C2215.07,-1167 2287.67,-1167 2287.67,-1167 2293.67,-1167 2299.67,-1173 2299.67,-1179 2299.67,-1179 2299.67,-1230 2299.67,-1230 2299.67,-1236 2293.67,-1242 2287.67,-1242 2287.67,-1242 2215.07,-1242 2215.07,-1242 2209.07,-1242 2203.07,-1236 2203.07,-1230 2203.07,-1230 2203.07,-1179 2203.07,-1179 2203.07,-1173 2209.07,-1167 2215.07,-1167"/>
<text text-anchor="middle" x="2251.37" y="-1226.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_pubkey</text>
</g>
<g id="clust51" class="cluster"><title>cluster_available</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1673.46,-174C1673.46,-174 1720.46,-174 1720.46,-174 1726.46,-174 1732.46,-180 1732.46,-186 1732.46,-186 1732.46,-237 1732.46,-237 1732.46,-243 1726.46,-249 1720.46,-249 1720.46,-249 1673.46,-249 1673.46,-249 1667.46,-249 1661.46,-243 1661.46,-237 1661.46,-237 1661.46,-186 1661.46,-186 1661.46,-180 1667.46,-174 1673.46,-174"/>
<text text-anchor="middle" x="1696.96" y="-233.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_available</text>
</g>
<g id="clust53" class="cluster"><title>cluster_digest</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M2206.63,-1084C2206.63,-1084 2296.12,-1084 2296.12,-1084 2302.12,-1084 2308.12,-1090 2308.12,-1096 2308.12,-1096 2308.12,-1147 2308.12,-1147 2308.12,-1153 2302.12,-1159 2296.12,-1159 2296.12,-1159 2206.63,-1159 2206.63,-1159 2200.63,-1159 2194.63,-1153 2194.63,-1147 2194.63,-1147 2194.63,-1096 2194.63,-1096 2194.63,-1090 2200.63,-1084 2206.63,-1084"/>
<text text-anchor="middle" x="2251.37" y="-1143.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_digest</text>
</g>
<g id="clust58" class="cluster"><title>clusterIRelay</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M516.159,-8494C516.159,-8494 721.34,-8494 721.34,-8494 727.34,-8494 733.34,-8500 733.34,-8506 733.34,-8506 733.34,-8611 733.34,-8611 733.34,-8617 727.34,-8623 721.34,-8623 721.34,-8623 516.159,-8623 516.159,-8623 510.159,-8623 504.159,-8617 504.159,-8611 504.159,-8611 504.159,-8506 504.159,-8506 504.159,-8500 510.159,-8494 516.159,-8494"/>
<text text-anchor="middle" x="618.75" y="-8607.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">IRelay</text>
</g>
<g id="clust54" class="cluster"><title>cluster_postCallBalance</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M1651.46,-91C1651.46,-91 1741.46,-91 1741.46,-91 1747.46,-91 1753.46,-97 1753.46,-103 1753.46,-103 1753.46,-154 1753.46,-154 1753.46,-160 1747.46,-166 1741.46,-166 1741.46,-166 1651.46,-166 1651.46,-166 1645.46,-166 1639.46,-160 1639.46,-154 1639.46,-154 1639.46,-103 1639.46,-103 1639.46,-97 1645.46,-91 1651.46,-91"/>
<text text-anchor="middle" x="1696.46" y="-150.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">_postCallBalance</text>
</g>
<g id="clust57" class="cluster"><title>clusterpausedDuration</title>
<path fill="#3b4b63" stroke="#e8726d" stroke-dasharray="5,2" d="M578.75,-8768C578.75,-8768 658.75,-8768 658.75,-8768 664.75,-8768 670.75,-8774 670.75,-8780 670.75,-8780 670.75,-8831 670.75,-8831 670.75,-8837 664.75,-8843 658.75,-8843 658.75,-8843 578.75,-8843 578.75,-8843 572.75,-8843 566.75,-8837 566.75,-8831 566.75,-8831 566.75,-8780 566.75,-8780 566.75,-8774 572.75,-8768 578.75,-8768"/>
<text text-anchor="middle" x="618.75" y="-8827.8" font-family="Times New Roman,serif" font-size="14.00" fill="#f0f0f0">pausedDuration</text>
</g>
<g id="clust62" class="cluster"><title>cluster_01</title>
<polygon fill="#2e3e56" stroke="black" points="145.282,-16417 145.282,-16542 653.75,-16542 653.75,-16417 145.282,-16417"/>
<text text-anchor="middle" x="399.516" y="-16526.8" font-family="Times New Roman,serif" font-size="14.00">Legend</text>
</g>
<!-- DepositLog.approvedToLog -->
<g id="node1" class="node"><title>DepositLog.approvedToLog</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-12241" rx="70.6878" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12237.3" font-family="Times New Roman,serif" font-size="14.00">approvedToLog</text>
</g>
<!-- TBTCDepositToken.exists -->
<g id="node236" class="node"><title>TBTCDepositToken.exists</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-12164" rx="31.3957" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-12160.3" font-family="Times New Roman,serif" font-size="14.00">exists</text>
</g>
<!-- DepositLog.approvedToLog&#45;&gt;TBTCDepositToken.exists -->
<g id="edge1" class="edge"><title>DepositLog.approvedToLog&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M1015.52,-12230.5C1041.17,-12225.7 1071.8,-12219.8 1099.31,-12214 1163.62,-12200.6 1238.09,-12183.4 1282.05,-12173"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1283.08,-12176.4 1292.02,-12170.7 1281.48,-12169.6 1283.08,-12176.4"/>
</g>
<!-- DepositLog.logCreated -->
<g id="node2" class="node"><title>DepositLog.logCreated</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12511" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12507.3" font-family="Times New Roman,serif" font-size="14.00">logCreated</text>
</g>
<!-- DepositLog.logCreated&#45;&gt;DepositLog.approvedToLog -->
<g id="edge2" class="edge"><title>DepositLog.logCreated&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M665.646,-12517.5C704.048,-12520.2 757.331,-12516.7 787.935,-12484 820.864,-12448.8 775.369,-12303.5 807.935,-12268 825.852,-12248.4 852.801,-12240.1 878.856,-12237.2"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="879.499,-12240.7 889.162,-12236.3 878.899,-12233.7 879.499,-12240.7"/>
</g>
<!-- DepositLog.Created -->
<g id="node16" class="node"><title>DepositLog.Created</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12511" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12507.3" font-family="Times New Roman,serif" font-size="14.00">Created</text>
</g>
<!-- DepositLog.logCreated&#45;&gt;DepositLog.Created -->
<g id="edge3" class="edge"><title>DepositLog.logCreated&#45;&gt;DepositLog.Created</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M669.095,-12511C733.148,-12511 844.243,-12511 907.96,-12511"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="908.145,-12514.5 918.145,-12511 908.145,-12507.5 908.145,-12514.5"/>
</g>
<!-- DepositLog.logRedemptionRequested -->
<g id="node3" class="node"><title>DepositLog.logRedemptionRequested</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12457" rx="104.782" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12453.3" font-family="Times New Roman,serif" font-size="14.00">logRedemptionRequested</text>
</g>
<!-- DepositLog.logRedemptionRequested&#45;&gt;DepositLog.approvedToLog -->
<g id="edge4" class="edge"><title>DepositLog.logRedemptionRequested&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M720.392,-12461.3C745.509,-12457.4 770.282,-12448.3 787.935,-12430 838.293,-12377.8 758.114,-12320.7 807.935,-12268 825.989,-12248.9 852.688,-12240.6 878.5,-12237.6"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="879.069,-12241.1 888.709,-12236.7 878.433,-12234.1 879.069,-12241.1"/>
</g>
<!-- DepositLog.RedemptionRequested -->
<g id="node17" class="node"><title>DepositLog.RedemptionRequested</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12457" rx="93.6835" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12453.3" font-family="Times New Roman,serif" font-size="14.00">RedemptionRequested</text>
</g>
<!-- DepositLog.logRedemptionRequested&#45;&gt;DepositLog.RedemptionRequested -->
<g id="edge5" class="edge"><title>DepositLog.logRedemptionRequested&#45;&gt;DepositLog.RedemptionRequested</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M723.572,-12457C765.006,-12457 812.589,-12457 853.913,-12457"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="854,-12460.5 864,-12457 854,-12453.5 854,-12460.5"/>
</g>
<!-- DepositLog.logGotRedemptionSignature -->
<g id="node4" class="node"><title>DepositLog.logGotRedemptionSignature</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12403" rx="114.28" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12399.3" font-family="Times New Roman,serif" font-size="14.00">logGotRedemptionSignature</text>
</g>
<!-- DepositLog.logGotRedemptionSignature&#45;&gt;DepositLog.approvedToLog -->
<g id="edge6" class="edge"><title>DepositLog.logGotRedemptionSignature&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M733.197,-12404C753.561,-12399.2 773.018,-12390.6 787.935,-12376 822.864,-12341.9 773.357,-12302.5 807.935,-12268 826.31,-12249.7 852.671,-12241.5 878.109,-12238.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="878.566,-12241.8 888.169,-12237.3 877.871,-12234.8 878.566,-12241.8"/>
</g>
<!-- DepositLog.GotRedemptionSignature -->
<g id="node18" class="node"><title>DepositLog.GotRedemptionSignature</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12403" rx="102.882" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12399.3" font-family="Times New Roman,serif" font-size="14.00">GotRedemptionSignature</text>
</g>
<!-- DepositLog.logGotRedemptionSignature&#45;&gt;DepositLog.GotRedemptionSignature -->
<g id="edge7" class="edge"><title>DepositLog.logGotRedemptionSignature&#45;&gt;DepositLog.GotRedemptionSignature</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M733.33,-12403C769.143,-12403 808.67,-12403 844.389,-12403"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="844.848,-12406.5 854.848,-12403 844.848,-12399.5 844.848,-12406.5"/>
</g>
<!-- DepositLog.logRegisteredPubkey -->
<g id="node5" class="node"><title>DepositLog.logRegisteredPubkey</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12349" rx="87.9851" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12345.3" font-family="Times New Roman,serif" font-size="14.00">logRegisteredPubkey</text>
</g>
<!-- DepositLog.logRegisteredPubkey&#45;&gt;DepositLog.approvedToLog -->
<g id="edge8" class="edge"><title>DepositLog.logRegisteredPubkey&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M705.538,-12352.1C734.421,-12349 765.083,-12340.8 787.935,-12322 807.713,-12305.8 788.325,-12284.4 807.935,-12268 827.017,-12252 852.39,-12244.1 876.766,-12240.6"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="877.267,-12244.1 886.766,-12239.4 876.414,-12237.1 877.267,-12244.1"/>
</g>
<!-- DepositLog.RegisteredPubkey -->
<g id="node19" class="node"><title>DepositLog.RegisteredPubkey</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12349" rx="76.8869" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12345.3" font-family="Times New Roman,serif" font-size="14.00">RegisteredPubkey</text>
</g>
<!-- DepositLog.logRegisteredPubkey&#45;&gt;DepositLog.RegisteredPubkey -->
<g id="edge9" class="edge"><title>DepositLog.logRegisteredPubkey&#45;&gt;DepositLog.RegisteredPubkey</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M706.503,-12349C756.932,-12349 820.249,-12349 870.56,-12349"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="870.764,-12352.5 880.764,-12349 870.764,-12345.5 870.764,-12352.5"/>
</g>
<!-- DepositLog.logSetupFailed -->
<g id="node6" class="node"><title>DepositLog.logSetupFailed</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12295" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12291.3" font-family="Times New Roman,serif" font-size="14.00">logSetupFailed</text>
</g>
<!-- DepositLog.logSetupFailed&#45;&gt;DepositLog.approvedToLog -->
<g id="edge10" class="edge"><title>DepositLog.logSetupFailed&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M675.377,-12286.1C733.352,-12276.8 824.327,-12262.2 887.026,-12252.2"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="887.904,-12255.6 897.224,-12250.5 886.796,-12248.6 887.904,-12255.6"/>
</g>
<!-- DepositLog.SetupFailed -->
<g id="node20" class="node"><title>DepositLog.SetupFailed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12295" rx="53.8905" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12291.3" font-family="Times New Roman,serif" font-size="14.00">SetupFailed</text>
</g>
<!-- DepositLog.logSetupFailed&#45;&gt;DepositLog.SetupFailed -->
<g id="edge11" class="edge"><title>DepositLog.logSetupFailed&#45;&gt;DepositLog.SetupFailed</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M683.906,-12295C744.089,-12295 833.556,-12295 893.426,-12295"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="893.508,-12298.5 903.508,-12295 893.508,-12291.5 893.508,-12298.5"/>
</g>
<!-- DepositLog.logFunderRequestedAbort -->
<g id="node7" class="node"><title>DepositLog.logFunderRequestedAbort</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12241" rx="107.781" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12237.3" font-family="Times New Roman,serif" font-size="14.00">logFunderRequestedAbort</text>
</g>
<!-- DepositLog.logFunderRequestedAbort&#45;&gt;DepositLog.approvedToLog -->
<g id="edge12" class="edge"><title>DepositLog.logFunderRequestedAbort&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M726.801,-12241C775.328,-12241 831.73,-12241 876.514,-12241"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="876.759,-12244.5 886.759,-12241 876.759,-12237.5 876.759,-12244.5"/>
</g>
<!-- DepositLog.FunderAbortRequested -->
<g id="node21" class="node"><title>DepositLog.FunderAbortRequested</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12187" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12183.3" font-family="Times New Roman,serif" font-size="14.00">FunderAbortRequested</text>
</g>
<!-- DepositLog.logFunderRequestedAbort&#45;&gt;DepositLog.FunderAbortRequested -->
<g id="edge13" class="edge"><title>DepositLog.logFunderRequestedAbort&#45;&gt;DepositLog.FunderAbortRequested</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M697.035,-12228.6C749.884,-12220.1 819.866,-12208.9 873.849,-12200.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="874.416,-12203.7 883.735,-12198.7 873.308,-12196.8 874.416,-12203.7"/>
</g>
<!-- DepositLog.logFraudDuringSetup -->
<g id="node8" class="node"><title>DepositLog.logFraudDuringSetup</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12187" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12183.3" font-family="Times New Roman,serif" font-size="14.00">logFraudDuringSetup</text>
</g>
<!-- DepositLog.logFraudDuringSetup&#45;&gt;DepositLog.approvedToLog -->
<g id="edge14" class="edge"><title>DepositLog.logFraudDuringSetup&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M689.142,-12198.1C747.012,-12207.4 829.076,-12220.6 887.009,-12229.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="886.745,-12233.3 897.173,-12231.5 887.853,-12226.4 886.745,-12233.3"/>
</g>
<!-- DepositLog.FraudDuringSetup -->
<g id="node22" class="node"><title>DepositLog.FraudDuringSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12133" rx="77.1866" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12129.3" font-family="Times New Roman,serif" font-size="14.00">FraudDuringSetup</text>
</g>
<!-- DepositLog.logFraudDuringSetup&#45;&gt;DepositLog.FraudDuringSetup -->
<g id="edge15" class="edge"><title>DepositLog.logFraudDuringSetup&#45;&gt;DepositLog.FraudDuringSetup</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M689.142,-12175.9C745.831,-12166.8 825.737,-12154 883.432,-12144.7"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="884.255,-12148.1 893.575,-12143.1 883.147,-12141.2 884.255,-12148.1"/>
</g>
<!-- DepositLog.logFunded -->
<g id="node9" class="node"><title>DepositLog.logFunded</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12133" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12129.3" font-family="Times New Roman,serif" font-size="14.00">logFunded</text>
</g>
<!-- DepositLog.logFunded&#45;&gt;DepositLog.approvedToLog -->
<g id="edge16" class="edge"><title>DepositLog.logFunded&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M667.363,-12128.5C704.217,-12127.6 754.457,-12132.5 787.935,-12160 807.713,-12176.2 788.325,-12197.6 807.935,-12214 827.017,-12230 852.39,-12237.9 876.766,-12241.4"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="876.414,-12244.9 886.766,-12242.6 877.267,-12237.9 876.414,-12244.9"/>
</g>
<!-- DepositLog.Funded -->
<g id="node23" class="node"><title>DepositLog.Funded</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12079" rx="38.1938" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12075.3" font-family="Times New Roman,serif" font-size="14.00">Funded</text>
</g>
<!-- DepositLog.logFunded&#45;&gt;DepositLog.Funded -->
<g id="edge17" class="edge"><title>DepositLog.logFunded&#45;&gt;DepositLog.Funded</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M664.832,-12125.8C729.161,-12115.5 846.628,-12096.6 911.164,-12086.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="911.731,-12089.7 921.051,-12084.7 910.623,-12082.8 911.731,-12089.7"/>
</g>
<!-- DepositLog.logCourtesyCalled -->
<g id="node10" class="node"><title>DepositLog.logCourtesyCalled</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12079" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12075.3" font-family="Times New Roman,serif" font-size="14.00">logCourtesyCalled</text>
</g>
<!-- DepositLog.logCourtesyCalled&#45;&gt;DepositLog.approvedToLog -->
<g id="edge18" class="edge"><title>DepositLog.logCourtesyCalled&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M692.335,-12072.8C725.602,-12074 763.073,-12081.7 787.935,-12106 822.864,-12140.1 773.357,-12179.5 807.935,-12214 826.31,-12232.3 852.671,-12240.5 878.109,-12243.7"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="877.871,-12247.2 888.169,-12244.7 878.566,-12240.2 877.871,-12247.2"/>
</g>
<!-- DepositLog.CourtesyCalled -->
<g id="node24" class="node"><title>DepositLog.CourtesyCalled</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12025" rx="66.8882" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12021.3" font-family="Times New Roman,serif" font-size="14.00">CourtesyCalled</text>
</g>
<!-- DepositLog.logCourtesyCalled&#45;&gt;DepositLog.CourtesyCalled -->
<g id="edge19" class="edge"><title>DepositLog.logCourtesyCalled&#45;&gt;DepositLog.CourtesyCalled</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M683.509,-12068.8C742.473,-12059.3 829.79,-12045.3 889.732,-12035.7"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="890.53,-12039.1 899.85,-12034.1 889.422,-12032.2 890.53,-12039.1"/>
</g>
<!-- DepositLog.logStartedLiquidation -->
<g id="node11" class="node"><title>DepositLog.logStartedLiquidation</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12025" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12021.3" font-family="Times New Roman,serif" font-size="14.00">logStartedLiquidation</text>
</g>
<!-- DepositLog.logStartedLiquidation&#45;&gt;DepositLog.approvedToLog -->
<g id="edge20" class="edge"><title>DepositLog.logStartedLiquidation&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M702.463,-12018.7C733.294,-12020.8 766.073,-12029.3 787.935,-12052 838.293,-12104.2 758.114,-12161.3 807.935,-12214 825.989,-12233.1 852.688,-12241.4 878.5,-12244.4"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="878.433,-12247.9 888.709,-12245.3 879.069,-12240.9 878.433,-12247.9"/>
</g>
<!-- DepositLog.StartedLiquidation -->
<g id="node25" class="node"><title>DepositLog.StartedLiquidation</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-11971" rx="77.1866" ry="18"/>
<text text-anchor="middle" x="957.623" y="-11967.3" font-family="Times New Roman,serif" font-size="14.00">StartedLiquidation</text>
</g>
<!-- DepositLog.logStartedLiquidation&#45;&gt;DepositLog.StartedLiquidation -->
<g id="edge21" class="edge"><title>DepositLog.logStartedLiquidation&#45;&gt;DepositLog.StartedLiquidation</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M689.142,-12013.9C745.831,-12004.8 825.737,-11992 883.432,-11982.7"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="884.255,-11986.1 893.575,-11981.1 883.147,-11979.2 884.255,-11986.1"/>
</g>
<!-- DepositLog.logRedeemed -->
<g id="node12" class="node"><title>DepositLog.logRedeemed</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-11971" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11967.3" font-family="Times New Roman,serif" font-size="14.00">logRedeemed</text>
</g>
<!-- DepositLog.logRedeemed&#45;&gt;DepositLog.approvedToLog -->
<g id="edge22" class="edge"><title>DepositLog.logRedeemed&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M674.632,-11964C712.006,-11962.5 759.655,-11967.8 787.935,-11998 820.864,-12033.2 775.369,-12178.5 807.935,-12214 825.852,-12233.6 852.801,-12241.9 878.856,-12244.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="878.899,-12248.3 889.162,-12245.7 879.499,-12241.3 878.899,-12248.3"/>
</g>
<!-- DepositLog.Redeemed -->
<g id="node26" class="node"><title>DepositLog.Redeemed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-11917" rx="49.2915" ry="18"/>
<text text-anchor="middle" x="957.623" y="-11913.3" font-family="Times New Roman,serif" font-size="14.00">Redeemed</text>
</g>
<!-- DepositLog.logRedeemed&#45;&gt;DepositLog.Redeemed -->
<g id="edge23" class="edge"><title>DepositLog.logRedeemed&#45;&gt;DepositLog.Redeemed</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M672.386,-11962.6C734.878,-11952.5 838.586,-11935.9 901.955,-11925.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="902.829,-11929.2 912.149,-11924.1 901.721,-11922.3 902.829,-11929.2"/>
</g>
<!-- DepositLog.logLiquidated -->
<g id="node13" class="node"><title>DepositLog.logLiquidated</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12619" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12615.3" font-family="Times New Roman,serif" font-size="14.00">logLiquidated</text>
</g>
<!-- DepositLog.logLiquidated&#45;&gt;DepositLog.approvedToLog -->
<g id="edge24" class="edge"><title>DepositLog.logLiquidated&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M674.117,-12626.2C711.747,-12627.9 759.923,-12622.9 787.935,-12592 836.397,-12538.6 760.023,-12321.9 807.935,-12268 825.705,-12248 852.91,-12239.6 879.214,-12236.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="879.548,-12240.3 889.23,-12236 878.978,-12233.3 879.548,-12240.3"/>
</g>
<!-- DepositLog.Liquidated -->
<g id="node27" class="node"><title>DepositLog.Liquidated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12619" rx="49.2915" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12615.3" font-family="Times New Roman,serif" font-size="14.00">Liquidated</text>
</g>
<!-- DepositLog.logLiquidated&#45;&gt;DepositLog.Liquidated -->
<g id="edge25" class="edge"><title>DepositLog.logLiquidated&#45;&gt;DepositLog.Liquidated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M679.2,-12619C740.802,-12619 836.488,-12619 897.841,-12619"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="898.132,-12622.5 908.132,-12619 898.132,-12615.5 898.132,-12622.5"/>
</g>
<!-- DepositLog.logExitedCourtesyCall -->
<g id="node14" class="node"><title>DepositLog.logExitedCourtesyCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-12565" rx="92.0841" ry="18"/>
<text text-anchor="middle" x="618.75" y="-12561.3" font-family="Times New Roman,serif" font-size="14.00">logExitedCourtesyCall</text>
</g>
<!-- DepositLog.logExitedCourtesyCall&#45;&gt;DepositLog.approvedToLog -->
<g id="edge26" class="edge"><title>DepositLog.logExitedCourtesyCall&#45;&gt;DepositLog.approvedToLog</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M704.344,-12571.8C734.867,-12569.5 766.934,-12560.9 787.935,-12538 828.627,-12493.7 767.699,-12312.7 807.935,-12268 825.827,-12248.1 853.057,-12239.8 879.347,-12237"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="879.677,-12240.4 889.356,-12236.1 879.102,-12233.5 879.677,-12240.4"/>
</g>
<!-- DepositLog.ExitedCourtesyCall -->
<g id="node28" class="node"><title>DepositLog.ExitedCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-12565" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="957.623" y="-12561.3" font-family="Times New Roman,serif" font-size="14.00">ExitedCourtesyCall</text>
</g>
<!-- DepositLog.logExitedCourtesyCall&#45;&gt;DepositLog.ExitedCourtesyCall -->
<g id="edge27" class="edge"><title>DepositLog.logExitedCourtesyCall&#45;&gt;DepositLog.ExitedCourtesyCall</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M711.357,-12565C759.468,-12565 818.223,-12565 866.163,-12565"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="866.221,-12568.5 876.221,-12565 866.221,-12561.5 866.221,-12568.5"/>
</g>
<!-- DepositLog.setTbtcDepositToken -->
<g id="node15" class="node"><title>DepositLog.setTbtcDepositToken</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="618.75" cy="-11917" rx="90.1842" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11913.3" font-family="Times New Roman,serif" font-size="14.00">setTbtcDepositToken</text>
</g>
<!-- Deposit.&lt;Constructor&gt; -->
<g id="node29" class="node"><title>Deposit.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10563" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10559.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- Deposit.initialize -->
<g id="node68" class="node"><title>Deposit.initialize</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-10563" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-10559.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- Deposit.&lt;Constructor&gt;&#45;&gt;Deposit.initialize -->
<g id="edge28" class="edge"><title>Deposit.&lt;Constructor&gt;&#45;&gt;Deposit.initialize</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1387.21,-10563C1461.36,-10563 1580.88,-10563 1647.21,-10563"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1647.38,-10566.5 1657.38,-10563 1647.38,-10559.5 1647.38,-10566.5"/>
</g>
<!-- Deposit.&lt;Fallback&gt; -->
<g id="node30" class="node"><title>Deposit.&lt;Fallback&gt;</title>
<ellipse fill="#ffbdb9" stroke="brown" stroke-width="3" cx="1321.19" cy="-10509" rx="51.9908" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10505.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Fallback&gt;</text>
</g>
<!-- Deposit.getKeepAddress -->
<g id="node31" class="node"><title>Deposit.getKeepAddress</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10455" rx="71.4873" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10451.3" font-family="Times New Roman,serif" font-size="14.00">getKeepAddress</text>
</g>
<!-- Deposit.getCurrentState -->
<g id="node32" class="node"><title>Deposit.getCurrentState</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10401" rx="66.8882" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10397.3" font-family="Times New Roman,serif" font-size="14.00">getCurrentState</text>
</g>
<!-- Deposit.inActive -->
<g id="node33" class="node"><title>Deposit.inActive</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9267" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9263.3" font-family="Times New Roman,serif" font-size="14.00">inActive</text>
</g>
<!-- DepositUtils.Deposit.inActive -->
<g id="node338" class="node"><title>DepositUtils.Deposit.inActive</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6505" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6501.3" font-family="Times New Roman,serif" font-size="14.00">inActive</text>
</g>
<!-- Deposit.inActive&#45;&gt;DepositUtils.Deposit.inActive -->
<g id="edge29" class="edge"><title>Deposit.inActive&#45;&gt;DepositUtils.Deposit.inActive</title>
<path fill="none" stroke="white" stroke-width="2" d="M1358.49,-9273.97C1401.17,-9279.81 1470.8,-9281.53 1507.08,-9240 1556.57,-9183.35 1486.2,-6589.19 1535.08,-6532 1562.16,-6500.31 1611.34,-6496.19 1648.13,-6498.38"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1647.91,-6501.88 1658.15,-6499.15 1648.44,-6494.9 1647.91,-6501.88"/>
</g>
<!-- Deposit.remainingTerm -->
<g id="node34" class="node"><title>Deposit.remainingTerm</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9591" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9587.3" font-family="Times New Roman,serif" font-size="14.00">remainingTerm</text>
</g>
<!-- DepositUtils.Deposit.remainingTerm -->
<g id="node339" class="node"><title>DepositUtils.Deposit.remainingTerm</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7153" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7149.3" font-family="Times New Roman,serif" font-size="14.00">remainingTerm</text>
</g>
<!-- Deposit.remainingTerm&#45;&gt;DepositUtils.Deposit.remainingTerm -->
<g id="edge30" class="edge"><title>Deposit.remainingTerm&#45;&gt;DepositUtils.Deposit.remainingTerm</title>
<path fill="none" stroke="white" stroke-width="2" d="M1377.56,-9600.04C1419.76,-9603.44 1475.79,-9599.77 1507.08,-9564 1550.68,-9514.16 1492.01,-7230.32 1535.08,-7180 1557.12,-7154.24 1593.78,-7146.71 1626.48,-7145.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.49,-7149.47 1636.48,-7145.94 1626.47,-7142.47 1626.49,-7149.47"/>
</g>
<!-- Deposit.signerFee -->
<g id="node35" class="node"><title>Deposit.signerFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9105" rx="45.4919" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9101.3" font-family="Times New Roman,serif" font-size="14.00">signerFee</text>
</g>
<!-- DepositUtils.Deposit.signerFee -->
<g id="node340" class="node"><title>DepositUtils.Deposit.signerFee</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3481" rx="45.4919" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3477.3" font-family="Times New Roman,serif" font-size="14.00">signerFee</text>
</g>
<!-- Deposit.signerFee&#45;&gt;DepositUtils.Deposit.signerFee -->
<g id="edge31" class="edge"><title>Deposit.signerFee&#45;&gt;DepositUtils.Deposit.signerFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1362.75,-9112.55C1405.72,-9117.94 1472.08,-9118.28 1507.08,-9078 1557.82,-9019.6 1484.97,-3566.94 1535.08,-3508 1560.88,-3477.65 1606.95,-3472.55 1643.11,-3474.09"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1643.31,-3477.61 1653.5,-3474.72 1643.74,-3470.62 1643.31,-3477.61"/>
</g>
<!-- Deposit.lotSizeSatoshis -->
<g id="node36" class="node"><title>Deposit.lotSizeSatoshis</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10185" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10181.3" font-family="Times New Roman,serif" font-size="14.00">lotSizeSatoshis</text>
</g>
<!-- Deposit.lotSizeTbtc -->
<g id="node37" class="node"><title>Deposit.lotSizeTbtc</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9213" rx="52.7911" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9209.3" font-family="Times New Roman,serif" font-size="14.00">lotSizeTbtc</text>
</g>
<!-- DepositUtils.Deposit.lotSizeTbtc -->
<g id="node341" class="node"><title>DepositUtils.Deposit.lotSizeTbtc</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4939" rx="52.7911" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4935.3" font-family="Times New Roman,serif" font-size="14.00">lotSizeTbtc</text>
</g>
<!-- Deposit.lotSizeTbtc&#45;&gt;DepositUtils.Deposit.lotSizeTbtc -->
<g id="edge32" class="edge"><title>Deposit.lotSizeTbtc&#45;&gt;DepositUtils.Deposit.lotSizeTbtc</title>
<path fill="none" stroke="white" stroke-width="2" d="M1368.35,-9221.2C1411.28,-9225.88 1473.53,-9224.54 1507.08,-9186 1584.04,-9097.58 1459.08,-5055.26 1535.08,-4966 1559.49,-4937.33 1601.98,-4931.2 1637.09,-4931.91"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1637.13,-4935.42 1647.25,-4932.31 1637.4,-4928.42 1637.13,-4935.42"/>
</g>
<!-- Deposit.utxoSize -->
<g id="node38" class="node"><title>Deposit.utxoSize</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9159" rx="42.4939" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9155.3" font-family="Times New Roman,serif" font-size="14.00">utxoSize</text>
</g>
<!-- DepositUtils.Deposit.utxoSize -->
<g id="node342" class="node"><title>DepositUtils.Deposit.utxoSize</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4345" rx="42.4939" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4341.3" font-family="Times New Roman,serif" font-size="14.00">utxoSize</text>
</g>
<!-- Deposit.utxoSize&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge33" class="edge"><title>Deposit.utxoSize&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M1360.04,-9166.2C1402.87,-9171.9 1471.31,-9173.12 1507.08,-9132 1550.46,-9082.12 1492.24,-4422.35 1535.08,-4372 1561.67,-4340.74 1609.76,-4336.27 1646.37,-4338.25"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1646.14,-4341.74 1656.36,-4338.96 1646.64,-4334.76 1646.14,-4341.74"/>
</g>
<!-- Deposit.createNewDeposit -->
<g id="node39" class="node"><title>Deposit.createNewDeposit</title>
<ellipse fill="#ff9797" stroke="brown" stroke-width="3" cx="1321.19" cy="-9483" rx="77.1866" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9479.3" font-family="Times New Roman,serif" font-size="14.00">createNewDeposit</text>
</g>
<!-- DepositUtils.Deposit.createNewDeposit -->
<g id="node343" class="node"><title>DepositUtils.Deposit.createNewDeposit</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7045" rx="77.1866" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7041.3" font-family="Times New Roman,serif" font-size="14.00">createNewDeposit</text>
</g>
<!-- Deposit.createNewDeposit&#45;&gt;DepositUtils.Deposit.createNewDeposit -->
<g id="edge34" class="edge"><title>Deposit.createNewDeposit&#45;&gt;DepositUtils.Deposit.createNewDeposit</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.83,-9492.65C1427.67,-9494.75 1478.03,-9489.2 1507.08,-9456 1550.68,-9406.16 1492.01,-7122.32 1535.08,-7072 1554.54,-7049.26 1585.38,-7040.72 1614.85,-7038.52"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1615.38,-7042 1625.19,-7038 1615.02,-7035.01 1615.38,-7042"/>
</g>
<!-- Deposit.requestRedemption -->
<g id="node40" class="node"><title>Deposit.requestRedemption</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9429" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9425.3" font-family="Times New Roman,serif" font-size="14.00">requestRedemption</text>
</g>
<!-- DepositUtils.Deposit.requestRedemption -->
<g id="node344" class="node"><title>DepositUtils.Deposit.requestRedemption</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6991" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6987.3" font-family="Times New Roman,serif" font-size="14.00">requestRedemption</text>
</g>
<!-- Deposit.requestRedemption&#45;&gt;DepositUtils.Deposit.requestRedemption -->
<g id="edge35" class="edge"><title>Deposit.requestRedemption&#45;&gt;DepositUtils.Deposit.requestRedemption</title>
<path fill="none" stroke="white" stroke-width="2" d="M1389.55,-9438.78C1429.88,-9440.49 1478.67,-9434.47 1507.08,-9402 1550.68,-9352.16 1492.01,-7068.32 1535.08,-7018 1553.64,-6996.31 1582.55,-6987.54 1610.74,-6984.87"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1611.34,-6988.34 1621.07,-6984.15 1610.85,-6981.36 1611.34,-6988.34"/>
</g>
<!-- Deposit.transferAndRequestRedemption -->
<g id="node41" class="node"><title>Deposit.transferAndRequestRedemption</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8889" rx="128.077" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8885.3" font-family="Times New Roman,serif" font-size="14.00">transferAndRequestRedemption</text>
</g>
<!-- DepositUtils.Deposit.transferAndRequestRedemption -->
<g id="node345" class="node"><title>DepositUtils.Deposit.transferAndRequestRedemption</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6883" rx="128.077" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6879.3" font-family="Times New Roman,serif" font-size="14.00">transferAndRequestRedemption</text>
</g>
<!-- Deposit.transferAndRequestRedemption&#45;&gt;DepositUtils.Deposit.transferAndRequestRedemption -->
<g id="edge36" class="edge"><title>Deposit.transferAndRequestRedemption&#45;&gt;DepositUtils.Deposit.transferAndRequestRedemption</title>
<path fill="none" stroke="white" stroke-width="2" d="M1438.97,-8896.09C1464.88,-8891.71 1489.75,-8881.75 1507.08,-8862 1578.6,-8780.47 1464.45,-6992.31 1535.08,-6910 1542.33,-6901.55 1551.15,-6895.06 1560.89,-6890.13"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1562.36,-6893.31 1570.07,-6886.03 1559.51,-6886.92 1562.36,-6893.31"/>
</g>
<!-- Deposit.getRedemptionTbtcRequirement -->
<g id="node42" class="node"><title>Deposit.getRedemptionTbtcRequirement</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8511" rx="129.177" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8507.3" font-family="Times New Roman,serif" font-size="14.00">getRedemptionTbtcRequirement</text>
</g>
<!-- DepositUtils.Deposit.getRedemptionTbtcRequirement -->
<g id="node346" class="node"><title>DepositUtils.Deposit.getRedemptionTbtcRequirement</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4885" rx="129.177" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4881.3" font-family="Times New Roman,serif" font-size="14.00">getRedemptionTbtcRequirement</text>
</g>
<!-- Deposit.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.getRedemptionTbtcRequirement -->
<g id="edge37" class="edge"><title>Deposit.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.getRedemptionTbtcRequirement</title>
<path fill="none" stroke="white" stroke-width="2" d="M1448.76,-8514.1C1471.13,-8508.64 1492.05,-8498.53 1507.08,-8481 1571.62,-8405.74 1470.76,-4987.45 1535.08,-4912 1542.09,-4903.78 1550.59,-4897.41 1559.97,-4892.52"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1561.59,-4895.63 1569.22,-4888.28 1558.67,-4889.27 1561.59,-4895.63"/>
</g>
<!-- Deposit.getOwnerRedemptionTbtcRequirement -->
<g id="node43" class="node"><title>Deposit.getOwnerRedemptionTbtcRequirement</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8835" rx="153.273" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8831.3" font-family="Times New Roman,serif" font-size="14.00">getOwnerRedemptionTbtcRequirement</text>
</g>
<!-- DepositUtils.Deposit.getOwnerRedemptionTbtcRequirement -->
<g id="node347" class="node"><title>DepositUtils.Deposit.getOwnerRedemptionTbtcRequirement</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6829" rx="153.273" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6825.3" font-family="Times New Roman,serif" font-size="14.00">getOwnerRedemptionTbtcRequirement</text>
</g>
<!-- Deposit.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.getOwnerRedemptionTbtcRequirement -->
<g id="edge38" class="edge"><title>Deposit.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.getOwnerRedemptionTbtcRequirement</title>
<path fill="none" stroke="white" stroke-width="2" d="M1473.21,-8832.19C1486.03,-8826.57 1497.67,-8818.73 1507.08,-8808 1578.6,-8726.47 1464.45,-6938.31 1535.08,-6856 1539.65,-6850.67 1544.84,-6846.13 1550.5,-6842.26"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1552.35,-6845.23 1559.1,-6837.06 1548.73,-6839.24 1552.35,-6845.23"/>
</g>
<!-- Deposit.provideRedemptionSignature -->
<g id="node44" class="node"><title>Deposit.provideRedemptionSignature</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8781" rx="116.18" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8777.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionSignature</text>
</g>
<!-- DepositUtils.Deposit.provideRedemptionSignature -->
<g id="node348" class="node"><title>DepositUtils.Deposit.provideRedemptionSignature</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6775" rx="116.18" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6771.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionSignature</text>
</g>
<!-- Deposit.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.provideRedemptionSignature -->
<g id="edge39" class="edge"><title>Deposit.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.provideRedemptionSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M1421.14,-8790.27C1453.12,-8787.75 1485.79,-8778.26 1507.08,-8754 1578.6,-8672.47 1464.45,-6884.31 1535.08,-6802 1544.64,-6790.86 1556.93,-6783.13 1570.46,-6777.88"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1571.66,-6781.17 1580,-6774.64 1569.4,-6774.54 1571.66,-6781.17"/>
</g>
<!-- Deposit.increaseRedemptionFee -->
<g id="node45" class="node"><title>Deposit.increaseRedemptionFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8727" rx="97.4827" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8723.3" font-family="Times New Roman,serif" font-size="14.00">increaseRedemptionFee</text>
</g>
<!-- DepositUtils.Deposit.increaseRedemptionFee -->
<g id="node349" class="node"><title>DepositUtils.Deposit.increaseRedemptionFee</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6721" rx="97.4827" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6717.3" font-family="Times New Roman,serif" font-size="14.00">increaseRedemptionFee</text>
</g>
<!-- Deposit.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.increaseRedemptionFee -->
<g id="edge40" class="edge"><title>Deposit.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.increaseRedemptionFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1402.5,-8737.01C1439.88,-8736.89 1481.62,-8729.02 1507.08,-8700 1578.6,-8618.47 1464.45,-6830.31 1535.08,-6748 1549.81,-6730.83 1571.04,-6721.76 1593.25,-6717.41"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1593.86,-6720.85 1603.16,-6715.77 1592.72,-6713.95 1593.86,-6720.85"/>
</g>
<!-- Deposit.provideRedemptionProof -->
<g id="node46" class="node"><title>Deposit.provideRedemptionProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8673" rx="103.982" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8669.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionProof</text>
</g>
<!-- DepositUtils.Deposit.provideRedemptionProof -->
<g id="node350" class="node"><title>DepositUtils.Deposit.provideRedemptionProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6667" rx="103.982" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6663.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionProof</text>
</g>
<!-- Deposit.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.provideRedemptionProof -->
<g id="edge41" class="edge"><title>Deposit.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.provideRedemptionProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1408.18,-8682.93C1444.05,-8682.05 1482.91,-8673.56 1507.08,-8646 1578.6,-8564.47 1464.45,-6776.31 1535.08,-6694 1547.98,-6678.97 1565.85,-6670.15 1585,-6665.26"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1585.78,-6668.67 1594.8,-6663.11 1584.28,-6661.84 1585.78,-6668.67"/>
</g>
<!-- Deposit.notifySignatureTimeout -->
<g id="node47" class="node"><title>Deposit.notifySignatureTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8619" rx="95.5831" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8615.3" font-family="Times New Roman,serif" font-size="14.00">notifySignatureTimeout</text>
</g>
<!-- DepositUtils.Deposit.notifySignatureTimeout -->
<g id="node351" class="node"><title>DepositUtils.Deposit.notifySignatureTimeout</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6559" rx="95.5831" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6555.3" font-family="Times New Roman,serif" font-size="14.00">notifySignatureTimeout</text>
</g>
<!-- Deposit.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.notifySignatureTimeout -->
<g id="edge42" class="edge"><title>Deposit.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.notifySignatureTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1400.62,-8629.01C1438.48,-8629.16 1481.2,-8621.51 1507.08,-8592 1580.56,-8508.2 1462.51,-6670.6 1535.08,-6586 1550.21,-6568.36 1572.2,-6559.27 1595.06,-6555.06"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1595.89,-6558.47 1605.25,-6553.5 1594.83,-6551.55 1595.89,-6558.47"/>
</g>
<!-- Deposit.notifyRedemptionProofTimeout -->
<g id="node48" class="node"><title>Deposit.notifyRedemptionProofTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8565" rx="127.277" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8561.3" font-family="Times New Roman,serif" font-size="14.00">notifyRedemptionProofTimeout</text>
</g>
<!-- DepositUtils.Deposit.notifyRedemptionProofTimeout -->
<g id="node352" class="node"><title>DepositUtils.Deposit.notifyRedemptionProofTimeout</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6451" rx="127.277" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6447.3" font-family="Times New Roman,serif" font-size="14.00">notifyRedemptionProofTimeout</text>
</g>
<!-- Deposit.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.notifyRedemptionProofTimeout -->
<g id="edge43" class="edge"><title>Deposit.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.notifyRedemptionProofTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1437.54,-8572.34C1463.97,-8568.08 1489.44,-8558.13 1507.08,-8538 1582.52,-8451.93 1460.58,-6564.89 1535.08,-6478 1542.39,-6469.47 1551.32,-6462.93 1561.16,-6457.99"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1562.72,-6461.12 1570.45,-6453.88 1559.89,-6454.72 1562.72,-6461.12"/>
</g>
<!-- Deposit.notifySignerSetupFailure -->
<g id="node49" class="node"><title>Deposit.notifySignerSetupFailure</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10347" rx="100.182" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10343.3" font-family="Times New Roman,serif" font-size="14.00">notifySignerSetupFailure</text>
</g>
<!-- DepositUtils.Deposit.notifySignerSetupFailure -->
<g id="node353" class="node"><title>DepositUtils.Deposit.notifySignerSetupFailure</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7855" rx="100.182" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7851.3" font-family="Times New Roman,serif" font-size="14.00">notifySignerSetupFailure</text>
</g>
<!-- Deposit.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.notifySignerSetupFailure -->
<g id="edge44" class="edge"><title>Deposit.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.notifySignerSetupFailure</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.42,-10357C1441.32,-10356.7 1482.09,-10348.6 1507.08,-10320 1551.19,-10269.6 1495.51,-7962.08 1535.08,-7908 1550.36,-7887.11 1574.18,-7874.32 1598.83,-7866.53"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1600.03,-7869.83 1608.67,-7863.69 1598.09,-7863.1 1600.03,-7869.83"/>
</g>
<!-- Deposit.retrieveSignerPubkey -->
<g id="node50" class="node"><title>Deposit.retrieveSignerPubkey</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10293" rx="87.1846" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10289.3" font-family="Times New Roman,serif" font-size="14.00">retrieveSignerPubkey</text>
</g>
<!-- DepositUtils.Deposit.retrieveSignerPubkey -->
<g id="node354" class="node"><title>DepositUtils.Deposit.retrieveSignerPubkey</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7801" rx="87.1846" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7797.3" font-family="Times New Roman,serif" font-size="14.00">retrieveSignerPubkey</text>
</g>
<!-- Deposit.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.retrieveSignerPubkey -->
<g id="edge45" class="edge"><title>Deposit.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.retrieveSignerPubkey</title>
<path fill="none" stroke="white" stroke-width="2" d="M1394.13,-10302.9C1433.52,-10304 1479.74,-10297.3 1507.08,-10266 1551.67,-10215 1491.05,-7879.46 1535.08,-7828 1552.41,-7807.74 1578.78,-7798.75 1605.17,-7795.48"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1605.65,-7798.95 1615.26,-7794.49 1604.96,-7791.98 1605.65,-7798.95"/>
</g>
<!-- Deposit.notifyFundingTimeout -->
<g id="node51" class="node"><title>Deposit.notifyFundingTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10239" rx="91.784" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10235.3" font-family="Times New Roman,serif" font-size="14.00">notifyFundingTimeout</text>
</g>
<!-- DepositUtils.Deposit.notifyFundingTimeout -->
<g id="node355" class="node"><title>DepositUtils.Deposit.notifyFundingTimeout</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7747" rx="91.784" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7743.3" font-family="Times New Roman,serif" font-size="14.00">notifyFundingTimeout</text>
</g>
<!-- Deposit.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.notifyFundingTimeout -->
<g id="edge46" class="edge"><title>Deposit.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.notifyFundingTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.38,-10249C1436.03,-10249.6 1480.49,-10242.4 1507.08,-10212 1551.67,-10161 1491.05,-7825.46 1535.08,-7774 1551.21,-7755.14 1575.17,-7746.05 1599.68,-7742.24"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1600.35,-7745.69 1609.83,-7740.96 1599.47,-7738.74 1600.35,-7745.69"/>
</g>
<!-- Deposit.requestFunderAbort -->
<g id="node52" class="node"><title>Deposit.requestFunderAbort</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9321" rx="84.485" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9317.3" font-family="Times New Roman,serif" font-size="14.00">requestFunderAbort</text>
</g>
<!-- DepositUtils.Deposit.depositOwner -->
<g id="node356" class="node"><title>DepositUtils.Deposit.depositOwner</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5857" rx="61.99" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5853.3" font-family="Times New Roman,serif" font-size="14.00">depositOwner</text>
</g>
<!-- Deposit.requestFunderAbort&#45;&gt;DepositUtils.Deposit.depositOwner -->
<g id="edge47" class="edge"><title>Deposit.requestFunderAbort&#45;&gt;DepositUtils.Deposit.depositOwner</title>
<path fill="none" stroke="white" stroke-width="2" d="M1391.87,-9330.9C1431.76,-9332.3 1479.26,-9325.91 1507.08,-9294 1569.32,-9222.6 1473.61,-5956.08 1535.08,-5884 1557.74,-5857.42 1595.95,-5850.23 1629.39,-5849.89"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1629.56,-5853.39 1639.6,-5849.99 1629.63,-5846.39 1629.56,-5853.39"/>
</g>
<!-- DepositUtils.Deposit.requestFunderAbort -->
<g id="node357" class="node"><title>DepositUtils.Deposit.requestFunderAbort</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6937" rx="84.485" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6933.3" font-family="Times New Roman,serif" font-size="14.00">requestFunderAbort</text>
</g>
<!-- Deposit.requestFunderAbort&#45;&gt;DepositUtils.Deposit.requestFunderAbort -->
<g id="edge48" class="edge"><title>Deposit.requestFunderAbort&#45;&gt;DepositUtils.Deposit.requestFunderAbort</title>
<path fill="none" stroke="white" stroke-width="2" d="M1392.29,-9330.88C1432.06,-9332.2 1479.31,-9325.73 1507.08,-9294 1549.7,-9245.29 1492.98,-7013.17 1535.08,-6964 1552.99,-6943.08 1580.53,-6934.18 1607.76,-6931.18"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1608.09,-6934.67 1617.76,-6930.33 1607.5,-6927.69 1608.09,-6934.67"/>
</g>
<!-- Deposit.provideFundingECDSAFraudProof -->
<g id="node53" class="node"><title>Deposit.provideFundingECDSAFraudProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10131" rx="140.275" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10127.3" font-family="Times New Roman,serif" font-size="14.00">provideFundingECDSAFraudProof</text>
</g>
<!-- DepositUtils.Deposit.provideFundingECDSAFraudProof -->
<g id="node358" class="node"><title>DepositUtils.Deposit.provideFundingECDSAFraudProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7693" rx="140.275" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7689.3" font-family="Times New Roman,serif" font-size="14.00">provideFundingECDSAFraudProof</text>
</g>
<!-- Deposit.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.provideFundingECDSAFraudProof -->
<g id="edge49" class="edge"><title>Deposit.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.provideFundingECDSAFraudProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.13,-10132.8C1478.7,-10127.1 1494.8,-10118 1507.08,-10104 1550.68,-10054.2 1492.01,-7770.32 1535.08,-7720 1540.75,-7713.37 1547.39,-7707.95 1554.69,-7703.54"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1556.36,-7706.61 1563.53,-7698.81 1553.06,-7700.44 1556.36,-7706.61"/>
</g>
<!-- Deposit.provideBTCFundingProof -->
<g id="node54" class="node"><title>Deposit.provideBTCFundingProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9537" rx="107.482" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9533.3" font-family="Times New Roman,serif" font-size="14.00">provideBTCFundingProof</text>
</g>
<!-- DepositUtils.Deposit.provideBTCFundingProof -->
<g id="node359" class="node"><title>DepositUtils.Deposit.provideBTCFundingProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7099" rx="107.482" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7095.3" font-family="Times New Roman,serif" font-size="14.00">provideBTCFundingProof</text>
</g>
<!-- Deposit.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.provideBTCFundingProof -->
<g id="edge50" class="edge"><title>Deposit.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.provideBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1411.08,-9546.88C1446.14,-9545.62 1483.58,-9536.86 1507.08,-9510 1550.68,-9460.16 1492.01,-7176.32 1535.08,-7126 1547.01,-7112.06 1563.21,-7103.46 1580.75,-7098.38"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1581.76,-7101.74 1590.61,-7095.91 1580.06,-7094.95 1581.76,-7101.74"/>
</g>
<!-- Deposit.provideECDSAFraudProof -->
<g id="node55" class="node"><title>Deposit.provideECDSAFraudProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10077" rx="110.48" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10073.3" font-family="Times New Roman,serif" font-size="14.00">provideECDSAFraudProof</text>
</g>
<!-- DepositUtils.Deposit.provideECDSAFraudProof -->
<g id="node360" class="node"><title>DepositUtils.Deposit.provideECDSAFraudProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7639" rx="110.48" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7635.3" font-family="Times New Roman,serif" font-size="14.00">provideECDSAFraudProof</text>
</g>
<!-- Deposit.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.provideECDSAFraudProof -->
<g id="edge51" class="edge"><title>Deposit.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.provideECDSAFraudProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1414.43,-10086.7C1448.51,-10085 1484.33,-10076 1507.08,-10050 1550.68,-10000.2 1492.01,-7716.32 1535.08,-7666 1546.02,-7653.21 1560.57,-7644.91 1576.45,-7639.71"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1577.83,-7642.96 1586.49,-7636.86 1575.91,-7636.22 1577.83,-7642.96"/>
</g>
<!-- Deposit.getCollateralizationPercentage -->
<g id="node56" class="node"><title>Deposit.getCollateralizationPercentage</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10023" rx="118.079" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10019.3" font-family="Times New Roman,serif" font-size="14.00">getCollateralizationPercentage</text>
</g>
<!-- DepositUtils.Deposit.getCollateralizationPercentage -->
<g id="node361" class="node"><title>DepositUtils.Deposit.getCollateralizationPercentage</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7585" rx="118.079" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7581.3" font-family="Times New Roman,serif" font-size="14.00">getCollateralizationPercentage</text>
</g>
<!-- Deposit.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.getCollateralizationPercentage -->
<g id="edge52" class="edge"><title>Deposit.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.getCollateralizationPercentage</title>
<path fill="none" stroke="white" stroke-width="2" d="M1423.1,-10032.1C1454.47,-10029.4 1486.25,-10019.8 1507.08,-9996 1550.68,-9946.16 1492.01,-7662.32 1535.08,-7612 1544.16,-7601.38 1555.73,-7593.86 1568.48,-7588.64"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1569.73,-7591.91 1577.95,-7585.23 1567.36,-7585.32 1569.73,-7591.91"/>
</g>
<!-- Deposit.getInitialCollateralizedPercent -->
<g id="node57" class="node"><title>Deposit.getInitialCollateralizedPercent</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9051" rx="116.979" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9047.3" font-family="Times New Roman,serif" font-size="14.00">getInitialCollateralizedPercent</text>
</g>
<!-- Deposit.getUndercollateralizedThresholdPercent -->
<g id="node58" class="node"><title>Deposit.getUndercollateralizedThresholdPercent</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8997" rx="155.173" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8993.3" font-family="Times New Roman,serif" font-size="14.00">getUndercollateralizedThresholdPercent</text>
</g>
<!-- Deposit.getSeverelyUndercollateralizedThresholdPercent -->
<g id="node59" class="node"><title>Deposit.getSeverelyUndercollateralizedThresholdPercent</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8943" rx="185.767" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8939.3" font-family="Times New Roman,serif" font-size="14.00">getSeverelyUndercollateralizedThresholdPercent</text>
</g>
<!-- Deposit.auctionValue -->
<g id="node60" class="node"><title>Deposit.auctionValue</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9375" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9371.3" font-family="Times New Roman,serif" font-size="14.00">auctionValue</text>
</g>
<!-- DepositUtils.Deposit.auctionValue -->
<g id="node362" class="node"><title>DepositUtils.Deposit.auctionValue</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6613" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6609.3" font-family="Times New Roman,serif" font-size="14.00">auctionValue</text>
</g>
<!-- Deposit.auctionValue&#45;&gt;DepositUtils.Deposit.auctionValue -->
<g id="edge53" class="edge"><title>Deposit.auctionValue&#45;&gt;DepositUtils.Deposit.auctionValue</title>
<path fill="none" stroke="white" stroke-width="2" d="M1372.46,-9383.6C1415.15,-9387.7 1474.53,-9385.25 1507.08,-9348 1556.57,-9291.35 1486.2,-6697.19 1535.08,-6640 1558.44,-6612.67 1598.24,-6605.85 1632.34,-6605.89"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1632.65,-6609.4 1642.72,-6606.11 1632.8,-6602.4 1632.65,-6609.4"/>
</g>
<!-- Deposit.purchaseSignerBondsAtAuction -->
<g id="node61" class="node"><title>Deposit.purchaseSignerBondsAtAuction</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9969" rx="128.077" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9965.3" font-family="Times New Roman,serif" font-size="14.00">purchaseSignerBondsAtAuction</text>
</g>
<!-- DepositUtils.Deposit.purchaseSignerBondsAtAuction -->
<g id="node363" class="node"><title>DepositUtils.Deposit.purchaseSignerBondsAtAuction</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7531" rx="128.077" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7527.3" font-family="Times New Roman,serif" font-size="14.00">purchaseSignerBondsAtAuction</text>
</g>
<!-- Deposit.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.purchaseSignerBondsAtAuction -->
<g id="edge54" class="edge"><title>Deposit.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.purchaseSignerBondsAtAuction</title>
<path fill="none" stroke="white" stroke-width="2" d="M1439.01,-9976.12C1464.91,-9971.74 1489.78,-9961.78 1507.08,-9942 1550.68,-9892.16 1492.01,-7608.32 1535.08,-7558 1542.32,-7549.54 1551.13,-7543.05 1560.86,-7538.11"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1562.34,-7541.29 1570.04,-7534.01 1559.48,-7534.9 1562.34,-7541.29"/>
</g>
<!-- Deposit.notifyCourtesyCall -->
<g id="node62" class="node"><title>Deposit.notifyCourtesyCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9915" rx="79.0865" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9911.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyCall</text>
</g>
<!-- DepositUtils.Deposit.notifyCourtesyCall -->
<g id="node364" class="node"><title>DepositUtils.Deposit.notifyCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7477" rx="79.0865" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7473.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyCall</text>
</g>
<!-- Deposit.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.notifyCourtesyCall -->
<g id="edge55" class="edge"><title>Deposit.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.notifyCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.19,-9924.72C1428.77,-9926.62 1478.35,-9920.84 1507.08,-9888 1550.68,-9838.16 1492.01,-7554.32 1535.08,-7504 1554.13,-7481.74 1584.09,-7473.09 1612.98,-7470.67"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1613.36,-7474.16 1623.14,-7470.07 1612.94,-7467.17 1613.36,-7474.16"/>
</g>
<!-- Deposit.exitCourtesyCall -->
<g id="node63" class="node"><title>Deposit.exitCourtesyCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9861" rx="70.6878" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9857.3" font-family="Times New Roman,serif" font-size="14.00">exitCourtesyCall</text>
</g>
<!-- DepositUtils.Deposit.exitCourtesyCall -->
<g id="node365" class="node"><title>DepositUtils.Deposit.exitCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7423" rx="70.6878" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7419.3" font-family="Times New Roman,serif" font-size="14.00">exitCourtesyCall</text>
</g>
<!-- Deposit.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.exitCourtesyCall -->
<g id="edge56" class="edge"><title>Deposit.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.exitCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1381.93,-9870.36C1423.56,-9873.15 1476.85,-9868.55 1507.08,-9834 1550.68,-9784.16 1492.01,-7500.32 1535.08,-7450 1555.95,-7425.61 1589.92,-7417.56 1621.23,-7416.14"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1621.37,-7419.64 1631.29,-7415.91 1621.21,-7412.64 1621.37,-7419.64"/>
</g>
<!-- Deposit.notifyUndercollateralizedLiquidation -->
<g id="node64" class="node"><title>Deposit.notifyUndercollateralizedLiquidation</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9807" rx="141.875" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9803.3" font-family="Times New Roman,serif" font-size="14.00">notifyUndercollateralizedLiquidation</text>
</g>
<!-- DepositUtils.Deposit.notifyUndercollateralizedLiquidation -->
<g id="node366" class="node"><title>DepositUtils.Deposit.notifyUndercollateralizedLiquidation</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7369" rx="141.875" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7365.3" font-family="Times New Roman,serif" font-size="14.00">notifyUndercollateralizedLiquidation</text>
</g>
<!-- Deposit.notifyUndercollateralizedLiquidation&#45;&gt;DepositUtils.Deposit.notifyUndercollateralizedLiquidation -->
<g id="edge57" class="edge"><title>Deposit.notifyUndercollateralizedLiquidation&#45;&gt;DepositUtils.Deposit.notifyUndercollateralizedLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M1462.51,-9808.34C1479.54,-9802.65 1495.12,-9793.67 1507.08,-9780 1550.68,-9730.16 1492.01,-7446.32 1535.08,-7396 1540.5,-7389.66 1546.8,-7384.43 1553.72,-7380.13"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1555.69,-7383.04 1562.78,-7375.17 1552.33,-7376.9 1555.69,-7383.04"/>
</g>
<!-- Deposit.notifyCourtesyTimeout -->
<g id="node65" class="node"><title>Deposit.notifyCourtesyTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9753" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9749.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyTimeout</text>
</g>
<!-- DepositUtils.Deposit.notifyCourtesyTimeout -->
<g id="node367" class="node"><title>DepositUtils.Deposit.notifyCourtesyTimeout</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7315" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7311.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyTimeout</text>
</g>
<!-- Deposit.notifyCourtesyTimeout&#45;&gt;DepositUtils.Deposit.notifyCourtesyTimeout -->
<g id="edge58" class="edge"><title>Deposit.notifyCourtesyTimeout&#45;&gt;DepositUtils.Deposit.notifyCourtesyTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1400.18,-9763.04C1438.16,-9763.25 1481.13,-9755.66 1507.08,-9726 1550.68,-9676.16 1492.01,-7392.32 1535.08,-7342 1550.42,-7324.07 1572.83,-7314.97 1596.07,-7310.85"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1596.68,-7314.3 1606.06,-7309.37 1595.66,-7307.37 1596.68,-7314.3"/>
</g>
<!-- Deposit.withdrawFunds -->
<g id="node66" class="node"><title>Deposit.withdrawFunds</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9699" rx="66.8882" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9695.3" font-family="Times New Roman,serif" font-size="14.00">withdrawFunds</text>
</g>
<!-- DepositUtils.Deposit.withdrawFunds -->
<g id="node368" class="node"><title>DepositUtils.Deposit.withdrawFunds</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7261" rx="66.8882" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7257.3" font-family="Times New Roman,serif" font-size="14.00">withdrawFunds</text>
</g>
<!-- Deposit.withdrawFunds&#45;&gt;DepositUtils.Deposit.withdrawFunds -->
<g id="edge59" class="edge"><title>Deposit.withdrawFunds&#45;&gt;DepositUtils.Deposit.withdrawFunds</title>
<path fill="none" stroke="white" stroke-width="2" d="M1379.3,-9708.17C1421.29,-9711.33 1476.21,-9707.28 1507.08,-9672 1550.68,-9622.16 1492.01,-7338.32 1535.08,-7288 1556.7,-7262.74 1592.36,-7255 1624.58,-7254.02"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1624.93,-7257.51 1634.89,-7253.92 1624.86,-7250.51 1624.93,-7257.51"/>
</g>
<!-- Deposit.getWithdrawAllowance -->
<g id="node67" class="node"><title>Deposit.getWithdrawAllowance</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-9645" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-9641.3" font-family="Times New Roman,serif" font-size="14.00">getWithdrawAllowance</text>
</g>
<!-- DepositUtils.Deposit.getWithdrawAllowance -->
<g id="node369" class="node"><title>DepositUtils.Deposit.getWithdrawAllowance</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7207" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7203.3" font-family="Times New Roman,serif" font-size="14.00">getWithdrawAllowance</text>
</g>
<!-- Deposit.getWithdrawAllowance&#45;&gt;DepositUtils.Deposit.getWithdrawAllowance -->
<g id="edge60" class="edge"><title>Deposit.getWithdrawAllowance&#45;&gt;DepositUtils.Deposit.getWithdrawAllowance</title>
<path fill="none" stroke="white" stroke-width="2" d="M1400.18,-9655.04C1438.16,-9655.25 1481.13,-9647.66 1507.08,-9618 1550.68,-9568.16 1492.01,-7284.32 1535.08,-7234 1550.42,-7216.07 1572.83,-7206.97 1596.07,-7202.85"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1596.68,-7206.3 1606.06,-7201.37 1595.66,-7199.37 1596.68,-7206.3"/>
</g>
<!-- DepositFunding.fundingTeardown -->
<g id="node69" class="node"><title>DepositFunding.fundingTeardown</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-8320" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-8316.3" font-family="Times New Roman,serif" font-size="14.00">fundingTeardown</text>
</g>
<!-- DepositFunding.fundingFraudTeardown -->
<g id="node70" class="node"><title>DepositFunding.fundingFraudTeardown</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-8212" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-8208.3" font-family="Times New Roman,serif" font-size="14.00">fundingFraudTeardown</text>
</g>
<!-- DepositFunding.createNewDeposit -->
<g id="node71" class="node"><title>DepositFunding.createNewDeposit</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8158" rx="77.1866" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8154.3" font-family="Times New Roman,serif" font-size="14.00">createNewDeposit</text>
</g>
<!-- TBTCConstants.getDepositTerm -->
<g id="node224" class="node"><title>TBTCConstants.getDepositTerm</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-728" rx="69.5877" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-724.3" font-family="Times New Roman,serif" font-size="14.00">getDepositTerm</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;TBTCConstants.getDepositTerm -->
<g id="edge64" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;TBTCConstants.getDepositTerm</title>
<path fill="none" stroke="white" stroke-width="2" d="M1379.5,-8169.89C1491.52,-8189.38 1738.95,-8213.23 1857.85,-8074 1916.22,-8005.65 1842.1,-1683 1883.05,-1603 1931.96,-1507.44 2028.01,-1555.77 2078.43,-1461 2115.31,-1391.7 2052.33,-814.412 2103.63,-755 2121.05,-734.834 2148.16,-726.514 2174.36,-723.777"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2174.64,-727.265 2184.33,-722.988 2174.09,-720.287 2174.64,-727.265"/>
</g>
<!-- DepositUtils.Deposit.inStart -->
<g id="node370" class="node"><title>DepositUtils.Deposit.inStart</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5587" rx="34.394" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5583.3" font-family="Times New Roman,serif" font-size="14.00">inStart</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.inStart -->
<g id="edge61" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.inStart</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.84,-8167.66C1427.67,-8169.76 1478.04,-8164.21 1507.08,-8131 1553.1,-8078.36 1489.63,-5667.14 1535.08,-5614 1563.43,-5580.85 1615.96,-5577.88 1653.17,-5580.73"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1652.95,-5584.23 1663.23,-5581.67 1653.6,-5577.26 1652.95,-5584.23"/>
</g>
<!-- DepositUtils.Deposit.fetchBitcoinPrice -->
<g id="node371" class="node"><title>DepositUtils.Deposit.fetchBitcoinPrice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4507" rx="73.387" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4503.3" font-family="Times New Roman,serif" font-size="14.00">fetchBitcoinPrice</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.fetchBitcoinPrice -->
<g id="edge63" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.fetchBitcoinPrice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.88,-8167.69C1427.73,-8169.8 1478.09,-8164.26 1507.08,-8131 1572.72,-8055.67 1470.26,-4610.04 1535.08,-4534 1555.32,-4510.25 1587.97,-4501.98 1618.55,-4500.24"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1618.94,-4503.73 1628.82,-4499.89 1618.7,-4496.73 1618.94,-4503.73"/>
</g>
<!-- DepositUtils.Deposit.setAwaitingSignerSetup -->
<g id="node372" class="node"><title>DepositUtils.Deposit.setAwaitingSignerSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5533" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5529.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingSignerSetup</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.setAwaitingSignerSetup -->
<g id="edge65" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.setAwaitingSignerSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.84,-8167.66C1427.68,-8169.76 1478.04,-8164.22 1507.08,-8131 1554.08,-8077.23 1488.66,-5614.28 1535.08,-5560 1549.94,-5542.61 1571.46,-5533.53 1593.93,-5529.23"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1594.63,-5532.66 1603.96,-5527.63 1593.53,-5525.75 1594.63,-5532.66"/>
</g>
<!-- DepositUtils.Deposit.logCreated -->
<g id="node373" class="node"><title>DepositUtils.Deposit.logCreated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5479" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5475.3" font-family="Times New Roman,serif" font-size="14.00">logCreated</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.logCreated -->
<g id="edge66" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;DepositUtils.Deposit.logCreated</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.84,-8167.66C1427.68,-8169.76 1478.05,-8164.22 1507.08,-8131 1555.06,-8076.09 1487.69,-5561.43 1535.08,-5506 1560.04,-5476.8 1603.78,-5471.01 1639.28,-5472"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.38,-5475.5 1649.53,-5472.47 1639.7,-5468.51 1639.38,-5475.5"/>
</g>
<!-- _lotSizeSatoshis.mul -->
<g id="node422" class="node"><title>_lotSizeSatoshis.mul</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3290" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3286.3" font-family="Times New Roman,serif" font-size="14.00">mul</text>
</g>
<!-- DepositFunding.createNewDeposit&#45;&gt;_lotSizeSatoshis.mul -->
<g id="edge62" class="edge"><title>DepositFunding.createNewDeposit&#45;&gt;_lotSizeSatoshis.mul</title>
<path fill="none" stroke="white" stroke-width="2" d="M1386.45,-8167.68C1427.39,-8169.87 1478.02,-8164.41 1507.08,-8131 1550.72,-8080.82 1495.97,-3396.78 1535.08,-3343 1563.38,-3304.09 1621.28,-3293.28 1659.22,-3290.54"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.57,-3294.03 1669.35,-3289.96 1659.17,-3287.04 1659.57,-3294.03"/>
</g>
<!-- DepositFunding.notifySignerSetupFailure -->
<g id="node72" class="node"><title>DepositFunding.notifySignerSetupFailure</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8320" rx="100.182" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8316.3" font-family="Times New Roman,serif" font-size="14.00">notifySignerSetupFailure</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositFunding.fundingTeardown -->
<g id="edge76" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositFunding.fundingTeardown</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1421.73,-8320C1480.69,-8320 1554.6,-8320 1610.76,-8320"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1611.03,-8323.5 1621.03,-8320 1611.03,-8316.5 1611.03,-8323.5"/>
</g>
<!-- TBTCConstants.getSigningGroupFormationTimeout -->
<g id="node225" class="node"><title>TBTCConstants.getSigningGroupFormationTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-620" rx="139.976" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-616.3" font-family="Times New Roman,serif" font-size="14.00">getSigningGroupFormationTimeout</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;TBTCConstants.getSigningGroupFormationTimeout -->
<g id="edge68" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;TBTCConstants.getSigningGroupFormationTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1412.59,-8327.48C1446.21,-8325.42 1482.18,-8316.72 1507.08,-8293 1553.96,-8248.33 1490.16,-8196.65 1535.08,-8150 1637.3,-8043.83 1766.13,-8189.36 1857.85,-8074 1914.35,-8002.93 1831.65,-1611.84 1883.05,-1537 1935.8,-1460.2 2024.65,-1537.08 2078.43,-1461 2130.67,-1387.11 2044.66,-715.629 2103.63,-647 2108.06,-641.843 2113.13,-637.46 2118.65,-633.746"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2120.83,-636.526 2127.68,-628.445 2117.29,-630.489 2120.83,-636.526"/>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.depositOwner -->
<g id="edge71" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.depositOwner</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.42,-8330.03C1441.32,-8329.66 1482.09,-8321.57 1507.08,-8293 1551.14,-8242.63 1491.57,-5934.85 1535.08,-5884 1557.7,-5857.56 1595.72,-5850.32 1629.06,-5849.92"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1629.21,-5853.42 1639.24,-5850 1629.27,-5846.42 1629.21,-5853.42"/>
</g>
<!-- DepositUtils.Deposit.inAwaitingSignerSetup -->
<g id="node374" class="node"><title>DepositUtils.Deposit.inAwaitingSignerSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6289" rx="92.8835" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6285.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingSignerSetup</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.inAwaitingSignerSetup -->
<g id="edge67" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.inAwaitingSignerSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.86,-8330C1441.63,-8329.56 1482.16,-8321.41 1507.08,-8293 1579.5,-8210.42 1463.55,-6399.37 1535.08,-6316 1550.99,-6297.45 1574.49,-6288.35 1598.61,-6284.45"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1599.15,-6287.91 1608.6,-6283.11 1598.23,-6280.97 1599.15,-6287.91"/>
</g>
<!-- DepositUtils.Deposit.seizeSignerBonds -->
<g id="node375" class="node"><title>DepositUtils.Deposit.seizeSignerBonds</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5695" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5691.3" font-family="Times New Roman,serif" font-size="14.00">seizeSignerBonds</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.seizeSignerBonds -->
<g id="edge69" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.seizeSignerBonds</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.43,-8330.04C1441.33,-8329.67 1482.1,-8321.57 1507.08,-8293 1554.08,-8239.23 1488.66,-5776.28 1535.08,-5722 1554.94,-5698.77 1586.69,-5690.36 1616.72,-5688.38"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.97,-5691.88 1626.82,-5687.95 1616.67,-5684.88 1616.97,-5691.88"/>
</g>
<!-- DepositUtils.Deposit.enableWithdrawal -->
<g id="node376" class="node"><title>DepositUtils.Deposit.enableWithdrawal</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4831" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4827.3" font-family="Times New Roman,serif" font-size="14.00">enableWithdrawal</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge70" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.47,-8330.07C1441.38,-8329.71 1482.14,-8321.61 1507.08,-8293 1569.78,-8221.07 1473.16,-4930.61 1535.08,-4858 1554.91,-4834.74 1586.66,-4826.32 1616.69,-4824.36"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.94,-4827.85 1626.79,-4823.93 1616.65,-4820.86 1616.94,-4827.85"/>
</g>
<!-- DepositUtils.Deposit.pushFundsToKeepGroup -->
<g id="node377" class="node"><title>DepositUtils.Deposit.pushFundsToKeepGroup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5911" rx="104.782" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5907.3" font-family="Times New Roman,serif" font-size="14.00">pushFundsToKeepGroup</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.pushFundsToKeepGroup -->
<g id="edge72" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.pushFundsToKeepGroup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.42,-8330.03C1441.32,-8329.66 1482.08,-8321.56 1507.08,-8293 1550.16,-8243.77 1492.54,-5987.7 1535.08,-5938 1547.74,-5923.2 1565.23,-5914.42 1584.01,-5909.48"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1584.95,-5912.86 1593.94,-5907.24 1583.41,-5906.03 1584.95,-5912.86"/>
</g>
<!-- DepositUtils.Deposit.setFailedSetup -->
<g id="node378" class="node"><title>DepositUtils.Deposit.setFailedSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6235" rx="63.8893" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6231.3" font-family="Times New Roman,serif" font-size="14.00">setFailedSetup</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.setFailedSetup -->
<g id="edge74" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.setFailedSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.87,-8330C1441.64,-8329.56 1482.16,-8321.42 1507.08,-8293 1581.47,-8208.15 1461.62,-6347.66 1535.08,-6262 1557.4,-6235.97 1594.63,-6228.56 1627.61,-6227.96"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1627.68,-6231.46 1637.69,-6227.98 1627.69,-6224.46 1627.68,-6231.46"/>
</g>
<!-- DepositUtils.Deposit.logSetupFailed -->
<g id="node379" class="node"><title>DepositUtils.Deposit.logSetupFailed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6181" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6177.3" font-family="Times New Roman,serif" font-size="14.00">logSetupFailed</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.logSetupFailed -->
<g id="edge75" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;DepositUtils.Deposit.logSetupFailed</title>
<path fill="none" stroke="white" stroke-width="2" d="M1404.4,-8330.01C1441.3,-8329.64 1482.06,-8321.54 1507.08,-8293 1583.43,-8205.88 1459.68,-6295.95 1535.08,-6208 1557.15,-6182.26 1593.8,-6174.73 1626.5,-6173.98"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.51,-6177.48 1636.5,-6173.96 1626.49,-6170.48 1626.51,-6177.48"/>
</g>
<!-- _seized.sub -->
<g id="node423" class="node"><title>_seized.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-8021" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-8017.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositFunding.notifySignerSetupFailure&#45;&gt;_seized.sub -->
<g id="edge73" class="edge"><title>DepositFunding.notifySignerSetupFailure&#45;&gt;_seized.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1409.61,-8328.51C1444.42,-8327.02 1482.07,-8318.46 1507.08,-8293 1575.84,-8223 1472.66,-8149.72 1535.08,-8074 1565.38,-8037.24 1621.82,-8025.79 1659.01,-8022.33"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.72,-8025.79 1669.42,-8021.53 1659.18,-8018.81 1659.72,-8025.79"/>
</g>
<!-- DepositFunding.retrieveSignerPubkey -->
<g id="node73" class="node"><title>DepositFunding.retrieveSignerPubkey</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8428" rx="87.1846" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8424.3" font-family="Times New Roman,serif" font-size="14.00">retrieveSignerPubkey</text>
</g>
<!-- DepositFunding.IBondedECDSAKeep -->
<g id="node78" class="node"><title>DepositFunding.IBondedECDSAKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-8428" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-8424.3" font-family="Times New Roman,serif" font-size="14.00">IBondedECDSAKeep</text>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;DepositFunding.IBondedECDSAKeep -->
<g id="edge78" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;DepositFunding.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1408.3,-8428C1463.95,-8428 1536.6,-8428 1594.9,-8428"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1595.24,-8431.5 1605.24,-8428 1595.24,-8424.5 1595.24,-8431.5"/>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.inAwaitingSignerSetup -->
<g id="edge77" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.inAwaitingSignerSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1394.11,-8437.92C1433.49,-8438.98 1479.71,-8432.23 1507.08,-8401 1583.43,-8313.88 1459.68,-6403.95 1535.08,-6316 1550.99,-6297.44 1574.48,-6288.35 1598.6,-6284.44"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1599.14,-6287.9 1608.59,-6283.11 1598.22,-6280.96 1599.14,-6287.9"/>
</g>
<!-- DepositUtils.Deposit.setAwaitingBTCFundingProof -->
<g id="node380" class="node"><title>DepositUtils.Deposit.setAwaitingBTCFundingProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6397" rx="121.578" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6393.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingBTCFundingProof</text>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.setAwaitingBTCFundingProof -->
<g id="edge81" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.setAwaitingBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1394.1,-8437.91C1433.48,-8438.97 1479.7,-8432.22 1507.08,-8401 1579.5,-8318.42 1463.55,-6507.37 1535.08,-6424 1543.42,-6414.28 1553.84,-6407.15 1565.35,-6402.01"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1566.76,-6405.22 1574.79,-6398.3 1564.2,-6398.7 1566.76,-6405.22"/>
</g>
<!-- DepositUtils.Deposit.logRegisteredPubkey -->
<g id="node381" class="node"><title>DepositUtils.Deposit.logRegisteredPubkey</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6343" rx="87.9851" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6339.3" font-family="Times New Roman,serif" font-size="14.00">logRegisteredPubkey</text>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.logRegisteredPubkey -->
<g id="edge82" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;DepositUtils.Deposit.logRegisteredPubkey</title>
<path fill="none" stroke="white" stroke-width="2" d="M1394.11,-8437.92C1433.48,-8438.97 1479.71,-8432.22 1507.08,-8401 1581.47,-8316.15 1461.62,-6455.66 1535.08,-6370 1552.27,-6349.95 1578.32,-6340.95 1604.45,-6337.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1604.86,-6341.07 1614.45,-6336.58 1604.15,-6334.11 1604.86,-6341.07"/>
</g>
<!-- _publicKey.slice -->
<g id="node424" class="node"><title>_publicKey.slice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-7938" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-7934.3" font-family="Times New Roman,serif" font-size="14.00">slice</text>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;_publicKey.slice -->
<g id="edge79" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;_publicKey.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1408.45,-8429.04C1443.92,-8427.16 1482.39,-8418.66 1507.08,-8392 1569.13,-8324.99 1479.09,-8054.15 1535.08,-7982 1564.69,-7943.83 1622.61,-7932.84 1660.14,-7932.25"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1660.57,-7935.76 1670.61,-7932.36 1660.65,-7928.76 1660.57,-7935.76"/>
</g>
<!-- DepositFunding.retrieveSignerPubkey&#45;&gt;_publicKey.slice -->
<g id="edge80" class="edge"><title>DepositFunding.retrieveSignerPubkey&#45;&gt;_publicKey.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1369.87,-8442.94C1412.34,-8449.01 1472.92,-8446.89 1507.08,-8410 1569.13,-8342.99 1479.09,-8072.15 1535.08,-8000 1564.9,-7961.56 1623.43,-7950.69 1660.93,-7945.34"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1661.48,-7948.8 1670.91,-7943.96 1660.53,-7941.86 1661.48,-7948.8"/>
</g>
<!-- DepositFunding.notifyFundingTimeout -->
<g id="node74" class="node"><title>DepositFunding.notifyFundingTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8374" rx="91.784" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8370.3" font-family="Times New Roman,serif" font-size="14.00">notifyFundingTimeout</text>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;DepositFunding.fundingTeardown -->
<g id="edge88" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;DepositFunding.fundingTeardown</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1395.49,-8363.4C1460.79,-8353.95 1555.88,-8340.19 1621.4,-8330.71"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1622.26,-8334.13 1631.66,-8329.23 1621.26,-8327.2 1622.26,-8334.13"/>
</g>
<!-- TBTCConstants.getFundingTimeout -->
<g id="node226" class="node"><title>TBTCConstants.getFundingTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-674" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-670.3" font-family="Times New Roman,serif" font-size="14.00">getFundingTimeout</text>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;TBTCConstants.getFundingTimeout -->
<g id="edge84" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;TBTCConstants.getFundingTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1402.95,-8382.18C1439.29,-8381.33 1480.01,-8373.37 1507.08,-8347 1559.41,-8296.01 1483.66,-8236.92 1535.08,-8185 1637.7,-8081.39 1764.25,-8237.83 1857.85,-8126 1916,-8056.53 1834.05,-1679.2 1883.05,-1603 1934.76,-1522.59 2025.63,-1592.7 2078.43,-1513 2128.28,-1437.75 2044.8,-769.458 2103.63,-701 2118.27,-683.964 2139.83,-675.372 2161.94,-671.457"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2162.73,-674.88 2172.12,-669.974 2161.72,-667.953 2162.73,-674.88"/>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.setFailedSetup -->
<g id="edge85" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.setFailedSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.82,-8384C1436.36,-8384.53 1480.57,-8377.25 1507.08,-8347 1583.43,-8259.88 1459.68,-6349.95 1535.08,-6262 1557.4,-6235.97 1594.63,-6228.56 1627.61,-6227.96"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1627.68,-6231.46 1637.68,-6227.98 1627.69,-6224.46 1627.68,-6231.46"/>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.logSetupFailed -->
<g id="edge86" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.logSetupFailed</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.83,-8384C1436.37,-8384.54 1480.57,-8377.26 1507.08,-8347 1585.39,-8257.61 1457.74,-6298.24 1535.08,-6208 1557.14,-6182.25 1593.79,-6174.72 1626.49,-6173.98"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.5,-6177.48 1636.5,-6173.95 1626.49,-6170.48 1626.5,-6177.48"/>
</g>
<!-- DepositUtils.Deposit.inAwaitingBTCFundingProof -->
<g id="node382" class="node"><title>DepositUtils.Deposit.inAwaitingBTCFundingProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6073" rx="117.779" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6069.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingBTCFundingProof</text>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof -->
<g id="edge83" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.83,-8384.01C1436.38,-8384.54 1480.58,-8377.26 1507.08,-8347 1589.31,-8253.07 1453.87,-6194.82 1535.08,-6100 1544.32,-6089.21 1556.11,-6081.62 1569.11,-6076.39"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1570.5,-6079.61 1578.76,-6072.98 1568.17,-6073.01 1570.5,-6079.61"/>
</g>
<!-- DepositUtils.Deposit.closeKeep -->
<g id="node383" class="node"><title>DepositUtils.Deposit.closeKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6019" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6015.3" font-family="Times New Roman,serif" font-size="14.00">closeKeep</text>
</g>
<!-- DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.closeKeep -->
<g id="edge87" class="edge"><title>DepositFunding.notifyFundingTimeout&#45;&gt;DepositUtils.Deposit.closeKeep</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.84,-8384.01C1436.38,-8384.55 1480.59,-8377.27 1507.08,-8347 1549.18,-8298.9 1493.5,-6094.55 1535.08,-6046 1560.32,-6016.52 1604.68,-6010.91 1640.36,-6012.04"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1640.49,-6015.55 1650.65,-6012.56 1640.83,-6008.56 1640.49,-6015.55"/>
</g>
<!-- DepositFunding.requestFunderAbort -->
<g id="node75" class="node"><title>DepositFunding.requestFunderAbort</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8104" rx="84.485" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8100.3" font-family="Times New Roman,serif" font-size="14.00">requestFunderAbort</text>
</g>
<!-- DepositUtils.Deposit.inFailedSetup -->
<g id="node384" class="node"><title>DepositUtils.Deposit.inFailedSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5425" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5421.3" font-family="Times New Roman,serif" font-size="14.00">inFailedSetup</text>
</g>
<!-- DepositFunding.requestFunderAbort&#45;&gt;DepositUtils.Deposit.inFailedSetup -->
<g id="edge89" class="edge"><title>DepositFunding.requestFunderAbort&#45;&gt;DepositUtils.Deposit.inFailedSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1322.32,-8085.78C1324.01,-7862.5 1345.44,-5658.83 1535.08,-5452 1558.68,-5426.25 1596.93,-5419.09 1630.15,-5418.55"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.26,-5422.05 1640.27,-5418.59 1630.29,-5415.05 1630.26,-5422.05"/>
</g>
<!-- DepositUtils.Deposit.logFunderRequestedAbort -->
<g id="node385" class="node"><title>DepositUtils.Deposit.logFunderRequestedAbort</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5371" rx="107.781" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5367.3" font-family="Times New Roman,serif" font-size="14.00">logFunderRequestedAbort</text>
</g>
<!-- DepositFunding.requestFunderAbort&#45;&gt;DepositUtils.Deposit.logFunderRequestedAbort -->
<g id="edge90" class="edge"><title>DepositFunding.requestFunderAbort&#45;&gt;DepositUtils.Deposit.logFunderRequestedAbort</title>
<path fill="none" stroke="white" stroke-width="2" d="M1322.29,-8085.76C1323.61,-7859.91 1341.68,-5609.27 1535.08,-5398 1546.87,-5385.12 1562.33,-5376.88 1578.99,-5371.8"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1580.16,-5375.12 1588.93,-5369.17 1578.36,-5368.35 1580.16,-5375.12"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof -->
<g id="node76" class="node"><title>DepositFunding.provideFundingECDSAFraudProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8212" rx="140.275" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8208.3" font-family="Times New Roman,serif" font-size="14.00">provideFundingECDSAFraudProof</text>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositFunding.fundingFraudTeardown -->
<g id="edge97" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositFunding.fundingFraudTeardown</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1461.72,-8212C1503.91,-8212 1549.54,-8212 1589.19,-8212"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1589.4,-8215.5 1599.4,-8212 1589.4,-8208.5 1589.4,-8215.5"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.depositOwner -->
<g id="edge96" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.depositOwner</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.13,-8213.79C1478.7,-8208.13 1494.79,-8199.04 1507.08,-8185 1549.18,-8136.9 1493.5,-5932.55 1535.08,-5884 1557.71,-5857.56 1595.73,-5850.33 1629.07,-5849.93"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1629.21,-5853.43 1639.24,-5850.01 1629.27,-5846.43 1629.21,-5853.43"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.seizeSignerBonds -->
<g id="edge94" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.seizeSignerBonds</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.14,-8213.8C1478.71,-8208.14 1494.8,-8199.04 1507.08,-8185 1552.12,-8133.5 1490.6,-5773.99 1535.08,-5722 1554.95,-5698.77 1586.7,-5690.36 1616.72,-5688.39"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.98,-5691.88 1626.82,-5687.96 1616.68,-5684.89 1616.98,-5691.88"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge95" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.18,-8213.83C1478.74,-8208.16 1494.82,-8199.06 1507.08,-8185 1567.82,-8115.34 1475.1,-4928.32 1535.08,-4858 1554.92,-4834.74 1586.66,-4826.33 1616.69,-4824.36"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.95,-4827.85 1626.79,-4823.93 1616.65,-4820.86 1616.95,-4827.85"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.setFailedSetup -->
<g id="edge98" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.setFailedSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.1,-8213.76C1478.67,-8208.1 1494.78,-8199.02 1507.08,-8185 1577.54,-8104.69 1465.49,-6343.08 1535.08,-6262 1557.41,-6235.98 1594.65,-6228.57 1627.62,-6227.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1627.69,-6231.47 1637.7,-6227.99 1627.7,-6224.47 1627.69,-6231.47"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.logSetupFailed -->
<g id="edge99" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.logSetupFailed</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.1,-8213.77C1478.68,-8208.11 1494.78,-8199.02 1507.08,-8185 1579.5,-8102.42 1463.55,-6291.37 1535.08,-6208 1557.15,-6182.27 1593.81,-6174.73 1626.51,-6173.99"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.52,-6177.49 1636.51,-6173.96 1626.5,-6170.49 1626.52,-6177.49"/>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof -->
<g id="edge91" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.11,-8213.78C1478.69,-8208.12 1494.78,-8199.03 1507.08,-8185 1583.43,-8097.88 1459.68,-6187.95 1535.08,-6100 1544.32,-6089.22 1556.12,-6081.63 1569.12,-6076.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1570.51,-6079.62 1578.78,-6072.99 1568.18,-6073.02 1570.51,-6079.62"/>
</g>
<!-- DepositUtils.Deposit.submitSignatureFraud -->
<g id="node386" class="node"><title>DepositUtils.Deposit.submitSignatureFraud</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5641" rx="90.1842" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5637.3" font-family="Times New Roman,serif" font-size="14.00">submitSignatureFraud</text>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.submitSignatureFraud -->
<g id="edge92" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.submitSignatureFraud</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.14,-8213.8C1478.71,-8208.14 1494.8,-8199.04 1507.08,-8185 1553.1,-8132.36 1489.63,-5721.14 1535.08,-5668 1551.6,-5648.68 1576.35,-5639.61 1601.48,-5635.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1601.97,-5639.44 1611.5,-5634.8 1601.16,-5632.48 1601.97,-5639.44"/>
</g>
<!-- DepositUtils.Deposit.logFraudDuringSetup -->
<g id="node387" class="node"><title>DepositUtils.Deposit.logFraudDuringSetup</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5749" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5745.3" font-family="Times New Roman,serif" font-size="14.00">logFraudDuringSetup</text>
</g>
<!-- DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.logFraudDuringSetup -->
<g id="edge93" class="edge"><title>DepositFunding.provideFundingECDSAFraudProof&#45;&gt;DepositUtils.Deposit.logFraudDuringSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1461.13,-8213.8C1478.71,-8208.13 1494.8,-8199.04 1507.08,-8185 1551.14,-8134.63 1491.57,-5826.85 1535.08,-5776 1551.85,-5756.4 1577.08,-5747.35 1602.6,-5743.82"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1603.2,-5747.27 1612.76,-5742.69 1602.43,-5740.31 1603.2,-5747.27"/>
</g>
<!-- DepositFunding.provideBTCFundingProof -->
<g id="node77" class="node"><title>DepositFunding.provideBTCFundingProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-8266" rx="107.482" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-8262.3" font-family="Times New Roman,serif" font-size="14.00">provideBTCFundingProof</text>
</g>
<!-- DepositFunding.provideBTCFundingProof&#45;&gt;DepositFunding.fundingTeardown -->
<g id="edge102" class="edge"><title>DepositFunding.provideBTCFundingProof&#45;&gt;DepositFunding.fundingTeardown</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1403.19,-8277.72C1468.08,-8287.11 1558.38,-8300.17 1621.38,-8309.28"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1621.24,-8312.8 1631.64,-8310.77 1622.24,-8305.87 1621.24,-8312.8"/>
</g>
<!-- DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof -->
<g id="edge100" class="edge"><title>DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.inAwaitingBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1411.06,-8275.86C1446.12,-8274.6 1483.56,-8265.84 1507.08,-8239 1585.39,-8149.61 1457.74,-6190.24 1535.08,-6100 1544.32,-6089.22 1556.12,-6081.63 1569.12,-6076.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1570.51,-6079.62 1578.77,-6072.99 1568.18,-6073.02 1570.51,-6079.62"/>
</g>
<!-- DepositUtils.Deposit.validateAndParseFundingSPVProof -->
<g id="node388" class="node"><title>DepositUtils.Deposit.validateAndParseFundingSPVProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-6127" rx="141.875" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-6123.3" font-family="Times New Roman,serif" font-size="14.00">validateAndParseFundingSPVProof</text>
</g>
<!-- DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.validateAndParseFundingSPVProof -->
<g id="edge101" class="edge"><title>DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.validateAndParseFundingSPVProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1411.06,-8275.86C1446.12,-8274.59 1483.56,-8265.84 1507.08,-8239 1583.43,-8151.88 1459.68,-6241.95 1535.08,-6154 1540.5,-6147.67 1546.81,-6142.44 1553.73,-6138.14"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1555.7,-6141.05 1562.79,-6133.18 1552.34,-6134.91 1555.7,-6141.05"/>
</g>
<!-- DepositUtils.Deposit.setActive -->
<g id="node389" class="node"><title>DepositUtils.Deposit.setActive</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5803" rx="44.393" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5799.3" font-family="Times New Roman,serif" font-size="14.00">setActive</text>
</g>
<!-- DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.setActive -->
<g id="edge103" class="edge"><title>DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.setActive</title>
<path fill="none" stroke="white" stroke-width="2" d="M1411.08,-8275.88C1446.14,-8274.62 1483.58,-8265.86 1507.08,-8239 1551.14,-8188.63 1491.57,-5880.85 1535.08,-5830 1561.23,-5799.44 1607.93,-5794.53 1644.22,-5796.19"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1644.43,-5799.71 1654.63,-5796.85 1644.88,-5792.72 1644.43,-5799.71"/>
</g>
<!-- DepositUtils.Deposit.logFunded -->
<g id="node390" class="node"><title>DepositUtils.Deposit.logFunded</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5965" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5961.3" font-family="Times New Roman,serif" font-size="14.00">logFunded</text>
</g>
<!-- DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.logFunded -->
<g id="edge104" class="edge"><title>DepositFunding.provideBTCFundingProof&#45;&gt;DepositUtils.Deposit.logFunded</title>
<path fill="none" stroke="white" stroke-width="2" d="M1411.07,-8275.87C1446.13,-8274.61 1483.57,-8265.85 1507.08,-8239 1589.31,-8145.07 1453.87,-6086.82 1535.08,-5992 1560.07,-5962.82 1603.81,-5957.03 1639.3,-5958.01"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.39,-5961.52 1649.54,-5958.48 1639.71,-5954.53 1639.39,-5961.52"/>
</g>
<!-- DepositLiquidation.submitSignatureFraud -->
<g id="node79" class="node"><title>DepositLiquidation.submitSignatureFraud</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2991" rx="90.1842" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2987.3" font-family="Times New Roman,serif" font-size="14.00">submitSignatureFraud</text>
</g>
<!-- DepositLiquidation.IBondedECDSAKeep -->
<g id="node88" class="node"><title>DepositLiquidation.IBondedECDSAKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-2991" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2987.3" font-family="Times New Roman,serif" font-size="14.00">IBondedECDSAKeep</text>
</g>
<!-- DepositLiquidation.submitSignatureFraud&#45;&gt;DepositLiquidation.IBondedECDSAKeep -->
<g id="edge105" class="edge"><title>DepositLiquidation.submitSignatureFraud&#45;&gt;DepositLiquidation.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1411.6,-2991C1466.84,-2991 1537.85,-2991 1595.02,-2991"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1595.17,-2994.5 1605.17,-2991 1595.17,-2987.5 1595.17,-2994.5"/>
</g>
<!-- IBondedECDSAKeep.submitSignatureFraud -->
<g id="node425" class="node"><title>IBondedECDSAKeep.submitSignatureFraud</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-1021" rx="90.1842" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-1017.3" font-family="Times New Roman,serif" font-size="14.00">submitSignatureFraud</text>
</g>
<!-- DepositLiquidation.submitSignatureFraud&#45;&gt;IBondedECDSAKeep.submitSignatureFraud -->
<g id="edge106" class="edge"><title>DepositLiquidation.submitSignatureFraud&#45;&gt;IBondedECDSAKeep.submitSignatureFraud</title>
<path fill="none" stroke="white" stroke-width="2" d="M1353.19,-2974.08C1396.86,-2948.29 1474.74,-2894.59 1507.08,-2824 1535.33,-2762.31 1525.21,-1670.13 1535.08,-1603 1567.19,-1384.5 1655.1,-1131.4 1685.2,-1048.68"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1688.5,-1049.83 1688.65,-1039.24 1681.93,-1047.43 1688.5,-1049.83"/>
</g>
<!-- DepositLiquidation.getCollateralizationPercentage -->
<g id="node80" class="node"><title>DepositLiquidation.getCollateralizationPercentage</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-3099" rx="118.079" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-3095.3" font-family="Times New Roman,serif" font-size="14.00">getCollateralizationPercentage</text>
</g>
<!-- DepositLiquidation.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.fetchBitcoinPrice -->
<g id="edge107" class="edge"><title>DepositLiquidation.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.fetchBitcoinPrice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1399.69,-3112.59C1438.78,-3123.75 1482.91,-3143.89 1507.08,-3180 1547.25,-3240.04 1487.84,-4425.35 1535.08,-4480 1555.4,-4503.51 1587.89,-4511.8 1618.33,-4513.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1618.44,-4517.11 1628.56,-4513.98 1618.69,-4510.11 1618.44,-4517.11"/>
</g>
<!-- DepositUtils.Deposit.fetchBondAmount -->
<g id="node391" class="node"><title>DepositUtils.Deposit.fetchBondAmount</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3535" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3531.3" font-family="Times New Roman,serif" font-size="14.00">fetchBondAmount</text>
</g>
<!-- DepositLiquidation.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.fetchBondAmount -->
<g id="edge109" class="edge"><title>DepositLiquidation.getCollateralizationPercentage&#45;&gt;DepositUtils.Deposit.fetchBondAmount</title>
<path fill="none" stroke="white" stroke-width="2" d="M1397.38,-3112.81C1436.54,-3124.08 1481.47,-3144.25 1507.08,-3180 1549.67,-3239.47 1485.5,-3454.2 1535.08,-3508 1554.76,-3529.36 1584.52,-3537.91 1613.09,-3540.5"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1612.91,-3544 1623.12,-3541.18 1613.38,-3537.02 1612.91,-3544"/>
</g>
<!-- DepositLiquidation.getCollateralizationPercentage&#45;&gt;_lotSizeSatoshis.mul -->
<g id="edge108" class="edge"><title>DepositLiquidation.getCollateralizationPercentage&#45;&gt;_lotSizeSatoshis.mul</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.62,-3113.85C1427.83,-3125.75 1475.76,-3146.2 1507.08,-3180 1532.68,-3207.63 1506.5,-3235.46 1535.08,-3260 1569.45,-3289.52 1623.49,-3293.86 1659.19,-3292.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.79,-3296.44 1669.64,-3292.54 1659.51,-3289.45 1659.79,-3296.44"/>
</g>
<!-- _bondValue.mul -->
<g id="node430" class="node"><title>_bondValue.mul</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-2854" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2850.3" font-family="Times New Roman,serif" font-size="14.00">mul</text>
</g>
<!-- DepositLiquidation.getCollateralizationPercentage&#45;&gt;_bondValue.mul -->
<g id="edge110" class="edge"><title>DepositLiquidation.getCollateralizationPercentage&#45;&gt;_bondValue.mul</title>
<path fill="none" stroke="white" stroke-width="2" d="M1391.99,-3084.45C1431.15,-3072.8 1477.87,-3052.5 1507.08,-3018 1539.95,-2979.17 1500.42,-2944.25 1535.08,-2907 1567.35,-2872.31 1622.76,-2860.3 1659.26,-2856.16"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.87,-2859.61 1669.47,-2855.14 1659.18,-2852.65 1659.87,-2859.61"/>
</g>
<!-- DepositLiquidation.startLiquidation -->
<g id="node81" class="node"><title>DepositLiquidation.startLiquidation</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-3207" rx="67.6881" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-3203.3" font-family="Times New Roman,serif" font-size="14.00">startLiquidation</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.seizeSignerBonds -->
<g id="edge112" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.seizeSignerBonds</title>
<path fill="none" stroke="white" stroke-width="2" d="M1334.01,-3224.89C1368.91,-3278.92 1471.33,-3446.29 1507.08,-3602 1519.92,-3657.94 1497.72,-5624.43 1535.08,-5668 1554.98,-5691.21 1586.73,-5699.61 1616.75,-5701.59"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.7,-5705.09 1626.84,-5702.02 1617,-5698.1 1616.7,-5705.09"/>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge116" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M1333.94,-3224.91C1368.65,-3278.98 1470.57,-3446.46 1507.08,-3602 1522.34,-3667.03 1491.35,-4753.5 1535.08,-4804 1555.01,-4827.01 1586.59,-4835.43 1616.49,-4837.47"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.39,-4840.97 1626.54,-4837.92 1616.71,-4833.97 1616.39,-4840.97"/>
</g>
<!-- DepositUtils.Deposit.logStartedLiquidation -->
<g id="node392" class="node"><title>DepositUtils.Deposit.logStartedLiquidation</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3589" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3585.3" font-family="Times New Roman,serif" font-size="14.00">logStartedLiquidation</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.logStartedLiquidation -->
<g id="edge111" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.logStartedLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.69,-3208.17C1429.21,-3212.64 1478.53,-3225.55 1507.08,-3260 1550.08,-3311.89 1489.22,-3512.6 1535.08,-3562 1552.05,-3580.28 1576.4,-3589.16 1601.02,-3592.95"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1600.83,-3596.45 1611.19,-3594.24 1601.71,-3589.51 1600.83,-3596.45"/>
</g>
<!-- DepositUtils.Deposit.redemptionTeardown -->
<g id="node393" class="node"><title>DepositUtils.Deposit.redemptionTeardown</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3805" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3801.3" font-family="Times New Roman,serif" font-size="14.00">redemptionTeardown</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.redemptionTeardown -->
<g id="edge113" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.redemptionTeardown</title>
<path fill="none" stroke="white" stroke-width="2" d="M1375.78,-3217.89C1419.03,-3229.73 1477.41,-3253.29 1507.08,-3298 1566.15,-3387.03 1463.73,-3698.46 1535.08,-3778 1551.97,-3796.83 1576.69,-3805.79 1601.68,-3809.48"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1601.29,-3812.96 1611.63,-3810.68 1602.12,-3806.01 1601.29,-3812.96"/>
</g>
<!-- DepositUtils.Deposit.inRedemption -->
<g id="node394" class="node"><title>DepositUtils.Deposit.inRedemption</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3751" rx="61.99" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3747.3" font-family="Times New Roman,serif" font-size="14.00">inRedemption</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.inRedemption -->
<g id="edge114" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.inRedemption</title>
<path fill="none" stroke="white" stroke-width="2" d="M1389.07,-3207.86C1429.74,-3212.21 1479.08,-3225.09 1507.08,-3260 1571.7,-3340.59 1466.03,-3647.17 1535.08,-3724 1558.17,-3749.69 1595.82,-3757 1628.84,-3757.62"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1628.92,-3761.12 1638.92,-3757.61 1628.92,-3754.12 1628.92,-3761.12"/>
</g>
<!-- DepositUtils.Deposit.setLiquidated -->
<g id="node395" class="node"><title>DepositUtils.Deposit.setLiquidated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4129" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4125.3" font-family="Times New Roman,serif" font-size="14.00">setLiquidated</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setLiquidated -->
<g id="edge115" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setLiquidated</title>
<path fill="none" stroke="white" stroke-width="2" d="M1338.83,-3224.57C1377.07,-3266.25 1470.76,-3376.07 1507.08,-3488 1528.15,-3552.96 1489.8,-4050.87 1535.08,-4102 1558.4,-4128.34 1597.02,-4135.44 1630.52,-4135.78"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.76,-4139.28 1640.73,-4135.68 1630.7,-4132.28 1630.76,-4139.28"/>
</g>
<!-- DepositUtils.Deposit.logLiquidated -->
<g id="node396" class="node"><title>DepositUtils.Deposit.logLiquidated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4075" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4071.3" font-family="Times New Roman,serif" font-size="14.00">logLiquidated</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.logLiquidated -->
<g id="edge117" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.logLiquidated</title>
<path fill="none" stroke="white" stroke-width="2" d="M1338.79,-3224.58C1376.97,-3266.29 1470.51,-3376.15 1507.08,-3488 1526.44,-3547.22 1493.67,-4001.45 1535.08,-4048 1558.29,-4074.1 1596.52,-4081.28 1629.83,-4081.73"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.01,-4085.23 1639.99,-4081.67 1629.97,-4078.23 1630.01,-4085.23"/>
</g>
<!-- DepositUtils.Deposit.setFraudLiquidationInProgress -->
<g id="node397" class="node"><title>DepositUtils.Deposit.setFraudLiquidationInProgress</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3697" rx="122.678" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3693.3" font-family="Times New Roman,serif" font-size="14.00">setFraudLiquidationInProgress</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setFraudLiquidationInProgress -->
<g id="edge118" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setFraudLiquidationInProgress</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.97,-3207.93C1429.61,-3212.32 1478.95,-3225.21 1507.08,-3260 1564.49,-3331.02 1473.76,-3602.32 1535.08,-3670 1543.37,-3679.16 1553.52,-3685.97 1564.63,-3690.98"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1563.6,-3694.33 1574.18,-3694.77 1566.18,-3687.82 1563.6,-3694.33"/>
</g>
<!-- DepositUtils.Deposit.setLiquidationInProgress -->
<g id="node398" class="node"><title>DepositUtils.Deposit.setLiquidationInProgress</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3643" rx="101.282" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3639.3" font-family="Times New Roman,serif" font-size="14.00">setLiquidationInProgress</text>
</g>
<!-- DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setLiquidationInProgress -->
<g id="edge119" class="edge"><title>DepositLiquidation.startLiquidation&#45;&gt;DepositUtils.Deposit.setLiquidationInProgress</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.85,-3208.03C1429.44,-3212.45 1478.77,-3225.35 1507.08,-3260 1557.29,-3321.45 1481.5,-3557.47 1535.08,-3616 1548.7,-3630.88 1567.2,-3639.56 1586.81,-3644.33"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1586.32,-3647.81 1596.82,-3646.43 1587.75,-3640.96 1586.32,-3647.81"/>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof -->
<g id="node82" class="node"><title>DepositLiquidation.provideECDSAFraudProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-3207" rx="110.48" ry="18"/>
<text text-anchor="middle" x="957.623" y="-3203.3" font-family="Times New Roman,serif" font-size="14.00">provideECDSAFraudProof</text>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositLiquidation.submitSignatureFraud -->
<g id="edge123" class="edge"><title>DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositLiquidation.submitSignatureFraud</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1062.39,-3201.12C1076.04,-3196.53 1088.88,-3189.78 1099.31,-3180 1135.48,-3146.08 1094.86,-3109.49 1127.31,-3072 1157.17,-3037.5 1204.18,-3017.35 1244.32,-3005.78"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1245.38,-3009.12 1254.09,-3003.09 1243.52,-3002.37 1245.38,-3009.12"/>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositLiquidation.startLiquidation -->
<g id="edge124" class="edge"><title>DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositLiquidation.startLiquidation</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1068.58,-3207C1125.04,-3207 1192.46,-3207 1243.29,-3207"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1243.55,-3210.5 1253.55,-3207 1243.55,-3203.5 1243.55,-3210.5"/>
</g>
<!-- DepositUtils.Deposit.inFunding -->
<g id="node399" class="node"><title>DepositUtils.Deposit.inFunding</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5047" rx="46.5926" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5043.3" font-family="Times New Roman,serif" font-size="14.00">inFunding</text>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inFunding -->
<g id="edge120" class="edge"><title>DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inFunding</title>
<path fill="none" stroke="white" stroke-width="2" d="M959.339,-3225.25C963.718,-3323.95 991.4,-3802.67 1127.31,-4163 1241.89,-4466.77 1400.9,-4480.19 1507.08,-4787 1524.13,-4836.28 1499.08,-4982.26 1535.08,-5020 1561.95,-5048.17 1606.41,-5053.83 1641.71,-5053.05"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1642.01,-5056.54 1651.87,-5052.65 1641.74,-5049.55 1642.01,-5056.54"/>
</g>
<!-- DepositUtils.Deposit.inSignerLiquidation -->
<g id="node400" class="node"><title>DepositUtils.Deposit.inSignerLiquidation</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4993" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4989.3" font-family="Times New Roman,serif" font-size="14.00">inSignerLiquidation</text>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inSignerLiquidation -->
<g id="edge121" class="edge"><title>DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inSignerLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M967.201,-3225.03C1025.1,-3347.62 1360.91,-4072.62 1507.08,-4701 1520.49,-4758.68 1494.51,-4922.86 1535.08,-4966 1554.03,-4986.15 1581.96,-4994.84 1609.23,-4997.88"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1608.96,-5001.37 1619.23,-4998.75 1609.57,-4994.39 1608.96,-5001.37"/>
</g>
<!-- DepositUtils.Deposit.inEndState -->
<g id="node401" class="node"><title>DepositUtils.Deposit.inEndState</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3427" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3423.3" font-family="Times New Roman,serif" font-size="14.00">inEndState</text>
</g>
<!-- DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inEndState -->
<g id="edge122" class="edge"><title>DepositLiquidation.provideECDSAFraudProof&#45;&gt;DepositUtils.Deposit.inEndState</title>
<path fill="none" stroke="white" stroke-width="2" d="M1000.62,-3223.59C1094.83,-3260.25 1330.81,-3348.94 1535.08,-3400 1569.16,-3408.52 1608.01,-3415.14 1638.93,-3419.69"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1638.7,-3423.19 1649.09,-3421.15 1639.7,-3416.26 1638.7,-3423.19"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction -->
<g id="node83" class="node"><title>DepositLiquidation.purchaseSignerBondsAtAuction</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-3153" rx="128.077" ry="18"/>
<text text-anchor="middle" x="957.623" y="-3149.3" font-family="Times New Roman,serif" font-size="14.00">purchaseSignerBondsAtAuction</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.lotSizeTbtc -->
<g id="edge130" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.lotSizeTbtc</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.74,-3160.68C1083.46,-3165.35 1092.25,-3171.64 1099.31,-3180 1146.31,-3235.66 1079.19,-4436.31 1127.31,-4491 1240.05,-4619.14 1390.83,-4423.04 1507.08,-4548 1562.34,-4607.4 1480.35,-4852.11 1535.08,-4912 1560.22,-4939.51 1602.06,-4945.83 1636.7,-4945.5"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1636.83,-4949 1646.73,-4945.22 1636.64,-4942 1636.83,-4949"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.depositOwner -->
<g id="edge129" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.depositOwner</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.76,-3160.67C1083.47,-3165.35 1092.25,-3171.64 1099.31,-3180 1149.07,-3239 1114.52,-4492.88 1127.31,-4569 1133.41,-4605.3 1507.22,-5805.94 1535.08,-5830 1559.75,-5851.31 1594.79,-5858.89 1625.82,-5860.79"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.04,-5864.3 1636.17,-5861.23 1626.33,-5857.31 1626.04,-5864.3"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.auctionValue -->
<g id="edge131" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.auctionValue</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.83,-3160.61C1083.53,-3165.3 1092.29,-3171.61 1099.31,-3180 1141.25,-3230.14 1114.92,-5468.82 1127.31,-5533 1222.43,-6025.77 1146.12,-6268.85 1535.08,-6586 1561.24,-6607.33 1597.95,-6614.63 1629.65,-6616.35"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1629.62,-6619.85 1639.74,-6616.72 1629.88,-6612.85 1629.62,-6619.85"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge132" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M990.168,-3135.56C1022.95,-3128.55 1073.05,-3130.95 1099.31,-3162 1143.34,-3214.06 1085.27,-4335.32 1127.31,-4389 1235.14,-4526.69 1394.35,-4358.29 1507.08,-4492 1549.38,-4542.18 1490.37,-4737.96 1535.08,-4786 1556.95,-4809.5 1591.03,-4817.45 1622.16,-4820.61"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1621.88,-4824.1 1632.14,-4821.48 1622.48,-4817.12 1621.88,-4824.1"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge135" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.73,-3160.69C1083.45,-3165.36 1092.24,-3171.64 1099.31,-3180 1143.34,-3232.06 1085.27,-4353.32 1127.31,-4407 1235.14,-4544.69 1394.35,-4376.29 1507.08,-4510 1549.38,-4560.18 1490.37,-4755.96 1535.08,-4804 1555.3,-4825.73 1585.95,-4834.16 1615.06,-4836.56"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1615.08,-4840.07 1625.27,-4837.17 1615.5,-4833.08 1615.08,-4840.07"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal -->
<g id="edge138" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.enableWithdrawal</title>
<path fill="none" stroke="white" stroke-width="2" d="M1037.1,-3167.21C1060.5,-3171.5 1083.97,-3179.86 1099.31,-3198 1143.34,-3250.06 1085.27,-4371.32 1127.31,-4425 1235.14,-4562.69 1394.35,-4394.29 1507.08,-4528 1549.38,-4578.18 1490.37,-4773.96 1535.08,-4822 1565.85,-4855.06 1620.79,-4857.35 1657.67,-4850.02"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1658.62,-4853.39 1667.56,-4847.72 1657.03,-4846.58 1658.62,-4853.39"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.pushFundsToKeepGroup -->
<g id="edge137" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.pushFundsToKeepGroup</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.81,-3160.63C1083.51,-3165.31 1092.28,-3171.61 1099.31,-3180 1134.97,-3222.54 1112.56,-5124.49 1127.31,-5178 1223.57,-5527.33 1237.43,-5677.34 1535.08,-5884 1549.42,-5893.96 1566.2,-5900.69 1583.4,-5905.16"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1583.02,-5908.66 1593.56,-5907.53 1584.62,-5901.85 1583.02,-5908.66"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.setLiquidated -->
<g id="edge127" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.setLiquidated</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.6,-3160.8C1083.34,-3165.45 1092.18,-3171.7 1099.31,-3180 1152.35,-3241.74 1082.26,-3844.21 1127.31,-3912 1239.14,-4080.3 1501.27,-4118.24 1626.49,-4126.67"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.53,-4130.18 1636.73,-4127.31 1626.96,-4123.19 1626.53,-4130.18"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.logLiquidated -->
<g id="edge128" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.logLiquidated</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.52,-3160.88C1083.28,-3165.51 1092.14,-3171.73 1099.31,-3180 1141.74,-3228.9 1096.07,-3705.3 1127.31,-3762 1234.14,-3955.88 1330.27,-3964 1535.08,-4048 1563.94,-4059.84 1597.76,-4066.49 1626.88,-4070.22"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.63,-4073.71 1636.97,-4071.42 1627.46,-4066.76 1626.63,-4073.71"/>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.inSignerLiquidation -->
<g id="edge126" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.inSignerLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.75,-3160.68C1083.47,-3165.35 1092.25,-3171.64 1099.31,-3180 1147.83,-3237.5 1076.54,-4478.47 1127.31,-4534 1184.6,-4596.66 1448.2,-4514.82 1507.08,-4576 1567.32,-4638.61 1476.63,-4901.71 1535.08,-4966 1553.94,-4986.75 1582.3,-4995.46 1609.96,-4998.36"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1609.85,-5001.86 1620.09,-4999.17 1610.41,-4994.88 1609.85,-5001.86"/>
</g>
<!-- DepositUtils.Deposit.inFraudLiquidationInProgress -->
<g id="node402" class="node"><title>DepositUtils.Deposit.inFraudLiquidationInProgress</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4723" rx="118.879" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4719.3" font-family="Times New Roman,serif" font-size="14.00">inFraudLiquidationInProgress</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.inFraudLiquidationInProgress -->
<g id="edge125" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.inFraudLiquidationInProgress</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.72,-3160.7C1083.44,-3165.37 1092.24,-3171.65 1099.31,-3180 1141.32,-3229.62 1086.12,-4299.69 1127.31,-4350 1236.94,-4483.91 1391.97,-4306.77 1507.08,-4436 1584.38,-4522.79 1455.38,-4611.41 1535.08,-4696 1544.34,-4705.83 1555.73,-4712.92 1568.14,-4717.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1567.21,-4721.36 1577.81,-4721.44 1569.58,-4714.77 1567.21,-4721.36"/>
</g>
<!-- DepositUtils.Deposit.distributeFeeRebate -->
<g id="node403" class="node"><title>DepositUtils.Deposit.distributeFeeRebate</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4291" rx="83.3857" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4287.3" font-family="Times New Roman,serif" font-size="14.00">distributeFeeRebate</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.distributeFeeRebate -->
<g id="edge133" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;DepositUtils.Deposit.distributeFeeRebate</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.64,-3160.77C1083.38,-3165.42 1092.2,-3171.68 1099.31,-3180 1160.41,-3251.5 1079.13,-3945.22 1127.31,-4026 1230.48,-4198.98 1481.37,-4260.35 1612.51,-4281.08"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1612.1,-4284.56 1622.51,-4282.62 1613.16,-4277.64 1612.1,-4284.56"/>
</g>
<!-- contractEthBalance.sub -->
<g id="node431" class="node"><title>contractEthBalance.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-1437" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1433.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;contractEthBalance.sub -->
<g id="edge134" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;contractEthBalance.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.78,-3145.35C1083.49,-3140.67 1092.27,-3134.37 1099.31,-3126 1156.75,-3057.71 1077.59,-1594.1 1127.31,-1520 1162.64,-1467.34 1239.01,-1447.92 1284.34,-1440.88"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1284.93,-1444.34 1294.33,-1439.46 1283.94,-1437.41 1284.93,-1444.34"/>
</g>
<!-- remainingUnallocated.div -->
<g id="node432" class="node"><title>remainingUnallocated.div</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-1354" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1350.3" font-family="Times New Roman,serif" font-size="14.00">div</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;remainingUnallocated.div -->
<g id="edge136" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;remainingUnallocated.div</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.79,-3145.36C1083.5,-3140.67 1092.27,-3134.38 1099.31,-3126 1160.75,-3052.87 1068.79,-1482.49 1127.31,-1407 1164.05,-1359.61 1238.97,-1352.04 1283.86,-1352.13"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1283.99,-1355.63 1294.04,-1352.28 1284.09,-1348.63 1283.99,-1355.63"/>
</g>
<!-- remainingUnallocated.sub -->
<g id="node433" class="node"><title>remainingUnallocated.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-1300" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1296.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;remainingUnallocated.sub -->
<g id="edge139" class="edge"><title>DepositLiquidation.purchaseSignerBondsAtAuction&#45;&gt;remainingUnallocated.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1073.79,-3145.36C1083.5,-3140.68 1092.27,-3134.38 1099.31,-3126 1163.58,-3049.44 1061.13,-1401.91 1127.31,-1327 1166.17,-1283.01 1241.01,-1286.27 1285.18,-1292.92"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1284.74,-1296.39 1295.17,-1294.56 1285.87,-1289.48 1284.74,-1296.39"/>
</g>
<!-- DepositLiquidation.notifyCourtesyCall -->
<g id="node84" class="node"><title>DepositLiquidation.notifyCourtesyCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-3099" rx="79.0865" ry="18"/>
<text text-anchor="middle" x="957.623" y="-3095.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyCall</text>
</g>
<!-- DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositLiquidation.getCollateralizationPercentage -->
<g id="edge141" class="edge"><title>DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositLiquidation.getCollateralizationPercentage</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1037.08,-3099C1082.45,-3099 1140.64,-3099 1192.45,-3099"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1192.72,-3102.5 1202.72,-3099 1192.72,-3095.5 1192.72,-3102.5"/>
</g>
<!-- DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.inActive -->
<g id="edge140" class="edge"><title>DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.inActive</title>
<path fill="none" stroke="white" stroke-width="2" d="M1035.98,-3096C1059.75,-3099.25 1083.72,-3107.59 1099.31,-3126 1141.71,-3176.09 1120.05,-4241.77 1127.31,-4307 1222.23,-5159.83 1379.54,-5351.43 1507.08,-6200 1516.31,-6261.4 1492.65,-6432.66 1535.08,-6478 1563.17,-6508.03 1611.2,-6512.63 1647.4,-6511.02"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1647.97,-6514.49 1657.74,-6510.37 1647.54,-6507.5 1647.97,-6514.49"/>
</g>
<!-- DepositUtils.Deposit.setCourtesyCall -->
<g id="node404" class="node"><title>DepositUtils.Deposit.setCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4669" rx="68.4888" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4665.3" font-family="Times New Roman,serif" font-size="14.00">setCourtesyCall</text>
</g>
<!-- DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.setCourtesyCall -->
<g id="edge142" class="edge"><title>DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.setCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1035.97,-3096.01C1059.73,-3099.27 1083.71,-3107.6 1099.31,-3126 1179.09,-3220.11 1052.43,-4137.95 1127.31,-4236 1234.27,-4376.06 1395.26,-4213.79 1507.08,-4350 1548.44,-4400.38 1490.65,-4594.3 1535.08,-4642 1557.04,-4665.59 1591.31,-4673.51 1622.54,-4675.04"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1622.45,-4678.54 1632.55,-4675.33 1622.65,-4671.55 1622.45,-4678.54"/>
</g>
<!-- DepositUtils.Deposit.logCourtesyCalled -->
<g id="node405" class="node"><title>DepositUtils.Deposit.logCourtesyCalled</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4615" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4611.3" font-family="Times New Roman,serif" font-size="14.00">logCourtesyCalled</text>
</g>
<!-- DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.logCourtesyCalled -->
<g id="edge143" class="edge"><title>DepositLiquidation.notifyCourtesyCall&#45;&gt;DepositUtils.Deposit.logCourtesyCalled</title>
<path fill="none" stroke="white" stroke-width="2" d="M1035.94,-3096.04C1059.7,-3099.29 1083.68,-3107.62 1099.31,-3126 1171.02,-3210.34 1068.78,-4028.03 1127.31,-4122 1228.17,-4283.92 1400.08,-4164.07 1507.08,-4322 1540.42,-4371.21 1494.37,-4544.69 1535.08,-4588 1554.71,-4608.89 1584,-4617.46 1612.2,-4620.19"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1612.29,-4623.7 1622.52,-4620.94 1612.8,-4616.72 1612.29,-4623.7"/>
</g>
<!-- DepositLiquidation.exitCourtesyCall -->
<g id="node85" class="node"><title>DepositLiquidation.exitCourtesyCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-3045" rx="70.6878" ry="18"/>
<text text-anchor="middle" x="957.623" y="-3041.3" font-family="Times New Roman,serif" font-size="14.00">exitCourtesyCall</text>
</g>
<!-- DepositLiquidation.exitCourtesyCall&#45;&gt;DepositLiquidation.getCollateralizationPercentage -->
<g id="edge145" class="edge"><title>DepositLiquidation.exitCourtesyCall&#45;&gt;DepositLiquidation.getCollateralizationPercentage</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1019.14,-3054.04C1075.65,-3062.48 1160.84,-3075.2 1226.19,-3084.96"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1225.69,-3088.42 1236.1,-3086.44 1226.72,-3081.5 1225.69,-3088.42"/>
</g>
<!-- DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.setActive -->
<g id="edge146" class="edge"><title>DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.setActive</title>
<path fill="none" stroke="white" stroke-width="2" d="M1026.79,-3041.01C1053.39,-3043.3 1081.68,-3051.24 1099.31,-3072 1136.76,-3116.1 1100.75,-4061.6 1127.31,-4113 1224.19,-4300.48 1410.82,-4210.2 1507.08,-4398 1542,-4466.14 1485.04,-5718.04 1535.08,-5776 1561.36,-5806.44 1608.05,-5811.37 1644.3,-5809.75"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1644.94,-5813.21 1654.7,-5809.09 1644.5,-5806.23 1644.94,-5813.21"/>
</g>
<!-- DepositUtils.Deposit.inCourtesyCall -->
<g id="node406" class="node"><title>DepositUtils.Deposit.inCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4399" rx="64.189" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4395.3" font-family="Times New Roman,serif" font-size="14.00">inCourtesyCall</text>
</g>
<!-- DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.inCourtesyCall -->
<g id="edge144" class="edge"><title>DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.inCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1026.75,-3041.05C1053.34,-3043.35 1081.64,-3051.28 1099.31,-3072 1164.09,-3147.95 1067.44,-3890.12 1127.31,-3970 1233.8,-4112.08 1395.74,-3955.69 1507.08,-4094 1546.01,-4142.37 1492.65,-4326.66 1535.08,-4372 1557.88,-4396.37 1593.82,-4403.99 1625.91,-4405.14"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.11,-4408.64 1636.17,-4405.29 1626.22,-4401.64 1626.11,-4408.64"/>
</g>
<!-- DepositUtils.Deposit.logExitedCourtesyCall -->
<g id="node407" class="node"><title>DepositUtils.Deposit.logExitedCourtesyCall</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4561" rx="92.0841" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4557.3" font-family="Times New Roman,serif" font-size="14.00">logExitedCourtesyCall</text>
</g>
<!-- DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.logExitedCourtesyCall -->
<g id="edge147" class="edge"><title>DepositLiquidation.exitCourtesyCall&#45;&gt;DepositUtils.Deposit.logExitedCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1026.78,-3041.02C1053.38,-3043.31 1081.67,-3051.25 1099.31,-3072 1170.81,-3156.09 1055.18,-3981.45 1127.31,-4065 1239.31,-4194.73 1392.42,-4004.61 1507.08,-4132 1566.99,-4198.56 1474.91,-4467.68 1535.08,-4534 1551.18,-4551.75 1574.24,-4560.7 1597.86,-4564.73"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1597.61,-4568.23 1608,-4566.17 1598.6,-4561.3 1597.61,-4568.23"/>
</g>
<!-- DepositLiquidation.notifyUndercollateralizedLiquidation -->
<g id="node86" class="node"><title>DepositLiquidation.notifyUndercollateralizedLiquidation</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-2991" rx="141.875" ry="18"/>
<text text-anchor="middle" x="957.623" y="-2987.3" font-family="Times New Roman,serif" font-size="14.00">notifyUndercollateralizedLiquidation</text>
</g>
<!-- DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositLiquidation.getCollateralizationPercentage -->
<g id="edge149" class="edge"><title>DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositLiquidation.getCollateralizationPercentage</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1044.69,-3005.23C1062.86,-3008.87 1081.82,-3013.15 1099.31,-3018 1159.45,-3034.68 1226.48,-3060.3 1270.76,-3078.25"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1269.54,-3081.54 1280.13,-3082.07 1272.19,-3075.05 1269.54,-3081.54"/>
</g>
<!-- DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositLiquidation.startLiquidation -->
<g id="edge150" class="edge"><title>DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositLiquidation.startLiquidation</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1073.9,-3001.38C1083.21,-3005.59 1091.87,-3011.02 1099.31,-3018 1135.48,-3051.92 1094.86,-3088.51 1127.31,-3126 1159.55,-3163.25 1211.77,-3183.76 1253.74,-3194.82"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1253.08,-3198.26 1263.63,-3197.3 1254.78,-3191.47 1253.08,-3198.26"/>
</g>
<!-- DepositUtils.Deposit.inRedeemableState -->
<g id="node408" class="node"><title>DepositUtils.Deposit.inRedeemableState</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4453" rx="79.0865" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4449.3" font-family="Times New Roman,serif" font-size="14.00">inRedeemableState</text>
</g>
<!-- DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositUtils.Deposit.inRedeemableState -->
<g id="edge148" class="edge"><title>DepositLiquidation.notifyUndercollateralizedLiquidation&#45;&gt;DepositUtils.Deposit.inRedeemableState</title>
<path fill="none" stroke="white" stroke-width="2" d="M1077.61,-3000.73C1085.78,-3005.14 1093.19,-3010.8 1099.31,-3018 1170.6,-3101.83 1057.42,-3923 1127.31,-4008 1237.23,-4141.67 1393.47,-3963.45 1507.08,-4094 1555.68,-4149.85 1484.93,-4371.53 1535.08,-4426 1554.41,-4447 1583.48,-4455.63 1611.59,-4458.37"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1611.65,-4461.89 1621.88,-4459.13 1612.16,-4454.91 1611.65,-4461.89"/>
</g>
<!-- DepositLiquidation.notifyCourtesyTimeout -->
<g id="node87" class="node"><title>DepositLiquidation.notifyCourtesyTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-2937" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="957.623" y="-2933.3" font-family="Times New Roman,serif" font-size="14.00">notifyCourtesyTimeout</text>
</g>
<!-- DepositLiquidation.notifyCourtesyTimeout&#45;&gt;DepositLiquidation.startLiquidation -->
<g id="edge153" class="edge"><title>DepositLiquidation.notifyCourtesyTimeout&#45;&gt;DepositLiquidation.startLiquidation</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1052.38,-2938.9C1069.92,-2943.39 1086.68,-2951.13 1099.31,-2964 1150.5,-3016.14 1081.81,-3068.83 1127.31,-3126 1157.88,-3164.41 1209.94,-3184.84 1252.27,-3195.57"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1251.71,-3199.04 1262.25,-3197.97 1253.34,-3192.23 1251.71,-3199.04"/>
</g>
<!-- TBTCConstants.getCourtesyCallTimeout -->
<g id="node227" class="node"><title>TBTCConstants.getCourtesyCallTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-512" rx="98.5829" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-508.3" font-family="Times New Roman,serif" font-size="14.00">getCourtesyCallTimeout</text>
</g>
<!-- DepositLiquidation.notifyCourtesyTimeout&#45;&gt;TBTCConstants.getCourtesyCallTimeout -->
<g id="edge152" class="edge"><title>DepositLiquidation.notifyCourtesyTimeout&#45;&gt;TBTCConstants.getCourtesyCallTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M993.791,-2920.22C1027.74,-2901.86 1077.16,-2868.96 1099.31,-2824 1131.34,-2759 1077.56,-1572.69 1127.31,-1520 1185.43,-1458.45 1444.46,-1546.97 1507.08,-1490 1560.48,-1441.42 1486.32,-1383.24 1535.08,-1330 1643.19,-1211.94 1727.33,-1274.12 1883.05,-1237 1969.36,-1216.43 2021.2,-1263.8 2078.43,-1196 2125.56,-1140.18 2055.82,-594.23 2103.63,-539 2113.93,-527.112 2127.59,-519.344 2142.44,-514.41"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2143.71,-517.688 2152.35,-511.563 2141.77,-510.961 2143.71,-517.688"/>
</g>
<!-- DepositLiquidation.notifyCourtesyTimeout&#45;&gt;DepositUtils.Deposit.inCourtesyCall -->
<g id="edge151" class="edge"><title>DepositLiquidation.notifyCourtesyTimeout&#45;&gt;DepositUtils.Deposit.inCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1052.75,-2937.28C1070.6,-2941.81 1087.38,-2949.98 1099.31,-2964 1169.04,-3045.95 1053.97,-3853.27 1127.31,-3932 1185.12,-3994.06 1448.02,-3909.13 1507.08,-3970 1569.44,-4034.27 1474.91,-4305.68 1535.08,-4372 1557.59,-4396.82 1593.69,-4404.43 1625.95,-4405.45"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.22,-4408.96 1636.26,-4405.57 1626.3,-4401.96 1626.22,-4408.96"/>
</g>
<!-- DepositRedemption.distributeSignerFee -->
<g id="node89" class="node"><title>DepositRedemption.distributeSignerFee</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2663" rx="80.6858" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2659.3" font-family="Times New Roman,serif" font-size="14.00">distributeSignerFee</text>
</g>
<!-- DepositRedemption.IBondedECDSAKeep -->
<g id="node102" class="node"><title>DepositRedemption.IBondedECDSAKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-2690" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2686.3" font-family="Times New Roman,serif" font-size="14.00">IBondedECDSAKeep</text>
</g>
<!-- DepositRedemption.distributeSignerFee&#45;&gt;DepositRedemption.IBondedECDSAKeep -->
<g id="edge154" class="edge"><title>DepositRedemption.distributeSignerFee&#45;&gt;DepositRedemption.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1398.18,-2668.5C1456.64,-2672.72 1537.76,-2678.59 1600.49,-2683.13"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1600.57,-2686.64 1610.79,-2683.88 1601.07,-2679.66 1600.57,-2686.64"/>
</g>
<!-- DepositRedemption.distributeSignerFee&#45;&gt;DepositUtils.Deposit.signerFee -->
<g id="edge155" class="edge"><title>DepositRedemption.distributeSignerFee&#45;&gt;DepositUtils.Deposit.signerFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1367.69,-2648.18C1410.45,-2641.51 1472.85,-2642.85 1507.08,-2681 1563.8,-2744.23 1479.04,-3381.16 1535.08,-3445 1560.68,-3474.17 1605.01,-3479.8 1640.59,-3480.15"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1640.86,-3483.65 1650.85,-3480.12 1640.84,-3476.65 1640.86,-3483.65"/>
</g>
<!-- DepositRedemption.distributeSignerFee&#45;&gt;DepositUtils.Deposit.signerFee -->
<g id="edge157" class="edge"><title>DepositRedemption.distributeSignerFee&#45;&gt;DepositUtils.Deposit.signerFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1401.75,-2661.32C1439.19,-2662.35 1481.19,-2670.15 1507.08,-2699 1563.8,-2762.23 1479.04,-3399.16 1535.08,-3463 1563.51,-3495.4 1615.06,-3498.76 1652.05,-3494.28"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1652.67,-3497.73 1662.07,-3492.83 1651.67,-3490.8 1652.67,-3497.73"/>
</g>
<!-- IBondedECDSAKeep.distributeERC20Reward -->
<g id="node426" class="node"><title>IBondedECDSAKeep.distributeERC20Reward</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-967" rx="99.3824" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-963.3" font-family="Times New Roman,serif" font-size="14.00">distributeERC20Reward</text>
</g>
<!-- DepositRedemption.distributeSignerFee&#45;&gt;IBondedECDSAKeep.distributeERC20Reward -->
<g id="edge156" class="edge"><title>DepositRedemption.distributeSignerFee&#45;&gt;IBondedECDSAKeep.distributeERC20Reward</title>
<path fill="none" stroke="white" stroke-width="2" d="M1389.49,-2672.73C1429.79,-2674.42 1478.58,-2668.39 1507.08,-2636 1567.33,-2567.49 1475.57,-1063.16 1535.08,-994 1549.29,-977.481 1569.51,-968.468 1590.83,-963.937"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1591.46,-967.379 1600.68,-962.159 1590.22,-960.49 1591.46,-967.379"/>
</g>
<!-- DepositRedemption.approveDigest -->
<g id="node90" class="node"><title>DepositRedemption.approveDigest</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2717" rx="63.8893" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2713.3" font-family="Times New Roman,serif" font-size="14.00">approveDigest</text>
</g>
<!-- DepositRedemption.approveDigest&#45;&gt;DepositRedemption.IBondedECDSAKeep -->
<g id="edge158" class="edge"><title>DepositRedemption.approveDigest&#45;&gt;DepositRedemption.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1383,-2712.6C1441.85,-2708.35 1531.94,-2701.83 1600.29,-2696.88"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1600.92,-2700.35 1610.64,-2696.14 1600.42,-2693.37 1600.92,-2700.35"/>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers -->
<g id="node91" class="node"><title>DepositRedemption.performRedemptionTBTCTransfers</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2771" rx="142.975" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2767.3" font-family="Times New Roman,serif" font-size="14.00">performRedemptionTBTCTransfers</text>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.signerFee -->
<g id="edge161" class="edge"><title>DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.signerFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1363.45,-2788.2C1407.7,-2809.11 1475.82,-2848.93 1507.08,-2907 1535.93,-2960.59 1494.6,-3408.55 1535.08,-3454 1561.48,-3483.65 1607.27,-3488.88 1643.18,-3487.56"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1643.71,-3491.04 1653.5,-3487 1643.33,-3484.05 1643.71,-3491.04"/>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.lotSizeTbtc -->
<g id="edge160" class="edge"><title>DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.lotSizeTbtc</title>
<path fill="none" stroke="white" stroke-width="2" d="M1364.27,-2788.18C1408.88,-2808.94 1476.99,-2848.54 1507.08,-2907 1532.56,-2956.53 1498.81,-4869.72 1535.08,-4912 1559.59,-4940.58 1602.08,-4946.71 1637.17,-4946.03"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1637.46,-4949.52 1647.32,-4945.64 1637.19,-4942.52 1637.46,-4949.52"/>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.getRedemptionTbtcRequirement -->
<g id="edge162" class="edge"><title>DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.getRedemptionTbtcRequirement</title>
<path fill="none" stroke="white" stroke-width="2" d="M1364.26,-2788.18C1408.88,-2808.95 1476.98,-2848.55 1507.08,-2907 1556.7,-3003.38 1464.49,-4775.74 1535.08,-4858 1542.11,-4866.2 1550.63,-4872.55 1560.03,-4877.43"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1558.74,-4880.68 1569.29,-4881.66 1561.65,-4874.32 1558.74,-4880.68"/>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.depositOwner -->
<g id="edge159" class="edge"><title>DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;DepositUtils.Deposit.depositOwner</title>
<path fill="none" stroke="white" stroke-width="2" d="M1364.72,-2788.34C1409.39,-2809.13 1477.21,-2848.65 1507.08,-2907 1544.07,-2979.28 1482.35,-5768.25 1535.08,-5830 1557.68,-5856.46 1595.69,-5863.71 1629.04,-5864.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1629.25,-5867.6 1639.22,-5864.01 1629.19,-5860.6 1629.25,-5867.6"/>
</g>
<!-- tbtcLot.sub -->
<g id="node434" class="node"><title>tbtcLot.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-2472" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2468.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;tbtcLot.sub -->
<g id="edge163" class="edge"><title>DepositRedemption.performRedemptionTBTCTransfers&#45;&gt;tbtcLot.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1464.32,-2769.97C1480.33,-2764.45 1495.14,-2756.15 1507.08,-2744 1575.84,-2674 1472.66,-2600.72 1535.08,-2525 1565.38,-2488.24 1621.82,-2476.79 1659.01,-2473.33"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.72,-2476.79 1669.42,-2472.53 1659.18,-2469.81 1659.72,-2476.79"/>
</g>
<!-- DepositRedemption._requestRedemption -->
<g id="node92" class="node"><title>DepositRedemption._requestRedemption</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="957.623" cy="-2771" rx="86.3847" ry="18"/>
<text text-anchor="middle" x="957.623" y="-2767.3" font-family="Times New Roman,serif" font-size="14.00">_requestRedemption</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositRedemption.approveDigest -->
<g id="edge171" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositRedemption.approveDigest</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1025.89,-2759.92C1056.76,-2754.92 1093.87,-2749.02 1127.31,-2744 1169.03,-2737.74 1215.9,-2731.17 1252.99,-2726.08"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1253.75,-2729.51 1263.18,-2724.68 1252.8,-2722.57 1253.75,-2729.51"/>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositRedemption.performRedemptionTBTCTransfers -->
<g id="edge166" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositRedemption.performRedemptionTBTCTransfers</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1044.31,-2771C1081.24,-2771 1125.56,-2771 1167.77,-2771"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1167.88,-2774.5 1177.88,-2771 1167.88,-2767.5 1167.88,-2774.5"/>
</g>
<!-- TBTCConstants.getMinimumRedemptionFee -->
<g id="node228" class="node"><title>TBTCConstants.getMinimumRedemptionFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-458" rx="113.18" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-454.3" font-family="Times New Roman,serif" font-size="14.00">getMinimumRedemptionFee</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;TBTCConstants.getMinimumRedemptionFee -->
<g id="edge168" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;TBTCConstants.getMinimumRedemptionFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M1043.75,-2772.8C1064.89,-2768.87 1085.45,-2760.45 1099.31,-2744 1152.08,-2681.36 1072.21,-1330.6 1127.31,-1270 1198.87,-1191.29 2006.16,-1239.05 2078.43,-1161 2129.5,-1105.85 2054.47,-541.852 2103.63,-485 2111.03,-476.45 2120.17,-470.03 2130.24,-465.263"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2131.82,-468.394 2139.73,-461.336 2129.15,-461.926 2131.82,-468.394"/>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge167" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M995.473,-2787.27C1029.41,-2808.86 1077.68,-2849.06 1099.31,-2898 1141.28,-2992.96 1061.8,-3751.45 1127.31,-3832 1236.82,-3966.65 1394.73,-3790.7 1507.08,-3923 1562.75,-3988.56 1477.2,-4245.39 1535.08,-4309 1561.88,-4338.46 1607.85,-4343.65 1643.72,-4343.88"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1644.04,-4347.38 1654.02,-4343.82 1644,-4340.38 1644.04,-4347.38"/>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge174" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M978.698,-2788.53C1011.07,-2812.6 1073.77,-2858.21 1099.31,-2916 1141.28,-3010.96 1061.8,-3769.45 1127.31,-3850 1236.82,-3984.65 1394.73,-3808.7 1507.08,-3941 1562.75,-4006.56 1477.2,-4263.39 1535.08,-4327 1564.43,-4359.26 1616.76,-4362.42 1653.65,-4357.87"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1654.23,-4361.33 1663.61,-4356.4 1653.21,-4354.4 1654.23,-4361.33"/>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.inRedeemableState -->
<g id="edge164" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.inRedeemableState</title>
<path fill="none" stroke="white" stroke-width="2" d="M986.513,-2788.05C1020.34,-2810.52 1075.74,-2853.53 1099.31,-2907 1121.79,-2958.01 1092.56,-3866.41 1127.31,-3910 1235.98,-4046.3 1395.77,-3873.85 1507.08,-4008 1566.52,-4079.65 1472.62,-4356.97 1535.08,-4426 1554.31,-4447.26 1583.52,-4455.9 1611.76,-4458.59"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1611.88,-4462.11 1622.1,-4459.33 1612.37,-4455.13 1611.88,-4462.11"/>
</g>
<!-- DepositUtils.Deposit.signerPKH -->
<g id="node409" class="node"><title>DepositUtils.Deposit.signerPKH</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4021" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4017.3" font-family="Times New Roman,serif" font-size="14.00">signerPKH</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.signerPKH -->
<g id="edge170" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.signerPKH</title>
<path fill="none" stroke="white" stroke-width="2" d="M986.331,-2788.13C1019.97,-2810.68 1075.18,-2853.78 1099.31,-2907 1151.77,-3022.7 1071.97,-3363.64 1127.31,-3478 1224.97,-3679.8 1399.26,-3613.44 1507.08,-3810 1546.86,-3882.52 1477.05,-3935.05 1535.08,-3994 1561.58,-4020.92 1604.19,-4027.08 1638.83,-4026.82"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1638.92,-4030.32 1648.83,-4026.57 1638.75,-4023.32 1638.92,-4030.32"/>
</g>
<!-- DepositUtils.Deposit.setAwaitingWithdrawalSignature -->
<g id="node410" class="node"><title>DepositUtils.Deposit.setAwaitingWithdrawalSignature</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4237" rx="128.077" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4233.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingWithdrawalSignature</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalSignature -->
<g id="edge172" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M986.473,-2788.07C1020.26,-2810.55 1075.62,-2853.59 1099.31,-2907 1138.07,-2994.4 1069.46,-3690.88 1127.31,-3767 1234.33,-3907.83 1396.32,-3748.1 1507.08,-3886 1552.33,-3942.34 1486.08,-4156.88 1535.08,-4210 1542.63,-4218.18 1551.66,-4224.49 1561.53,-4229.29"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1560.25,-4232.55 1570.81,-4233.3 1563.02,-4226.13 1560.25,-4232.55"/>
</g>
<!-- DepositUtils.Deposit.logRedemptionRequested -->
<g id="node411" class="node"><title>DepositUtils.Deposit.logRedemptionRequested</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4183" rx="104.782" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4179.3" font-family="Times New Roman,serif" font-size="14.00">logRedemptionRequested</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.logRedemptionRequested -->
<g id="edge173" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;DepositUtils.Deposit.logRedemptionRequested</title>
<path fill="none" stroke="white" stroke-width="2" d="M986.432,-2788.08C1020.17,-2810.59 1075.5,-2853.64 1099.31,-2907 1133.34,-2983.25 1082.1,-3587.79 1127.31,-3658 1229.49,-3816.68 1400.7,-3692.1 1507.08,-3848 1545.81,-3904.77 1488.36,-4105.59 1535.08,-4156 1547.85,-4169.78 1564.82,-4178.22 1582.94,-4183.17"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1582.26,-4186.61 1592.8,-4185.51 1583.88,-4179.8 1582.26,-4186.61"/>
</g>
<!-- _output.extractHash -->
<g id="node435" class="node"><title>_output.extractHash</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-950" rx="53.8905" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-946.3" font-family="Times New Roman,serif" font-size="14.00">extractHash</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;_output.extractHash -->
<g id="edge165" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;_output.extractHash</title>
<path fill="none" stroke="white" stroke-width="2" d="M1043.75,-2772.81C1064.9,-2768.87 1085.45,-2760.46 1099.31,-2744 1153.14,-2680.08 1091.66,-1315.58 1127.31,-1240 1222.09,-1039.08 1394.74,-1106.66 1507.08,-915 1539.17,-860.257 1486.01,-815.229 1535.08,-775 1646.02,-684.051 1748.23,-682.466 1857.85,-775 1908.84,-818.04 1838.38,-873.438 1883.05,-923 1892.16,-933.11 1904.71,-939.564 1917.76,-943.653"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1917.21,-947.13 1927.78,-946.339 1919.03,-940.369 1917.21,-947.13"/>
</g>
<!-- CheckBitcoinSigs.wpkhSpendSighash -->
<g id="node438" class="node"><title>CheckBitcoinSigs.wpkhSpendSighash</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-34" rx="82.5854" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-30.3" font-family="Times New Roman,serif" font-size="14.00">wpkhSpendSighash</text>
</g>
<!-- DepositRedemption._requestRedemption&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash -->
<g id="edge169" class="edge"><title>DepositRedemption._requestRedemption&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash</title>
<path fill="none" stroke="white" stroke-width="2" d="M1043.76,-2772.81C1064.9,-2768.88 1085.46,-2760.46 1099.31,-2744 1154.98,-2677.85 1101.66,-1270.57 1127.31,-1188 1218.07,-895.883 1411.21,-904.48 1507.08,-614 1525.46,-558.316 1499.48,-133.597 1535.08,-87 1552.91,-63.6525 1581.35,-50.4619 1609.37,-43.0542"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1610.34,-46.4195 1619.24,-40.668 1608.7,-39.6154 1610.34,-46.4195"/>
</g>
<!-- DepositRedemption.transferAndRequestRedemption -->
<g id="node93" class="node"><title>DepositRedemption.transferAndRequestRedemption</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-2555" rx="128.077" ry="18"/>
<text text-anchor="middle" x="618.75" y="-2551.3" font-family="Times New Roman,serif" font-size="14.00">transferAndRequestRedemption</text>
</g>
<!-- DepositRedemption.transferAndRequestRedemption&#45;&gt;DepositRedemption._requestRedemption -->
<g id="edge175" class="edge"><title>DepositRedemption.transferAndRequestRedemption&#45;&gt;DepositRedemption._requestRedemption</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M746.264,-2556.86C761.926,-2562.08 776.44,-2570.08 787.935,-2582 838.293,-2634.22 758.114,-2691.27 807.935,-2744 822.103,-2759 841.595,-2767.33 861.805,-2771.67"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="861.296,-2775.14 871.763,-2773.5 862.558,-2768.25 861.296,-2775.14"/>
</g>
<!-- DepositRedemption.requestRedemption -->
<g id="node94" class="node"><title>DepositRedemption.requestRedemption</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-2609" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="618.75" y="-2605.3" font-family="Times New Roman,serif" font-size="14.00">requestRedemption</text>
</g>
<!-- DepositRedemption.requestRedemption&#45;&gt;DepositRedemption._requestRedemption -->
<g id="edge176" class="edge"><title>DepositRedemption.requestRedemption&#45;&gt;DepositRedemption._requestRedemption</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M695.318,-2602.97C727.823,-2604.52 763.813,-2612.45 787.935,-2636 822.864,-2670.1 773.357,-2709.54 807.935,-2744 822.244,-2758.26 841.394,-2766.38 861.18,-2770.77"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="860.765,-2774.26 871.243,-2772.69 862.075,-2767.38 860.765,-2774.26"/>
</g>
<!-- DepositRedemption.provideRedemptionSignature -->
<g id="node95" class="node"><title>DepositRedemption.provideRedemptionSignature</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-2771" rx="116.18" ry="18"/>
<text text-anchor="middle" x="618.75" y="-2767.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionSignature</text>
</g>
<!-- DepositUtils.Deposit.inAwaitingWithdrawalSignature -->
<g id="node412" class="node"><title>DepositUtils.Deposit.inAwaitingWithdrawalSignature</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5155" rx="124.278" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5151.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingWithdrawalSignature</text>
</g>
<!-- DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalSignature -->
<g id="edge177" class="edge"><title>DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M620.115,-2789.01C624.246,-2985.26 664.771,-4722.5 807.935,-4894 1014.44,-5141.37 1245.83,-4897.36 1507.08,-5086 1525.27,-5099.13 1516.25,-5115.8 1535.08,-5128 1546.42,-5135.35 1559.14,-5140.89 1572.31,-5145.05"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1571.39,-5148.43 1581.97,-5147.84 1573.33,-5141.71 1571.39,-5148.43"/>
</g>
<!-- DepositUtils.Deposit.signerPubkey -->
<g id="node413" class="node"><title>DepositUtils.Deposit.signerPubkey</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5209" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5205.3" font-family="Times New Roman,serif" font-size="14.00">signerPubkey</text>
</g>
<!-- DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.signerPubkey -->
<g id="edge178" class="edge"><title>DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.signerPubkey</title>
<path fill="none" stroke="white" stroke-width="2" d="M620.072,-2789.01C623.801,-2988.94 661.378,-4789.84 807.935,-4969 914.182,-5098.88 1444.59,-5177.31 1630.76,-5201.19"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.31,-5204.66 1640.68,-5202.45 1631.2,-5197.72 1630.31,-5204.66"/>
</g>
<!-- DepositUtils.Deposit.setAwaitingWithdrawalProof -->
<g id="node414" class="node"><title>DepositUtils.Deposit.setAwaitingWithdrawalProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5317" rx="115.08" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5313.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingWithdrawalProof</text>
</g>
<!-- DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalProof -->
<g id="edge179" class="edge"><title>DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M620.019,-2789.15C623.271,-2998.57 657.579,-4953.47 807.935,-5155 898.892,-5276.92 978.806,-5245.09 1127.31,-5278 1277.82,-5311.35 1455.75,-5318.54 1571.86,-5319.07"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1572.2,-5322.57 1582.21,-5319.1 1572.22,-5315.57 1572.2,-5322.57"/>
</g>
<!-- DepositUtils.Deposit.logGotRedemptionSignature -->
<g id="node415" class="node"><title>DepositUtils.Deposit.logGotRedemptionSignature</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5263" rx="114.28" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5259.3" font-family="Times New Roman,serif" font-size="14.00">logGotRedemptionSignature</text>
</g>
<!-- DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.logGotRedemptionSignature -->
<g id="edge180" class="edge"><title>DepositRedemption.provideRedemptionSignature&#45;&gt;DepositUtils.Deposit.logGotRedemptionSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M620.07,-2789.3C623.809,-2994.45 661.726,-4858.73 807.935,-5049 994.251,-5291.47 1403.8,-5290.02 1594.3,-5274.59"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1594.65,-5278.07 1604.32,-5273.75 1594.06,-5271.1 1594.65,-5278.07"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee -->
<g id="node96" class="node"><title>DepositRedemption.increaseRedemptionFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-2717" rx="97.4827" ry="18"/>
<text text-anchor="middle" x="957.623" y="-2713.3" font-family="Times New Roman,serif" font-size="14.00">increaseRedemptionFee</text>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositRedemption.approveDigest -->
<g id="edge186" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositRedemption.approveDigest</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1055.52,-2717C1115.88,-2717 1192.26,-2717 1247.44,-2717"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1247.49,-2720.5 1257.49,-2717 1247.49,-2713.5 1247.49,-2720.5"/>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious -->
<g id="node97" class="node"><title>DepositRedemption.checkRelationshipToPrevious</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-2609" rx="119.679" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2605.3" font-family="Times New Roman,serif" font-size="14.00">checkRelationshipToPrevious</text>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositRedemption.checkRelationshipToPrevious -->
<g id="edge183" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositRedemption.checkRelationshipToPrevious</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1050.68,-2711.62C1068.03,-2707.34 1085.16,-2700.56 1099.31,-2690 1120.98,-2673.83 1105.24,-2651.61 1127.31,-2636 1146.27,-2622.59 1168.94,-2614.43 1191.97,-2609.67"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1192.66,-2613.1 1201.85,-2607.83 1191.38,-2606.22 1192.66,-2613.1"/>
</g>
<!-- TBTCConstants.getIncreaseFeeTimer -->
<g id="node229" class="node"><title>TBTCConstants.getIncreaseFeeTimer</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-404" rx="86.3847" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-400.3" font-family="Times New Roman,serif" font-size="14.00">getIncreaseFeeTimer</text>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;TBTCConstants.getIncreaseFeeTimer -->
<g id="edge182" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;TBTCConstants.getIncreaseFeeTimer</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.38,-2716.14C1072.27,-2711.48 1088.01,-2703.41 1099.31,-2690 1152.12,-2627.32 1071.64,-1275.15 1127.31,-1215 1199.42,-1137.07 2005.64,-1200.3 2078.43,-1123 2131.18,-1066.99 2053.33,-489.217 2103.63,-431 2117.02,-415.504 2136.14,-407.004 2156.17,-402.657"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2156.84,-406.091 2166.05,-400.845 2155.58,-399.206 2156.84,-406.091"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge189" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M1030.4,-2705.01C1055.91,-2707.1 1082.45,-2715.22 1099.31,-2735 1164.3,-2811.21 1067.53,-3555.64 1127.31,-3636 1233.53,-3778.8 1399.42,-3621.28 1507.08,-3763 1543.82,-3811.37 1494.67,-4263.64 1535.08,-4309 1561.66,-4338.84 1607.87,-4343.94 1643.88,-4344.05"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1644.25,-4347.55 1654.22,-4343.96 1644.19,-4340.55 1644.25,-4347.55"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge190" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M1046.55,-2724.58C1066.65,-2729.03 1086,-2737.39 1099.31,-2753 1164.3,-2829.21 1067.53,-3573.64 1127.31,-3654 1233.53,-3796.8 1399.42,-3639.28 1507.08,-3781 1543.82,-3829.37 1494.67,-4281.64 1535.08,-4327 1564.17,-4359.67 1616.8,-4362.68 1653.81,-4357.98"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1654.44,-4361.42 1663.81,-4356.46 1653.4,-4354.5 1654.44,-4361.42"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.signerPKH -->
<g id="edge185" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.signerPKH</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.16,-2718.05C1072.06,-2722.69 1087.87,-2730.71 1099.31,-2744 1149.8,-2802.66 1077.8,-3380.51 1127.31,-3440 1238.02,-3573.01 1395.07,-3394.08 1507.08,-3526 1574.51,-3605.42 1465.45,-3916.49 1535.08,-3994 1560.58,-4022.39 1603.86,-4028.33 1639.04,-4027.61"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.34,-4031.1 1649.19,-4027.22 1639.07,-4024.11 1639.34,-4031.1"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalSignature -->
<g id="edge187" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.setAwaitingWithdrawalSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.23,-2717.99C1072.13,-2722.64 1087.92,-2730.67 1099.31,-2744 1159.92,-2814.9 1068.7,-3510.44 1127.31,-3583 1236.65,-3718.34 1396.45,-3543.72 1507.08,-3678 1582.35,-3769.37 1456.28,-4121.65 1535.08,-4210 1542.49,-4218.31 1551.42,-4224.7 1561.23,-4229.56"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1559.9,-4232.8 1570.47,-4233.61 1562.72,-4226.39 1559.9,-4232.8"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.logRedemptionRequested -->
<g id="edge188" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.logRedemptionRequested</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.19,-2718.02C1072.09,-2722.67 1087.89,-2730.69 1099.31,-2744 1153.83,-2807.54 1078.4,-3429.05 1127.31,-3497 1232.68,-3643.37 1400.47,-3494.53 1507.08,-3640 1574.96,-3732.62 1458.57,-4070.36 1535.08,-4156 1547.75,-4170.19 1564.87,-4178.78 1583.21,-4183.74"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1582.67,-4187.2 1593.2,-4186.07 1584.26,-4180.39 1582.67,-4187.2"/>
</g>
<!-- DepositUtils.Deposit.inAwaitingWithdrawalProof -->
<g id="node416" class="node"><title>DepositUtils.Deposit.inAwaitingWithdrawalProof</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-4777" rx="111.28" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-4773.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingWithdrawalProof</text>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalProof -->
<g id="edge181" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.28,-2717.95C1072.18,-2722.6 1087.95,-2730.64 1099.31,-2744 1134.88,-2785.83 1106.24,-3681.29 1127.31,-3732 1221.39,-3958.37 1411.08,-3906.44 1507.08,-4132 1533.99,-4195.25 1489.51,-4698.53 1535.08,-4750 1546,-4762.34 1560.29,-4770.46 1575.83,-4775.64"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1575.07,-4779.06 1585.65,-4778.49 1577.03,-4772.34 1575.07,-4779.06"/>
</g>
<!-- DepositRedemption.increaseRedemptionFee&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash -->
<g id="edge184" class="edge"><title>DepositRedemption.increaseRedemptionFee&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash</title>
<path fill="none" stroke="white" stroke-width="2" d="M1055.04,-2716.25C1072.06,-2711.61 1087.94,-2703.51 1099.31,-2690 1128.21,-2655.64 1118.19,-1117.96 1127.31,-1074 1223.72,-609.266 1187.5,-410.208 1535.08,-87 1557.27,-66.3674 1587.67,-53.7561 1616.04,-46.0522"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1617.15,-49.3828 1625.97,-43.5268 1615.42,-42.5985 1617.15,-49.3828"/>
</g>
<!-- DepositUtils.bytes8LEToUint -->
<g id="node131" class="node"><title>DepositUtils.bytes8LEToUint</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1696.46" cy="-2362" rx="71.4873" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2358.3" font-family="Times New Roman,serif" font-size="14.00">bytes8LEToUint</text>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.bytes8LEToUint -->
<g id="edge191" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.bytes8LEToUint</title>
<path fill="none" stroke="white" stroke-width="2" d="M1437.99,-2604.78C1463.45,-2600.08 1488.37,-2590.75 1507.08,-2573 1553.11,-2529.32 1496.54,-2483.41 1535.08,-2433 1556.91,-2404.44 1591.71,-2385.36 1623.32,-2373.85"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1624.7,-2377.08 1633.01,-2370.52 1622.42,-2370.46 1624.7,-2377.08"/>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.bytes8LEToUint -->
<g id="edge192" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.bytes8LEToUint</title>
<path fill="none" stroke="white" stroke-width="2" d="M1384.01,-2624.37C1424.16,-2627.17 1474.84,-2621.59 1507.08,-2591 1553.11,-2547.32 1496.54,-2501.41 1535.08,-2451 1562.92,-2414.58 1611.84,-2393.58 1648.35,-2380.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1649.53,-2383.9 1657.82,-2377.31 1647.23,-2377.29 1649.53,-2383.9"/>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.Deposit.signerPKH -->
<g id="edge195" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.Deposit.signerPKH</title>
<path fill="none" stroke="white" stroke-width="2" d="M1425.88,-2600.24C1456.29,-2603.33 1486.79,-2613.02 1507.08,-2636 1557.02,-2692.57 1485.76,-3936.89 1535.08,-3994 1560.19,-4023.08 1603.92,-4028.87 1639.38,-4027.92"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.78,-4031.41 1649.61,-4027.46 1639.46,-4024.41 1639.78,-4031.41"/>
</g>
<!-- DepositUtils.Deposit.wasDigestApprovedForSigning -->
<g id="node417" class="node"><title>DepositUtils.Deposit.wasDigestApprovedForSigning</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3373" rx="124.578" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3369.3" font-family="Times New Roman,serif" font-size="14.00">wasDigestApprovedForSigning</text>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.Deposit.wasDigestApprovedForSigning -->
<g id="edge196" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;DepositUtils.Deposit.wasDigestApprovedForSigning</title>
<path fill="none" stroke="white" stroke-width="2" d="M1427.06,-2600.62C1456.98,-2603.88 1486.9,-2613.57 1507.08,-2636 1559.66,-2694.44 1483.67,-3283.52 1535.08,-3343 1543.41,-3352.64 1553.76,-3359.82 1565.17,-3365.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1563.95,-3368.38 1574.53,-3368.95 1566.61,-3361.91 1563.95,-3368.38"/>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash -->
<g id="edge194" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;CheckBitcoinSigs.wpkhSpendSighash</title>
<path fill="none" stroke="white" stroke-width="2" d="M1425.04,-2617.97C1455.78,-2615 1486.69,-2605.32 1507.08,-2582 1552.7,-2529.82 1494.16,-142.946 1535.08,-87 1552.42,-63.2843 1580.75,-50.0138 1608.82,-42.6451"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1609.81,-46.008 1618.72,-40.2773 1608.18,-39.2001 1609.81,-46.008"/>
</g>
<!-- _previousOutputValue.sub -->
<g id="node439" class="node"><title>_previousOutputValue.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-616" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-612.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositRedemption.checkRelationshipToPrevious&#45;&gt;_previousOutputValue.sub -->
<g id="edge193" class="edge"><title>DepositRedemption.checkRelationshipToPrevious&#45;&gt;_previousOutputValue.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1425.46,-2617.87C1456.04,-2614.84 1486.74,-2605.15 1507.08,-2582 1573.33,-2506.56 1495.74,-867.373 1535.08,-775 1562.39,-710.879 1629.09,-659.147 1667.32,-633.512"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1669.5,-636.272 1675.93,-627.857 1665.65,-630.421 1669.5,-636.272"/>
</g>
<!-- DepositRedemption.provideRedemptionProof -->
<g id="node98" class="node"><title>DepositRedemption.provideRedemptionProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-2663" rx="103.982" ry="18"/>
<text text-anchor="middle" x="957.623" y="-2659.3" font-family="Times New Roman,serif" font-size="14.00">provideRedemptionProof</text>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositRedemption.distributeSignerFee -->
<g id="edge201" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositRedemption.distributeSignerFee</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1061.75,-2663C1114.98,-2663 1179.29,-2663 1230.45,-2663"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1230.5,-2666.5 1240.5,-2663 1230.5,-2659.5 1230.5,-2666.5"/>
</g>
<!-- DepositRedemption.redemptionTransactionChecks -->
<g id="node99" class="node"><title>DepositRedemption.redemptionTransactionChecks</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-2555" rx="122.379" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2551.3" font-family="Times New Roman,serif" font-size="14.00">redemptionTransactionChecks</text>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositRedemption.redemptionTransactionChecks -->
<g id="edge198" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositRedemption.redemptionTransactionChecks</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M987.665,-2645.62C1020.42,-2626.85 1075.84,-2597.55 1127.31,-2582 1151.81,-2574.6 1178.69,-2569.21 1204.4,-2565.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1205.17,-2568.72 1214.56,-2563.82 1204.16,-2561.8 1205.17,-2568.72"/>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.utxoSize -->
<g id="edge200" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.utxoSize</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.58,-2665.6C1075.43,-2670.41 1089.13,-2678.09 1099.31,-2690 1158.86,-2759.62 1069.1,-3443.26 1127.31,-3514 1237.4,-3647.79 1396.65,-3468.5 1507.08,-3602 1557.82,-3663.35 1482.49,-4258.23 1535.08,-4318 1561.98,-4348.58 1609.5,-4353.27 1645.85,-4351.54"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1646.51,-4355 1656.26,-4350.86 1646.05,-4348.02 1646.51,-4355"/>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.closeKeep -->
<g id="edge202" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.closeKeep</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.6,-2665.58C1075.45,-2670.39 1089.14,-2678.08 1099.31,-2690 1131.13,-2727.29 1116.07,-3524.28 1127.31,-3572 1219.95,-3965.29 1417.22,-4004.06 1507.08,-4398 1516.93,-4441.18 1506.18,-5958.44 1535.08,-5992 1560.4,-6021.41 1604.75,-6027.02 1640.41,-6025.92"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1640.88,-6029.4 1650.69,-6025.41 1640.53,-6022.41 1640.88,-6029.4"/>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.redemptionTeardown -->
<g id="edge205" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.redemptionTeardown</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.45,-2665.7C1075.32,-2670.51 1089.05,-2678.16 1099.31,-2690 1143.22,-2740.7 1081.48,-3244.03 1127.31,-3293 1243.37,-3417.03 1389.97,-3212.95 1507.08,-3336 1574.93,-3407.29 1469.18,-3704.9 1535.08,-3778 1552.02,-3796.79 1576.75,-3805.74 1601.74,-3809.43"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1601.34,-3812.9 1611.69,-3810.63 1602.18,-3805.95 1601.34,-3812.9"/>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.inRedemption -->
<g id="edge197" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.inRedemption</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.42,-2665.73C1075.3,-2670.53 1089.04,-2678.17 1099.31,-2690 1140.89,-2737.87 1083.62,-3214.04 1127.31,-3260 1185.75,-3321.47 1448.14,-3237.01 1507.08,-3298 1573.01,-3366.22 1471.47,-3653.61 1535.08,-3724 1558.15,-3749.54 1595.61,-3756.88 1628.53,-3757.56"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1628.58,-3761.06 1638.58,-3757.57 1628.58,-3754.06 1628.58,-3761.06"/>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.distributeFeeRebate -->
<g id="edge203" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.distributeFeeRebate</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.54,-2665.63C1075.4,-2670.44 1089.1,-2678.11 1099.31,-2690 1153.34,-2752.94 1077.67,-3369.55 1127.31,-3436 1233.91,-3578.69 1400.3,-3421.44 1507.08,-3564 1553.74,-3626.3 1483.63,-4205.58 1535.08,-4264 1553.36,-4284.76 1581.14,-4293.59 1608.47,-4296.57"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1608.24,-4300.06 1618.5,-4297.42 1608.83,-4293.09 1608.24,-4300.06"/>
</g>
<!-- DepositUtils.Deposit.checkProofFromTxId -->
<g id="node418" class="node"><title>DepositUtils.Deposit.checkProofFromTxId</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3967" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3963.3" font-family="Times New Roman,serif" font-size="14.00">checkProofFromTxId</text>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.checkProofFromTxId -->
<g id="edge199" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.checkProofFromTxId</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.52,-2665.64C1075.39,-2670.45 1089.09,-2678.12 1099.31,-2690 1151,-2750.11 1072.89,-3345.34 1127.31,-3403 1185.51,-3464.67 1448.37,-3378.82 1507.08,-3440 1584.13,-3520.29 1460.87,-3857.07 1535.08,-3940 1551.46,-3958.31 1575.24,-3967.29 1599.49,-3971.17"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1599.15,-3974.66 1609.52,-3972.5 1600.06,-3967.72 1599.15,-3974.66"/>
</g>
<!-- DepositUtils.Deposit.setRedeemed -->
<g id="node419" class="node"><title>DepositUtils.Deposit.setRedeemed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3913" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3909.3" font-family="Times New Roman,serif" font-size="14.00">setRedeemed</text>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.setRedeemed -->
<g id="edge204" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.setRedeemed</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.5,-2665.66C1075.37,-2670.47 1089.08,-2678.13 1099.31,-2690 1148.39,-2746.95 1076.3,-3310.78 1127.31,-3366 1242.68,-3490.88 1390.61,-3288.14 1507.08,-3412 1579.36,-3488.87 1464.59,-3807.48 1535.08,-3886 1558.5,-3912.09 1596.92,-3919.22 1630.29,-3919.65"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.49,-3923.15 1640.47,-3919.58 1630.44,-3916.15 1630.49,-3923.15"/>
</g>
<!-- DepositUtils.Deposit.logRedeemed -->
<g id="node420" class="node"><title>DepositUtils.Deposit.logRedeemed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-3859" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-3855.3" font-family="Times New Roman,serif" font-size="14.00">logRedeemed</text>
</g>
<!-- DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.logRedeemed -->
<g id="edge206" class="edge"><title>DepositRedemption.provideRedemptionProof&#45;&gt;DepositUtils.Deposit.logRedeemed</title>
<path fill="none" stroke="white" stroke-width="2" d="M1060.48,-2665.68C1075.35,-2670.49 1089.07,-2678.14 1099.31,-2690 1145.77,-2743.78 1078.95,-3276.92 1127.31,-3329 1242.96,-3453.56 1390.36,-3250.45 1507.08,-3374 1577.1,-3448.12 1466.89,-3756.19 1535.08,-3832 1558.44,-3857.97 1596.67,-3865.15 1629.95,-3865.63"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1630.11,-3869.13 1640.1,-3865.58 1630.08,-3862.13 1630.11,-3869.13"/>
</g>
<!-- _output.slice -->
<g id="node436" class="node"><title>_output.slice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-1004" rx="27" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1000.3" font-family="Times New Roman,serif" font-size="14.00">slice</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_output.slice -->
<g id="edge212" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_output.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.68,-2538.66C1418.5,-2521.97 1478.28,-2491.4 1507.08,-2442 1554.05,-2361.42 1501.85,-1690.15 1535.08,-1603 1614.87,-1393.72 1729.82,-1399.77 1857.85,-1216 1902.34,-1152.14 1945.61,-1071.04 1966.6,-1030.13"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1969.78,-1031.59 1971.21,-1021.09 1963.54,-1028.41 1969.78,-1031.59"/>
</g>
<!-- _output.extractValue -->
<g id="node437" class="node"><title>_output.extractValue</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-896" rx="55.7903" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-892.3" font-family="Times New Roman,serif" font-size="14.00">extractValue</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_output.extractValue -->
<g id="edge213" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_output.extractValue</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.81,-2538.74C1418.71,-2522.1 1478.54,-2491.55 1507.08,-2442 1575.08,-2323.92 1459.32,-1329.25 1535.08,-1216 1622.22,-1085.74 1761.65,-1197.73 1857.85,-1074 1899.61,-1020.29 1837.58,-973.614 1883.05,-923 1891.82,-913.237 1903.8,-906.881 1916.34,-902.773"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1917.32,-906.133 1925.99,-900.05 1915.42,-899.396 1917.32,-906.133"/>
</g>
<!-- _txInputVector.validateVin -->
<g id="node440" class="node"><title>_txInputVector.validateVin</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-396" rx="50.8918" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-392.3" font-family="Times New Roman,serif" font-size="14.00">validateVin</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_txInputVector.validateVin -->
<g id="edge207" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_txInputVector.validateVin</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.92,-2538.8C1418.89,-2522.2 1478.76,-2491.68 1507.08,-2442 1562.62,-2344.54 1462.05,-508.148 1535.08,-423 1560.01,-393.934 1603.53,-388.086 1638.96,-389.014"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.04,-392.521 1649.18,-389.47 1639.35,-385.528 1639.04,-392.521"/>
</g>
<!-- _txInputVector.slice -->
<g id="node441" class="node"><title>_txInputVector.slice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-450" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-446.3" font-family="Times New Roman,serif" font-size="14.00">slice</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_txInputVector.slice -->
<g id="edge209" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_txInputVector.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.92,-2538.8C1418.88,-2522.19 1478.75,-2491.67 1507.08,-2442 1560.45,-2348.42 1471.34,-589.858 1535.08,-503 1563.54,-464.207 1621.4,-453.369 1659.29,-450.588"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.62,-454.074 1669.4,-450 1659.21,-447.086 1659.62,-454.074"/>
</g>
<!-- _txOutputVector.validateVout -->
<g id="node442" class="node"><title>_txOutputVector.validateVout</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-705" rx="55.7903" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-701.3" font-family="Times New Roman,serif" font-size="14.00">validateVout</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_txOutputVector.validateVout -->
<g id="edge208" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_txOutputVector.validateVout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.89,-2538.78C1418.84,-2522.17 1478.7,-2491.64 1507.08,-2442 1554.15,-2359.66 1469.74,-803.753 1535.08,-735 1585.73,-681.698 1806.28,-691.007 1916.53,-699.338"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1916.28,-702.829 1926.52,-700.113 1916.82,-695.85 1916.28,-702.829"/>
</g>
<!-- _txOutputVector.slice -->
<g id="node443" class="node"><title>_txOutputVector.slice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-759" rx="27" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-755.3" font-family="Times New Roman,serif" font-size="14.00">slice</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_txOutputVector.slice -->
<g id="edge211" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_txOutputVector.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.89,-2538.78C1418.83,-2522.17 1478.69,-2491.64 1507.08,-2442 1553.06,-2361.6 1470.21,-841.12 1535.08,-775 1591.2,-717.796 1848.41,-742.804 1943.91,-754.34"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1943.6,-757.828 1953.95,-755.576 1944.46,-750.88 1943.6,-757.828"/>
</g>
<!-- _input.extractOutpoint -->
<g id="node445" class="node"><title>_input.extractOutpoint</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-533" rx="67.6881" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-529.3" font-family="Times New Roman,serif" font-size="14.00">extractOutpoint</text>
</g>
<!-- DepositRedemption.redemptionTransactionChecks&#45;&gt;_input.extractOutpoint -->
<g id="edge210" class="edge"><title>DepositRedemption.redemptionTransactionChecks&#45;&gt;_input.extractOutpoint</title>
<path fill="none" stroke="white" stroke-width="2" d="M1374.91,-2538.79C1418.87,-2522.19 1478.73,-2491.66 1507.08,-2442 1558.19,-2352.44 1474.04,-669.121 1535.08,-586 1554.81,-559.125 1588.65,-545.668 1620.18,-539.011"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1621.14,-542.39 1630.31,-537.08 1619.83,-535.513 1621.14,-542.39"/>
</g>
<!-- DepositRedemption.notifySignatureTimeout -->
<g id="node100" class="node"><title>DepositRedemption.notifySignatureTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-2717" rx="95.5831" ry="18"/>
<text text-anchor="middle" x="618.75" y="-2713.3" font-family="Times New Roman,serif" font-size="14.00">notifySignatureTimeout</text>
</g>
<!-- TBTCConstants.getSignatureTimeout -->
<g id="node230" class="node"><title>TBTCConstants.getSignatureTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-350" rx="85.2851" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-346.3" font-family="Times New Roman,serif" font-size="14.00">getSignatureTimeout</text>
</g>
<!-- DepositRedemption.notifySignatureTimeout&#45;&gt;TBTCConstants.getSignatureTimeout -->
<g id="edge215" class="edge"><title>DepositRedemption.notifySignatureTimeout&#45;&gt;TBTCConstants.getSignatureTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M711.81,-2721.2C739.347,-2717.85 767.59,-2709.16 787.935,-2690 819.49,-2660.29 1094.69,-1195.54 1127.31,-1167 1207.14,-1097.16 2005.34,-1161.87 2078.43,-1085 2132.67,-1027.95 2052.19,-436.582 2103.63,-377 2117.31,-361.162 2136.96,-352.63 2157.46,-348.372"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2158.32,-351.775 2167.57,-346.611 2157.12,-344.879 2158.32,-351.775"/>
</g>
<!-- DepositRedemption.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalSignature -->
<g id="edge214" class="edge"><title>DepositRedemption.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M706,-2709.6C736.356,-2711.86 767.875,-2720.69 787.935,-2744 826.094,-2788.34 769.571,-4805.83 807.935,-4850 850.878,-4899.44 1035.22,-4880.56 1099.31,-4894 1283.02,-4932.52 1377.12,-4868.55 1507.08,-5004 1546.19,-5044.77 1494.04,-5089.17 1535.08,-5128 1543.89,-5136.34 1554.26,-5142.64 1565.42,-5147.35"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1564.38,-5150.7 1574.97,-5150.94 1566.84,-5144.14 1564.38,-5150.7"/>
</g>
<!-- DepositUtils.Deposit.startLiquidation -->
<g id="node421" class="node"><title>DepositUtils.Deposit.startLiquidation</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-5101" rx="67.6881" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-5097.3" font-family="Times New Roman,serif" font-size="14.00">startLiquidation</text>
</g>
<!-- DepositRedemption.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.startLiquidation -->
<g id="edge216" class="edge"><title>DepositRedemption.notifySignatureTimeout&#45;&gt;DepositUtils.Deposit.startLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M705.998,-2709.6C736.354,-2711.86 767.873,-2720.69 787.935,-2744 825.464,-2787.61 768.56,-4773.06 807.935,-4815 914.554,-4928.57 1393.62,-4759.26 1507.08,-4866 1575.02,-4929.92 1470.22,-5006.96 1535.08,-5074 1557.3,-5096.97 1591.24,-5104.91 1622.17,-5106.61"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1622.42,-5110.12 1632.53,-5106.96 1622.65,-5103.13 1622.42,-5110.12"/>
</g>
<!-- DepositRedemption.notifyRedemptionProofTimeout -->
<g id="node101" class="node"><title>DepositRedemption.notifyRedemptionProofTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-2663" rx="127.277" ry="18"/>
<text text-anchor="middle" x="618.75" y="-2659.3" font-family="Times New Roman,serif" font-size="14.00">notifyRedemptionProofTimeout</text>
</g>
<!-- TBTCConstants.getRedemptionProofTimeout -->
<g id="node231" class="node"><title>TBTCConstants.getRedemptionProofTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-296" rx="116.979" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-292.3" font-family="Times New Roman,serif" font-size="14.00">getRedemptionProofTimeout</text>
</g>
<!-- DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;TBTCConstants.getRedemptionProofTimeout -->
<g id="edge218" class="edge"><title>DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;TBTCConstants.getRedemptionProofTimeout</title>
<path fill="none" stroke="white" stroke-width="2" d="M746.229,-2662.67C762.2,-2657.31 776.812,-2648.86 787.935,-2636 838.02,-2578.09 764.914,-1321.33 807.935,-1258 894.239,-1130.95 977.817,-1161.24 1127.31,-1126 1153.09,-1119.92 2060.11,-1076.13 2078.43,-1057 2134.89,-998.082 2050.34,-384.801 2103.63,-323 2110.42,-315.129 2118.68,-309.061 2127.8,-304.426"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2129.46,-307.519 2137.17,-300.255 2126.61,-301.124 2129.46,-307.519"/>
</g>
<!-- DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalProof -->
<g id="edge217" class="edge"><title>DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.inAwaitingWithdrawalProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M746.409,-2663.67C762.251,-2669.02 776.778,-2677.36 787.935,-2690 808.908,-2713.75 800.264,-3229.26 807.935,-3260 986.342,-3974.95 944.82,-4308.89 1535.08,-4750 1547.6,-4759.36 1562.21,-4765.93 1577.42,-4770.49"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1576.92,-4773.98 1587.48,-4773.2 1578.74,-4767.22 1576.92,-4773.98"/>
</g>
<!-- DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.startLiquidation -->
<g id="edge219" class="edge"><title>DepositRedemption.notifyRedemptionProofTimeout&#45;&gt;DepositUtils.Deposit.startLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M746.185,-2663.37C762.163,-2668.73 776.788,-2677.16 787.935,-2690 807.843,-2712.93 801.621,-3753.3 807.935,-3783 883.616,-4138.98 903.799,-4249.79 1127.31,-4537 1257.41,-4704.17 1402.38,-4640.85 1507.08,-4825 1534.6,-4873.41 1496.8,-5033.56 1535.08,-5074 1557.24,-5097.41 1591.52,-5105.31 1622.71,-5106.88"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1622.61,-5110.38 1632.71,-5107.18 1622.82,-5103.38 1622.61,-5110.38"/>
</g>
<!-- DepositStates.inFunding -->
<g id="node103" class="node"><title>DepositStates.inFunding</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-14160" rx="46.5926" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14156.3" font-family="Times New Roman,serif" font-size="14.00">inFunding</text>
</g>
<!-- DepositStates.inSignerLiquidation -->
<g id="node104" class="node"><title>DepositStates.inSignerLiquidation</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-14106" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14102.3" font-family="Times New Roman,serif" font-size="14.00">inSignerLiquidation</text>
</g>
<!-- DepositStates.inRedemption -->
<g id="node105" class="node"><title>DepositStates.inRedemption</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-14052" rx="61.99" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14048.3" font-family="Times New Roman,serif" font-size="14.00">inRedemption</text>
</g>
<!-- DepositStates.inEndState -->
<g id="node106" class="node"><title>DepositStates.inEndState</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-13998" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13994.3" font-family="Times New Roman,serif" font-size="14.00">inEndState</text>
</g>
<!-- DepositStates.inRedeemableState -->
<g id="node107" class="node"><title>DepositStates.inRedeemableState</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-13944" rx="79.0865" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13940.3" font-family="Times New Roman,serif" font-size="14.00">inRedeemableState</text>
</g>
<!-- DepositStates.inStart -->
<g id="node108" class="node"><title>DepositStates.inStart</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-13890" rx="34.394" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13886.3" font-family="Times New Roman,serif" font-size="14.00">inStart</text>
</g>
<!-- DepositStates.inAwaitingSignerSetup -->
<g id="node109" class="node"><title>DepositStates.inAwaitingSignerSetup</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13836" rx="92.8835" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13832.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingSignerSetup</text>
</g>
<!-- DepositStates.inAwaitingBTCFundingProof -->
<g id="node110" class="node"><title>DepositStates.inAwaitingBTCFundingProof</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13782" rx="117.779" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13778.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingBTCFundingProof</text>
</g>
<!-- DepositStates.inFailedSetup -->
<g id="node111" class="node"><title>DepositStates.inFailedSetup</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13728" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13724.3" font-family="Times New Roman,serif" font-size="14.00">inFailedSetup</text>
</g>
<!-- DepositStates.inActive -->
<g id="node112" class="node"><title>DepositStates.inActive</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13674" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13670.3" font-family="Times New Roman,serif" font-size="14.00">inActive</text>
</g>
<!-- DepositStates.inAwaitingWithdrawalSignature -->
<g id="node113" class="node"><title>DepositStates.inAwaitingWithdrawalSignature</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13620" rx="124.278" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13616.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingWithdrawalSignature</text>
</g>
<!-- DepositStates.inAwaitingWithdrawalProof -->
<g id="node114" class="node"><title>DepositStates.inAwaitingWithdrawalProof</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13566" rx="111.28" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13562.3" font-family="Times New Roman,serif" font-size="14.00">inAwaitingWithdrawalProof</text>
</g>
<!-- DepositStates.inRedeemed -->
<g id="node115" class="node"><title>DepositStates.inRedeemed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13512" rx="55.7903" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13508.3" font-family="Times New Roman,serif" font-size="14.00">inRedeemed</text>
</g>
<!-- DepositStates.inCourtesyCall -->
<g id="node116" class="node"><title>DepositStates.inCourtesyCall</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13458" rx="64.189" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13454.3" font-family="Times New Roman,serif" font-size="14.00">inCourtesyCall</text>
</g>
<!-- DepositStates.inFraudLiquidationInProgress -->
<g id="node117" class="node"><title>DepositStates.inFraudLiquidationInProgress</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13404" rx="118.879" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13400.3" font-family="Times New Roman,serif" font-size="14.00">inFraudLiquidationInProgress</text>
</g>
<!-- DepositStates.inLiquidationInProgress -->
<g id="node118" class="node"><title>DepositStates.inLiquidationInProgress</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13350" rx="97.4827" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13346.3" font-family="Times New Roman,serif" font-size="14.00">inLiquidationInProgress</text>
</g>
<!-- DepositStates.inLiquidated -->
<g id="node119" class="node"><title>DepositStates.inLiquidated</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13296" rx="55.7903" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13292.3" font-family="Times New Roman,serif" font-size="14.00">inLiquidated</text>
</g>
<!-- DepositStates.setAwaitingSignerSetup -->
<g id="node120" class="node"><title>DepositStates.setAwaitingSignerSetup</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13242" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13238.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingSignerSetup</text>
</g>
<!-- DepositStates.setAwaitingBTCFundingProof -->
<g id="node121" class="node"><title>DepositStates.setAwaitingBTCFundingProof</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13188" rx="121.578" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13184.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingBTCFundingProof</text>
</g>
<!-- DepositStates.setFailedSetup -->
<g id="node122" class="node"><title>DepositStates.setFailedSetup</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13134" rx="63.8893" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13130.3" font-family="Times New Roman,serif" font-size="14.00">setFailedSetup</text>
</g>
<!-- DepositStates.setActive -->
<g id="node123" class="node"><title>DepositStates.setActive</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13080" rx="44.393" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13076.3" font-family="Times New Roman,serif" font-size="14.00">setActive</text>
</g>
<!-- DepositStates.setAwaitingWithdrawalSignature -->
<g id="node124" class="node"><title>DepositStates.setAwaitingWithdrawalSignature</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-13026" rx="128.077" ry="18"/>
<text text-anchor="middle" x="218.782" y="-13022.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingWithdrawalSignature</text>
</g>
<!-- DepositStates.setAwaitingWithdrawalProof -->
<g id="node125" class="node"><title>DepositStates.setAwaitingWithdrawalProof</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12972" rx="115.08" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12968.3" font-family="Times New Roman,serif" font-size="14.00">setAwaitingWithdrawalProof</text>
</g>
<!-- DepositStates.setRedeemed -->
<g id="node126" class="node"><title>DepositStates.setRedeemed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12918" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12914.3" font-family="Times New Roman,serif" font-size="14.00">setRedeemed</text>
</g>
<!-- DepositStates.setCourtesyCall -->
<g id="node127" class="node"><title>DepositStates.setCourtesyCall</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12864" rx="68.4888" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12860.3" font-family="Times New Roman,serif" font-size="14.00">setCourtesyCall</text>
</g>
<!-- DepositStates.setFraudLiquidationInProgress -->
<g id="node128" class="node"><title>DepositStates.setFraudLiquidationInProgress</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12810" rx="122.678" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12806.3" font-family="Times New Roman,serif" font-size="14.00">setFraudLiquidationInProgress</text>
</g>
<!-- DepositStates.setLiquidationInProgress -->
<g id="node129" class="node"><title>DepositStates.setLiquidationInProgress</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12756" rx="101.282" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12752.3" font-family="Times New Roman,serif" font-size="14.00">setLiquidationInProgress</text>
</g>
<!-- DepositStates.setLiquidated -->
<g id="node130" class="node"><title>DepositStates.setLiquidated</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12702" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12698.3" font-family="Times New Roman,serif" font-size="14.00">setLiquidated</text>
</g>
<!-- DepositUtils.closeKeep -->
<g id="node132" class="node"><title>DepositUtils.closeKeep</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-1795" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1791.3" font-family="Times New Roman,serif" font-size="14.00">closeKeep</text>
</g>
<!-- DepositUtils.IBondedECDSAKeep -->
<g id="node163" class="node"><title>DepositUtils.IBondedECDSAKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-1687" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-1683.3" font-family="Times New Roman,serif" font-size="14.00">IBondedECDSAKeep</text>
</g>
<!-- DepositUtils.closeKeep&#45;&gt;DepositUtils.IBondedECDSAKeep -->
<g id="edge220" class="edge"><title>DepositUtils.closeKeep&#45;&gt;DepositUtils.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1368.66,-1799.4C1408.88,-1800.78 1466.78,-1796.69 1507.08,-1768 1529.1,-1752.32 1513.23,-1729.92 1535.08,-1714 1552.51,-1701.3 1573.83,-1693.77 1595.15,-1689.46"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1596.04,-1692.86 1605.27,-1687.65 1594.81,-1685.97 1596.04,-1692.86"/>
</g>
<!-- IBondedECDSAKeep.closeKeep -->
<g id="node427" class="node"><title>IBondedECDSAKeep.closeKeep</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-859" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-855.3" font-family="Times New Roman,serif" font-size="14.00">closeKeep</text>
</g>
<!-- DepositUtils.closeKeep&#45;&gt;IBondedECDSAKeep.closeKeep -->
<g id="edge221" class="edge"><title>DepositUtils.closeKeep&#45;&gt;IBondedECDSAKeep.closeKeep</title>
<path fill="none" stroke="white" stroke-width="2" d="M1365.31,-1802.7C1408.14,-1807.6 1472.3,-1806.96 1507.08,-1768 1572.37,-1694.86 1470.58,-959.851 1535.08,-886 1560.6,-856.771 1604.95,-851.143 1640.55,-852.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1640.65,-855.709 1650.81,-852.693 1640.99,-848.717 1640.65,-855.709"/>
</g>
<!-- DepositUtils.currentBlockDifficulty -->
<g id="node133" class="node"><title>DepositUtils.currentBlockDifficulty</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1716" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1712.3" font-family="Times New Roman,serif" font-size="14.00">currentBlockDifficulty</text>
</g>
<!-- DepositUtils.previousBlockDifficulty -->
<g id="node134" class="node"><title>DepositUtils.previousBlockDifficulty</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1770" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1766.3" font-family="Times New Roman,serif" font-size="14.00">previousBlockDifficulty</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty -->
<g id="node135" class="node"><title>DepositUtils.evaluateProofDifficulty</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1980.74" cy="-1743" rx="94.4839" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1739.3" font-family="Times New Roman,serif" font-size="14.00">evaluateProofDifficulty</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;DepositUtils.currentBlockDifficulty -->
<g id="edge222" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;DepositUtils.currentBlockDifficulty</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M2064.53,-1734.68C2094.59,-1731.66 2128.7,-1728.23 2159.42,-1725.14"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2160.1,-1728.59 2169.7,-1724.11 2159.4,-1721.63 2160.1,-1728.59"/>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;DepositUtils.previousBlockDifficulty -->
<g id="edge223" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;DepositUtils.previousBlockDifficulty</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M2064.53,-1751.32C2093.34,-1754.22 2125.88,-1757.49 2155.58,-1760.47"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2155.24,-1763.96 2165.54,-1761.47 2155.94,-1756.99 2155.24,-1763.96"/>
</g>
<!-- TBTCConstants.getTxProofDifficultyFactor -->
<g id="node232" class="node"><title>TBTCConstants.getTxProofDifficultyFactor</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-782" rx="110.48" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-778.3" font-family="Times New Roman,serif" font-size="14.00">getTxProofDifficultyFactor</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;TBTCConstants.getTxProofDifficultyFactor -->
<g id="edge230" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;TBTCConstants.getTxProofDifficultyFactor</title>
<path fill="none" stroke="white" stroke-width="2" d="M2057.46,-1732.5C2065.55,-1728.5 2072.85,-1723.14 2078.43,-1716 2140.5,-1636.55 2038.05,-885.567 2103.63,-809 2111.53,-799.779 2121.46,-793.029 2132.4,-788.155"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2133.77,-791.38 2141.82,-784.489 2131.23,-784.857 2133.77,-791.38"/>
</g>
<!-- _bitcoinHeaders.extractTarget -->
<g id="node446" class="node"><title>_bitcoinHeaders.extractTarget</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1027" rx="58.4896" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1023.3" font-family="Times New Roman,serif" font-size="14.00">extractTarget</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;_bitcoinHeaders.extractTarget -->
<g id="edge224" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;_bitcoinHeaders.extractTarget</title>
<path fill="none" stroke="white" stroke-width="2" d="M2057.38,-1732.43C2065.49,-1728.44 2072.81,-1723.11 2078.43,-1716 2122.3,-1660.52 2061.86,-1137.07 2103.63,-1080 2122.54,-1054.18 2155.24,-1040.9 2184.99,-1034.09"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2185.86,-1037.48 2194.94,-1032.02 2184.44,-1030.63 2185.86,-1037.48"/>
</g>
<!-- _bitcoinHeaders.validateHeaderChain -->
<g id="node447" class="node"><title>_bitcoinHeaders.validateHeaderChain</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-973" rx="85.2851" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-969.3" font-family="Times New Roman,serif" font-size="14.00">validateHeaderChain</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;_bitcoinHeaders.validateHeaderChain -->
<g id="edge225" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;_bitcoinHeaders.validateHeaderChain</title>
<path fill="none" stroke="white" stroke-width="2" d="M2057.41,-1732.46C2065.51,-1728.46 2072.83,-1723.12 2078.43,-1716 2127.67,-1653.45 2051.62,-1060.27 2103.63,-1000 2117.3,-984.159 2136.96,-975.627 2157.46,-971.368"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2158.32,-974.771 2167.57,-969.607 2157.12,-967.875 2158.32,-974.771"/>
</g>
<!-- ValidateSPV.getErrBadLength -->
<g id="node449" class="node"><title>ValidateSPV.getErrBadLength</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1550" rx="72.2875" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1546.3" font-family="Times New Roman,serif" font-size="14.00">getErrBadLength</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrBadLength -->
<g id="edge226" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrBadLength</title>
<path fill="none" stroke="white" stroke-width="2" d="M2055.24,-1731.85C2063.91,-1727.98 2071.96,-1722.83 2078.43,-1716 2113.84,-1678.67 2069.63,-1641.62 2103.63,-1603 2122.6,-1581.45 2151.01,-1568.66 2177.8,-1561.07"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2178.79,-1564.43 2187.57,-1558.5 2177.01,-1557.66 2178.79,-1564.43"/>
</g>
<!-- ValidateSPV.getErrInvalidChain -->
<g id="node450" class="node"><title>ValidateSPV.getErrInvalidChain</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1496" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1492.3" font-family="Times New Roman,serif" font-size="14.00">getErrInvalidChain</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrInvalidChain -->
<g id="edge227" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrInvalidChain</title>
<path fill="none" stroke="white" stroke-width="2" d="M2056.3,-1732.16C2064.69,-1728.23 2072.38,-1722.98 2078.43,-1716 2135.09,-1650.63 2044.08,-1585.74 2103.63,-1523 2119.4,-1506.39 2141.78,-1498.03 2164.32,-1494.21"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2164.91,-1497.66 2174.32,-1492.8 2163.93,-1490.73 2164.91,-1497.66"/>
</g>
<!-- ValidateSPV.getErrLowWork -->
<g id="node451" class="node"><title>ValidateSPV.getErrLowWork</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1442" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1438.3" font-family="Times New Roman,serif" font-size="14.00">getErrLowWork</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrLowWork -->
<g id="edge228" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;ValidateSPV.getErrLowWork</title>
<path fill="none" stroke="white" stroke-width="2" d="M2056.96,-1732.09C2065.14,-1728.16 2072.59,-1722.93 2078.43,-1716 2113.98,-1673.8 2066.22,-1509.55 2103.63,-1469 2121.23,-1449.93 2147.54,-1441.65 2173.03,-1438.63"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2173.49,-1442.11 2183.12,-1437.7 2172.84,-1435.14 2173.49,-1442.11"/>
</g>
<!-- _reqDiff.mul -->
<g id="node452" class="node"><title>_reqDiff.mul</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1359" rx="27" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1355.3" font-family="Times New Roman,serif" font-size="14.00">mul</text>
</g>
<!-- DepositUtils.evaluateProofDifficulty&#45;&gt;_reqDiff.mul -->
<g id="edge229" class="edge"><title>DepositUtils.evaluateProofDifficulty&#45;&gt;_reqDiff.mul</title>
<path fill="none" stroke="white" stroke-width="2" d="M2057.09,-1732.2C2065.24,-1728.25 2072.66,-1722.99 2078.43,-1716 2121.61,-1663.75 2062.42,-1465.82 2103.63,-1412 2129.75,-1377.89 2179.82,-1365.7 2214.15,-1361.37"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2214.69,-1364.83 2224.25,-1360.26 2213.93,-1357.87 2214.69,-1364.83"/>
</g>
<!-- DepositUtils.checkProofFromTxId -->
<g id="node136" class="node"><title>DepositUtils.checkProofFromTxId</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1696.46" cy="-1795" rx="90.9839" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-1791.3" font-family="Times New Roman,serif" font-size="14.00">checkProofFromTxId</text>
</g>
<!-- DepositUtils.checkProofFromTxId&#45;&gt;DepositUtils.evaluateProofDifficulty -->
<g id="edge233" class="edge"><title>DepositUtils.checkProofFromTxId&#45;&gt;DepositUtils.evaluateProofDifficulty</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1767.82,-1783.71C1795.87,-1779.07 1828.43,-1773.49 1857.85,-1768 1873.77,-1765.03 1890.81,-1761.66 1906.96,-1758.37"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1907.78,-1761.77 1916.88,-1756.34 1906.38,-1754.91 1907.78,-1761.77"/>
</g>
<!-- _bitcoinHeaders.extractMerkleRootLE -->
<g id="node448" class="node"><title>_bitcoinHeaders.extractMerkleRootLE</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-919" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-915.3" font-family="Times New Roman,serif" font-size="14.00">extractMerkleRootLE</text>
</g>
<!-- DepositUtils.checkProofFromTxId&#45;&gt;_bitcoinHeaders.extractMerkleRootLE -->
<g id="edge232" class="edge"><title>DepositUtils.checkProofFromTxId&#45;&gt;_bitcoinHeaders.extractMerkleRootLE</title>
<path fill="none" stroke="white" stroke-width="2" d="M1785.18,-1799.07C1811.75,-1795.79 1838.88,-1787.17 1857.85,-1768 1908.48,-1716.83 1845.98,-1669.71 1883.05,-1608 1939.01,-1514.85 2027.55,-1557.02 2078.43,-1461 2105.26,-1410.38 2065.91,-989.114 2103.63,-946 2116.42,-931.392 2134.29,-923.023 2153.18,-918.491"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2154.03,-921.89 2163.12,-916.459 2152.63,-915.032 2154.03,-921.89"/>
</g>
<!-- _txId.prove -->
<g id="node453" class="node"><title>_txId.prove</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-1408" rx="31.6951" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1404.3" font-family="Times New Roman,serif" font-size="14.00">prove</text>
</g>
<!-- DepositUtils.checkProofFromTxId&#45;&gt;_txId.prove -->
<g id="edge231" class="edge"><title>DepositUtils.checkProofFromTxId&#45;&gt;_txId.prove</title>
<path fill="none" stroke="white" stroke-width="2" d="M1783.94,-1800.13C1811.24,-1797.11 1839.13,-1788.38 1857.85,-1768 1904.16,-1717.59 1845.79,-1518.42 1883.05,-1461 1896.45,-1440.34 1920.8,-1427.07 1941.71,-1418.97"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1943.1,-1422.18 1951.32,-1415.5 1940.73,-1415.6 1943.1,-1422.18"/>
</g>
<!-- DepositUtils.findAndParseFundingOutput -->
<g id="node137" class="node"><title>DepositUtils.findAndParseFundingOutput</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1696.46" cy="-1741" rx="115.88" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-1737.3" font-family="Times New Roman,serif" font-size="14.00">findAndParseFundingOutput</text>
</g>
<!-- DepositUtils.signerPKH -->
<g id="node146" class="node"><title>DepositUtils.signerPKH</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-1635" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1631.3" font-family="Times New Roman,serif" font-size="14.00">signerPKH</text>
</g>
<!-- DepositUtils.findAndParseFundingOutput&#45;&gt;DepositUtils.signerPKH -->
<g id="edge236" class="edge"><title>DepositUtils.findAndParseFundingOutput&#45;&gt;DepositUtils.signerPKH</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1808.8,-1736.4C1826.4,-1731.83 1843.5,-1724.75 1857.85,-1714 1878.4,-1698.6 1863.34,-1678.46 1883.05,-1662 1894.14,-1652.74 1908.18,-1646.64 1922.1,-1642.64"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1923.35,-1645.93 1932.18,-1640.07 1921.62,-1639.15 1923.35,-1645.93"/>
</g>
<!-- DepositUtils.findAndParseFundingOutput&#45;&gt;_output.extractHash -->
<g id="edge235" class="edge"><title>DepositUtils.findAndParseFundingOutput&#45;&gt;_output.extractHash</title>
<path fill="none" stroke="white" stroke-width="2" d="M1812.3,-1741.28C1829.72,-1736.22 1845.85,-1727.7 1857.85,-1714 1911.82,-1652.35 1832.4,-1041.41 1883.05,-977 1891.63,-966.085 1904.24,-959.349 1917.53,-955.248"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1918.49,-958.615 1927.28,-952.705 1916.72,-951.841 1918.49,-958.615"/>
</g>
<!-- DepositUtils.findAndParseFundingOutput&#45;&gt;_output.slice -->
<g id="edge237" class="edge"><title>DepositUtils.findAndParseFundingOutput&#45;&gt;_output.slice</title>
<path fill="none" stroke="white" stroke-width="2" d="M1812.41,-1740.9C1829.71,-1735.85 1845.77,-1727.44 1857.85,-1714 1889.02,-1679.31 1874.22,-1340.8 1883.05,-1295 1902.42,-1194.54 1947.2,-1080.91 1968.32,-1030.5"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1971.55,-1031.86 1972.22,-1021.29 1965.1,-1029.14 1971.55,-1031.86"/>
</g>
<!-- _txOutputVector.extractOutputAtIndex -->
<g id="node444" class="node"><title>_txOutputVector.extractOutputAtIndex</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-813" rx="89.8845" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-809.3" font-family="Times New Roman,serif" font-size="14.00">extractOutputAtIndex</text>
</g>
<!-- DepositUtils.findAndParseFundingOutput&#45;&gt;_txOutputVector.extractOutputAtIndex -->
<g id="edge234" class="edge"><title>DepositUtils.findAndParseFundingOutput&#45;&gt;_txOutputVector.extractOutputAtIndex</title>
<path fill="none" stroke="white" stroke-width="2" d="M1812.35,-1741.33C1829.77,-1736.26 1845.88,-1727.73 1857.85,-1714 1919.78,-1642.94 1833.82,-946.384 1883.05,-866 1891.99,-851.4 1906.49,-840.532 1921.57,-832.571"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1923.53,-835.509 1930.98,-827.982 1920.46,-829.216 1923.53,-835.509"/>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof -->
<g id="node138" class="node"><title>DepositUtils.validateAndParseFundingSPVProof</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2173" rx="141.875" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2169.3" font-family="Times New Roman,serif" font-size="14.00">validateAndParseFundingSPVProof</text>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.bytes8LEToUint -->
<g id="edge241" class="edge"><title>DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.bytes8LEToUint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1460.22,-2176.58C1477.18,-2181.63 1493.35,-2189.12 1507.08,-2200 1533.66,-2221.07 1512.83,-2245.39 1535.08,-2271 1564.34,-2304.69 1609.29,-2328.67 1644.16,-2343.53"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1643.13,-2346.89 1653.71,-2347.48 1645.81,-2340.42 1643.13,-2346.89"/>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.checkProofFromTxId -->
<g id="edge242" class="edge"><title>DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.checkProofFromTxId</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1458.95,-2168.5C1476.2,-2163.61 1492.79,-2156.41 1507.08,-2146 1529.89,-2129.38 1522.09,-2114.06 1535.08,-2089 1586.57,-1989.61 1651.32,-1873.44 1680.27,-1821.94"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1683.39,-1823.52 1685.24,-1813.09 1677.29,-1820.09 1683.39,-1823.52"/>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.findAndParseFundingOutput -->
<g id="edge240" class="edge"><title>DepositUtils.validateAndParseFundingSPVProof&#45;&gt;DepositUtils.findAndParseFundingOutput</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1463.11,-2173.2C1479.73,-2167.59 1495.03,-2158.94 1507.08,-2146 1564.48,-2084.36 1478.35,-1830.26 1535.08,-1768 1544.97,-1757.15 1557.46,-1749.59 1571.08,-1744.44"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1572.3,-1747.72 1580.68,-1741.24 1570.08,-1741.08 1572.3,-1747.72"/>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof&#45;&gt;_txInputVector.validateVin -->
<g id="edge238" class="edge"><title>DepositUtils.validateAndParseFundingSPVProof&#45;&gt;_txInputVector.validateVin</title>
<path fill="none" stroke="white" stroke-width="2" d="M1462.91,-2174.14C1479.77,-2168.45 1495.19,-2159.52 1507.08,-2146 1570.28,-2074.09 1472.66,-495.593 1535.08,-423 1559.96,-394.061 1603.27,-388.153 1638.62,-389.024"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1638.69,-392.53 1648.83,-389.465 1638.99,-385.537 1638.69,-392.53"/>
</g>
<!-- DepositUtils.validateAndParseFundingSPVProof&#45;&gt;_txOutputVector.validateVout -->
<g id="edge239" class="edge"><title>DepositUtils.validateAndParseFundingSPVProof&#45;&gt;_txOutputVector.validateVout</title>
<path fill="none" stroke="white" stroke-width="2" d="M1462.91,-2174.15C1479.78,-2168.46 1495.2,-2159.53 1507.08,-2146 1572.35,-2071.69 1464.6,-435.382 1535.08,-366 1560.64,-340.841 1828.51,-345.372 1857.85,-366 1961.56,-438.923 1977.46,-608.922 1979.58,-676.531"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1976.09,-676.92 1979.82,-686.836 1983.08,-676.758 1976.09,-676.92"/>
</g>
<!-- DepositUtils.remainingTerm -->
<g id="node139" class="node"><title>DepositUtils.remainingTerm</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1980.74" cy="-1689" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1685.3" font-family="Times New Roman,serif" font-size="14.00">remainingTerm</text>
</g>
<!-- DepositUtils.remainingTerm&#45;&gt;TBTCConstants.getDepositTerm -->
<g id="edge243" class="edge"><title>DepositUtils.remainingTerm&#45;&gt;TBTCConstants.getDepositTerm</title>
<path fill="none" stroke="white" stroke-width="2" d="M2043.34,-1684C2056.87,-1679.91 2069.74,-1673.13 2078.43,-1662 2140.5,-1582.55 2038.05,-831.567 2103.63,-755 2121.04,-734.678 2148.29,-726.36 2174.61,-723.668"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2174.93,-727.154 2184.63,-722.898 2174.39,-720.175 2174.93,-727.154"/>
</g>
<!-- endOfTerm.sub -->
<g id="node454" class="node"><title>endOfTerm.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1276" rx="27" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1272.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositUtils.remainingTerm&#45;&gt;endOfTerm.sub -->
<g id="edge244" class="edge"><title>DepositUtils.remainingTerm&#45;&gt;endOfTerm.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M2042.97,-1683.7C2056.51,-1679.63 2069.48,-1672.91 2078.43,-1662 2125.5,-1604.62 2058.73,-1388.08 2103.63,-1329 2129.63,-1294.8 2179.73,-1282.63 2214.09,-1278.33"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2214.65,-1281.79 2224.21,-1277.23 2213.89,-1274.83 2214.65,-1281.79"/>
</g>
<!-- DepositUtils.auctionValue -->
<g id="node140" class="node"><title>DepositUtils.auctionValue</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-1687" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1683.3" font-family="Times New Roman,serif" font-size="14.00">auctionValue</text>
</g>
<!-- DepositUtils.getAuctionBasePercentage -->
<g id="node154" class="node"><title>DepositUtils.getAuctionBasePercentage</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-1633" rx="107.482" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-1629.3" font-family="Times New Roman,serif" font-size="14.00">getAuctionBasePercentage</text>
</g>
<!-- DepositUtils.auctionValue&#45;&gt;DepositUtils.getAuctionBasePercentage -->
<g id="edge246" class="edge"><title>DepositUtils.auctionValue&#45;&gt;DepositUtils.getAuctionBasePercentage</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1374.1,-1679.49C1433.6,-1670.88 1532.22,-1656.62 1604.55,-1646.15"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1605.17,-1649.6 1614.57,-1644.7 1604.17,-1642.67 1605.17,-1649.6"/>
</g>
<!-- TBTCConstants.getAuctionDuration -->
<g id="node233" class="node"><title>TBTCConstants.getAuctionDuration</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-566" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-562.3" font-family="Times New Roman,serif" font-size="14.00">getAuctionDuration</text>
</g>
<!-- DepositUtils.auctionValue&#45;&gt;TBTCConstants.getAuctionDuration -->
<g id="edge245" class="edge"><title>DepositUtils.auctionValue&#45;&gt;TBTCConstants.getAuctionDuration</title>
<path fill="none" stroke="white" stroke-width="2" d="M1378.47,-1684.1C1417.89,-1682.99 1469.95,-1677.43 1507.08,-1651 1529.1,-1635.32 1518.27,-1618.18 1535.08,-1597 1652.41,-1449.15 1730.07,-1459.92 1857.85,-1321 1870.83,-1306.89 1867.42,-1297.1 1883.05,-1286 1956.9,-1233.54 2022.85,-1299.52 2078.43,-1228 2122.38,-1171.46 2056.74,-638.121 2103.63,-584 2123.51,-561.059 2155.94,-553.463 2185.26,-552.834"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2185.46,-556.335 2195.47,-552.888 2185.49,-549.335 2185.46,-556.335"/>
</g>
<!-- DepositUtils.auctionValue&#45;&gt;TBTCConstants.getAuctionDuration -->
<g id="edge247" class="edge"><title>DepositUtils.auctionValue&#45;&gt;TBTCConstants.getAuctionDuration</title>
<path fill="none" stroke="white" stroke-width="2" d="M1366.3,-1698.29C1406.6,-1701.93 1465.99,-1698.26 1507.08,-1669 1529.1,-1653.32 1518.27,-1636.18 1535.08,-1615 1652.41,-1467.15 1730.07,-1477.92 1857.85,-1339 1870.83,-1324.89 1867.42,-1315.1 1883.05,-1304 1956.9,-1251.54 2022.85,-1317.52 2078.43,-1246 2122.38,-1189.46 2056.74,-656.121 2103.63,-602 2118.48,-584.862 2140.34,-576.287 2162.67,-572.064"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2163.28,-575.511 2172.59,-570.462 2162.16,-568.601 2163.28,-575.511"/>
</g>
<!-- _basePercentage.add -->
<g id="node455" class="node"><title>_basePercentage.add</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-283" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-279.3" font-family="Times New Roman,serif" font-size="14.00">add</text>
</g>
<!-- DepositUtils.auctionValue&#45;&gt;_basePercentage.add -->
<g id="edge248" class="edge"><title>DepositUtils.auctionValue&#45;&gt;_basePercentage.add</title>
<path fill="none" stroke="white" stroke-width="2" d="M1372.36,-1695.51C1414.99,-1699.56 1474.33,-1697.08 1507.08,-1660 1555.78,-1604.86 1491.35,-395.17 1535.08,-336 1563.67,-297.303 1621.5,-286.438 1659.34,-283.625"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.66,-287.112 1669.44,-283.028 1659.25,-280.124 1659.66,-287.112"/>
</g>
<!-- _available.mul -->
<g id="node456" class="node"><title>_available.mul</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-200" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-196.3" font-family="Times New Roman,serif" font-size="14.00">mul</text>
</g>
<!-- DepositUtils.auctionValue&#45;&gt;_available.mul -->
<g id="edge249" class="edge"><title>DepositUtils.auctionValue&#45;&gt;_available.mul</title>
<path fill="none" stroke="white" stroke-width="2" d="M1372.37,-1695.52C1415.01,-1699.58 1474.35,-1697.1 1507.08,-1660 1558.8,-1601.37 1488.65,-315.907 1535.08,-253 1563.65,-214.285 1621.48,-203.425 1659.33,-200.618"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.65,-204.105 1669.43,-200.023 1659.24,-197.117 1659.65,-204.105"/>
</g>
<!-- DepositUtils.lotSizeTbtc -->
<g id="node141" class="node"><title>DepositUtils.lotSizeTbtc</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-2244" rx="52.7911" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-2240.3" font-family="Times New Roman,serif" font-size="14.00">lotSizeTbtc</text>
</g>
<!-- TBTCConstants.getSatoshiMultiplier -->
<g id="node234" class="node"><title>TBTCConstants.getSatoshiMultiplier</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-836" rx="82.5854" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-832.3" font-family="Times New Roman,serif" font-size="14.00">getSatoshiMultiplier</text>
</g>
<!-- DepositUtils.lotSizeTbtc&#45;&gt;TBTCConstants.getSatoshiMultiplier -->
<g id="edge250" class="edge"><title>DepositUtils.lotSizeTbtc&#45;&gt;TBTCConstants.getSatoshiMultiplier</title>
<path fill="none" stroke="white" stroke-width="2" d="M2242.48,-2225.92C2213.42,-2165.67 2121.32,-1965.44 2091.03,-1788 2082.71,-1739.26 2068.41,-941.964 2091.03,-898 2105.57,-869.744 2135.76,-854.267 2166.05,-845.827"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2167.05,-849.186 2175.87,-843.327 2165.32,-842.402 2167.05,-849.186"/>
</g>
<!-- DepositUtils.signerFee -->
<g id="node142" class="node"><title>DepositUtils.signerFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1980.74" cy="-2244" rx="45.4919" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-2240.3" font-family="Times New Roman,serif" font-size="14.00">signerFee</text>
</g>
<!-- DepositUtils.signerFee&#45;&gt;DepositUtils.lotSizeTbtc -->
<g id="edge251" class="edge"><title>DepositUtils.signerFee&#45;&gt;DepositUtils.lotSizeTbtc</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M2026.4,-2244C2070.69,-2244 2138.92,-2244 2188.44,-2244"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2188.71,-2247.5 2198.71,-2244 2188.71,-2240.5 2188.71,-2247.5"/>
</g>
<!-- DepositUtils.determineCompressionPrefix -->
<g id="node143" class="node"><title>DepositUtils.determineCompressionPrefix</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2543.45" cy="-1635" rx="116.18" ry="18"/>
<text text-anchor="middle" x="2543.45" y="-1631.3" font-family="Times New Roman,serif" font-size="14.00">determineCompressionPrefix</text>
</g>
<!-- DepositUtils.compressPubkey -->
<g id="node144" class="node"><title>DepositUtils.compressPubkey</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-1635" rx="73.387" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1631.3" font-family="Times New Roman,serif" font-size="14.00">compressPubkey</text>
</g>
<!-- DepositUtils.compressPubkey&#45;&gt;DepositUtils.determineCompressionPrefix -->
<g id="edge252" class="edge"><title>DepositUtils.compressPubkey&#45;&gt;DepositUtils.determineCompressionPrefix</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M2324.82,-1635C2352.68,-1635 2385.36,-1635 2416.8,-1635"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2416.96,-1638.5 2426.96,-1635 2416.96,-1631.5 2416.96,-1638.5"/>
</g>
<!-- DepositUtils.signerPubkey -->
<g id="node145" class="node"><title>DepositUtils.signerPubkey</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2227" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2223.3" font-family="Times New Roman,serif" font-size="14.00">signerPubkey</text>
</g>
<!-- DepositUtils.signerPKH&#45;&gt;DepositUtils.compressPubkey -->
<g id="edge253" class="edge"><title>DepositUtils.signerPKH&#45;&gt;DepositUtils.compressPubkey</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M2031.01,-1635C2069.16,-1635 2122.87,-1635 2167.59,-1635"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2167.86,-1638.5 2177.86,-1635 2167.86,-1631.5 2167.86,-1638.5"/>
</g>
<!-- _pubkey.hash160 -->
<g id="node457" class="node"><title>_pubkey.hash160</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1193" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1189.3" font-family="Times New Roman,serif" font-size="14.00">hash160</text>
</g>
<!-- DepositUtils.signerPKH&#45;&gt;_pubkey.hash160 -->
<g id="edge254" class="edge"><title>DepositUtils.signerPKH&#45;&gt;_pubkey.hash160</title>
<path fill="none" stroke="white" stroke-width="2" d="M2029.32,-1630.46C2047.5,-1626.2 2066.66,-1618.15 2078.43,-1603 2127.25,-1540.21 2055.67,-1309.44 2103.63,-1246 2126.5,-1215.75 2168.25,-1202.73 2201.39,-1197.15"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2202,-1200.6 2211.36,-1195.65 2200.95,-1193.68 2202,-1200.6"/>
</g>
<!-- _digest.toAddress -->
<g id="node458" class="node"><title>_digest.toAddress</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="2251.37" cy="-1110" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-1106.3" font-family="Times New Roman,serif" font-size="14.00">toAddress</text>
</g>
<!-- DepositUtils.signerPKH&#45;&gt;_digest.toAddress -->
<g id="edge255" class="edge"><title>DepositUtils.signerPKH&#45;&gt;_digest.toAddress</title>
<path fill="none" stroke="white" stroke-width="2" d="M2029.42,-1630.53C2047.61,-1626.29 2066.76,-1618.22 2078.43,-1603 2138.03,-1525.28 2045.09,-1241.51 2103.63,-1163 2124.53,-1134.98 2161.64,-1121.74 2193.31,-1115.5"/>
<polygon fill="white" stroke="white" stroke-width="2" points="2194.14,-1118.91 2203.37,-1113.71 2192.91,-1112.02 2194.14,-1118.91"/>
</g>
<!-- DepositUtils.utxoSize -->
<g id="node147" class="node"><title>DepositUtils.utxoSize</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2335" rx="42.4939" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2331.3" font-family="Times New Roman,serif" font-size="14.00">utxoSize</text>
</g>
<!-- DepositUtils.utxoSize&#45;&gt;DepositUtils.bytes8LEToUint -->
<g id="edge256" class="edge"><title>DepositUtils.utxoSize&#45;&gt;DepositUtils.bytes8LEToUint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1363.21,-2337.97C1424.2,-2342.38 1539.91,-2350.75 1617.38,-2356.35"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1617.35,-2359.86 1627.58,-2357.09 1617.85,-2352.88 1617.35,-2359.86"/>
</g>
<!-- DepositUtils.fetchBitcoinPrice -->
<g id="node148" class="node"><title>DepositUtils.fetchBitcoinPrice</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2119" rx="73.387" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2115.3" font-family="Times New Roman,serif" font-size="14.00">fetchBitcoinPrice</text>
</g>
<!-- DepositUtils.fetchBondAmount -->
<g id="node149" class="node"><title>DepositUtils.fetchBondAmount</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-1903" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1899.3" font-family="Times New Roman,serif" font-size="14.00">fetchBondAmount</text>
</g>
<!-- DepositUtils.fetchBondAmount&#45;&gt;DepositUtils.IBondedECDSAKeep -->
<g id="edge257" class="edge"><title>DepositUtils.fetchBondAmount&#45;&gt;DepositUtils.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1390.97,-1911.21C1430.03,-1911.88 1476.99,-1905.31 1507.08,-1876 1559.41,-1825.01 1483.3,-1765.55 1535.08,-1714 1551.71,-1697.44 1574.45,-1688.79 1597.58,-1684.65"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1598.14,-1688.11 1607.5,-1683.15 1597.09,-1681.19 1598.14,-1688.11"/>
</g>
<!-- IBondedECDSAKeep.checkBondAmount -->
<g id="node428" class="node"><title>IBondedECDSAKeep.checkBondAmount</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-913" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-909.3" font-family="Times New Roman,serif" font-size="14.00">checkBondAmount</text>
</g>
<!-- DepositUtils.fetchBondAmount&#45;&gt;IBondedECDSAKeep.checkBondAmount -->
<g id="edge258" class="edge"><title>DepositUtils.fetchBondAmount&#45;&gt;IBondedECDSAKeep.checkBondAmount</title>
<path fill="none" stroke="white" stroke-width="2" d="M1387.53,-1912.52C1428.12,-1914.42 1477.94,-1908.7 1507.08,-1876 1576.3,-1798.32 1466.71,-1018.43 1535.08,-940 1553.75,-918.579 1582.53,-909.827 1610.58,-907.094"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1611.14,-910.563 1620.86,-906.348 1610.64,-903.581 1611.14,-910.563"/>
</g>
<!-- DepositUtils.wasDigestApprovedForSigning -->
<g id="node150" class="node"><title>DepositUtils.wasDigestApprovedForSigning</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-2011" rx="124.578" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2007.3" font-family="Times New Roman,serif" font-size="14.00">wasDigestApprovedForSigning</text>
</g>
<!-- DepositUtils.feeRebateTokenHolder -->
<g id="node151" class="node"><title>DepositUtils.feeRebateTokenHolder</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-2190" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-2186.3" font-family="Times New Roman,serif" font-size="14.00">feeRebateTokenHolder</text>
</g>
<!-- DepositUtils.depositOwner -->
<g id="node152" class="node"><title>DepositUtils.depositOwner</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-2116" rx="61.99" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2112.3" font-family="Times New Roman,serif" font-size="14.00">depositOwner</text>
</g>
<!-- DepositUtils.redemptionTeardown -->
<g id="node153" class="node"><title>DepositUtils.redemptionTeardown</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-1957" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1953.3" font-family="Times New Roman,serif" font-size="14.00">redemptionTeardown</text>
</g>
<!-- DepositUtils.seizeSignerBonds -->
<g id="node155" class="node"><title>DepositUtils.seizeSignerBonds</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-1633" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1629.3" font-family="Times New Roman,serif" font-size="14.00">seizeSignerBonds</text>
</g>
<!-- DepositUtils.seizeSignerBonds&#45;&gt;DepositUtils.IBondedECDSAKeep -->
<g id="edge259" class="edge"><title>DepositUtils.seizeSignerBonds&#45;&gt;DepositUtils.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1386.36,-1642.28C1448.81,-1651.32 1544.03,-1665.09 1612.27,-1674.96"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1612.16,-1678.48 1622.56,-1676.45 1613.16,-1671.56 1612.16,-1678.48"/>
</g>
<!-- IBondedECDSAKeep.seizeSignerBonds -->
<g id="node429" class="node"><title>IBondedECDSAKeep.seizeSignerBonds</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-805" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-801.3" font-family="Times New Roman,serif" font-size="14.00">seizeSignerBonds</text>
</g>
<!-- DepositUtils.seizeSignerBonds&#45;&gt;IBondedECDSAKeep.seizeSignerBonds -->
<g id="edge260" class="edge"><title>DepositUtils.seizeSignerBonds&#45;&gt;IBondedECDSAKeep.seizeSignerBonds</title>
<path fill="none" stroke="white" stroke-width="2" d="M1388.5,-1641.31C1428.94,-1642.36 1478.24,-1635.67 1507.08,-1603 1563.8,-1538.73 1478.54,-896.438 1535.08,-832 1555.07,-809.212 1586.5,-800.789 1616.26,-798.69"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1616.45,-802.185 1626.27,-798.209 1616.12,-795.193 1616.45,-802.185"/>
</g>
<!-- _postCallBalance.sub -->
<g id="node459" class="node"><title>_postCallBalance.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-117" rx="27" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-113.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositUtils.seizeSignerBonds&#45;&gt;_postCallBalance.sub -->
<g id="edge261" class="edge"><title>DepositUtils.seizeSignerBonds&#45;&gt;_postCallBalance.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1387.78,-1641.45C1428.46,-1642.68 1478.31,-1636.16 1507.08,-1603 1559.27,-1542.86 1487.81,-234.077 1535.08,-170 1563.64,-131.28 1621.47,-120.422 1659.32,-117.616"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1659.65,-121.103 1669.43,-117.022 1659.24,-114.115 1659.65,-121.103"/>
</g>
<!-- DepositUtils.enableWithdrawal -->
<g id="node156" class="node"><title>DepositUtils.enableWithdrawal</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-1849" rx="75.2868" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1845.3" font-family="Times New Roman,serif" font-size="14.00">enableWithdrawal</text>
</g>
<!-- DepositUtils.withdrawFunds -->
<g id="node157" class="node"><title>DepositUtils.withdrawFunds</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2389" rx="66.8882" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2385.3" font-family="Times New Roman,serif" font-size="14.00">withdrawFunds</text>
</g>
<!-- DepositUtils.withdrawFunds&#45;&gt;DepositUtils.Deposit.inEndState -->
<g id="edge262" class="edge"><title>DepositUtils.withdrawFunds&#45;&gt;DepositUtils.Deposit.inEndState</title>
<path fill="none" stroke="white" stroke-width="2" d="M1358.93,-2403.9C1403.1,-2424.04 1475.26,-2464.52 1507.08,-2525 1552.36,-2611.09 1471.08,-3326.74 1535.08,-3400 1560.27,-3428.84 1603.78,-3434.7 1639.13,-3433.84"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1639.49,-3437.32 1649.33,-3433.4 1639.19,-3430.33 1639.49,-3437.32"/>
</g>
<!-- DepositUtils.getWithdrawAllowance -->
<g id="node158" class="node"><title>DepositUtils.getWithdrawAllowance</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-1741" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1737.3" font-family="Times New Roman,serif" font-size="14.00">getWithdrawAllowance</text>
</g>
<!-- DepositUtils.distributeFeeRebate -->
<g id="node159" class="node"><title>DepositUtils.distributeFeeRebate</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1696.46" cy="-2244" rx="83.3857" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2240.3" font-family="Times New Roman,serif" font-size="14.00">distributeFeeRebate</text>
</g>
<!-- DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.signerFee -->
<g id="edge264" class="edge"><title>DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.signerFee</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1774.97,-2237.9C1823.22,-2236.84 1884.02,-2237.07 1926.79,-2238.59"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1926.85,-2242.1 1936.98,-2239 1927.13,-2235.1 1926.85,-2242.1"/>
</g>
<!-- DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.signerFee -->
<g id="edge265" class="edge"><title>DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.signerFee</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1774.97,-2250.1C1823.22,-2251.16 1884.02,-2250.93 1926.79,-2249.41"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1927.13,-2252.9 1936.98,-2249 1926.85,-2245.9 1927.13,-2252.9"/>
</g>
<!-- DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.feeRebateTokenHolder -->
<g id="edge263" class="edge"><title>DepositUtils.distributeFeeRebate&#45;&gt;DepositUtils.feeRebateTokenHolder</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1764.32,-2233.53C1793.15,-2228.81 1827.22,-2222.97 1857.85,-2217 1874.83,-2213.69 1893.08,-2209.82 1910.15,-2206.06"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1911.04,-2209.45 1920.04,-2203.86 1909.52,-2202.61 1911.04,-2209.45"/>
</g>
<!-- DepositUtils.pushFundsToKeepGroup -->
<g id="node160" class="node"><title>DepositUtils.pushFundsToKeepGroup</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2065" rx="104.782" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2061.3" font-family="Times New Roman,serif" font-size="14.00">pushFundsToKeepGroup</text>
</g>
<!-- DepositUtils.pushFundsToKeepGroup&#45;&gt;DepositUtils.IBondedECDSAKeep -->
<g id="edge266" class="edge"><title>DepositUtils.pushFundsToKeepGroup&#45;&gt;DepositUtils.IBondedECDSAKeep</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1412.5,-2073.9C1446.72,-2072.2 1483.16,-2063.37 1507.08,-2038 1556.65,-1985.42 1486.08,-1767.12 1535.08,-1714 1551.57,-1696.12 1575.12,-1687.22 1599.11,-1683.28"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1599.6,-1686.74 1609.04,-1681.92 1598.65,-1679.81 1599.6,-1686.74"/>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement -->
<g id="node161" class="node"><title>DepositUtils.getOwnerRedemptionTbtcRequirement</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1696.46" cy="-2190" rx="153.273" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-2186.3" font-family="Times New Roman,serif" font-size="14.00">getOwnerRedemptionTbtcRequirement</text>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.remainingTerm -->
<g id="edge269" class="edge"><title>DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.remainingTerm</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1827.26,-2180.45C1838.85,-2175.05 1849.38,-2167.75 1857.85,-2158 1922.38,-2083.74 1821.36,-1792.64 1883.05,-1716 1889.76,-1707.67 1898.81,-1701.78 1908.69,-1697.64"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1910.13,-1700.84 1918.37,-1694.18 1907.78,-1694.25 1910.13,-1700.84"/>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.signerFee -->
<g id="edge267" class="edge"><title>DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.signerFee</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1788.37,-2204.47C1811.1,-2208.32 1835.4,-2212.63 1857.85,-2217 1882.11,-2221.73 1908.94,-2227.6 1931.24,-2232.66"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1930.62,-2236.11 1941.15,-2234.92 1932.18,-2229.28 1930.62,-2236.11"/>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.feeRebateTokenHolder -->
<g id="edge270" class="edge"><title>DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.feeRebateTokenHolder</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1850.17,-2190C1858.76,-2190 1867.29,-2190 1875.63,-2190"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1875.71,-2193.5 1885.71,-2190 1875.71,-2186.5 1875.71,-2193.5"/>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.inCourtesyCall -->
<g id="edge268" class="edge"><title>DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.inCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1552.21,-2196.33C1539.31,-2203.06 1528.38,-2212.63 1521.08,-2226 1506.85,-2252.05 1506.85,-4336.95 1521.08,-4363 1540.99,-4399.47 1587.92,-4407.67 1628.23,-4407.18"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1628.43,-4410.67 1638.32,-4406.88 1628.22,-4403.68 1628.43,-4410.67"/>
</g>
<!-- fee.sub -->
<g id="node460" class="node"><title>fee.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1980.74" cy="-1325" rx="27" ry="18"/>
<text text-anchor="middle" x="1980.74" y="-1321.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;fee.sub -->
<g id="edge271" class="edge"><title>DepositUtils.getOwnerRedemptionTbtcRequirement&#45;&gt;fee.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M1807.5,-2177.5C1827.02,-2170.3 1845.14,-2159.4 1857.85,-2143 1909.95,-2075.78 1838.51,-1450.45 1883.05,-1378 1896.79,-1355.65 1923.52,-1342.05 1945.4,-1334.22"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1946.65,-1337.49 1955.04,-1331.03 1944.45,-1330.85 1946.65,-1337.49"/>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement -->
<g id="node162" class="node"><title>DepositUtils.getRedemptionTbtcRequirement</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="1321.19" cy="-2281" rx="129.177" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-2277.3" font-family="Times New Roman,serif" font-size="14.00">getRedemptionTbtcRequirement</text>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.remainingTerm -->
<g id="edge275" class="edge"><title>DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.remainingTerm</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1450.64,-2281.25C1471.27,-2276.22 1491.07,-2267.72 1507.08,-2254 1539.2,-2226.46 1501.83,-2189.18 1535.08,-2163 1591.54,-2118.54 1807.11,-2193.89 1857.85,-2143 1924.96,-2075.69 1823.37,-1789.99 1883.05,-1716 1889.77,-1707.67 1898.82,-1701.79 1908.71,-1697.65"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1910.15,-1700.85 1918.39,-1694.2 1907.79,-1694.26 1910.15,-1700.85"/>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.lotSizeTbtc -->
<g id="edge276" class="edge"><title>DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.lotSizeTbtc</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1447.91,-2284.8C1598.19,-2288.08 1857.16,-2289.74 2078.43,-2271 2117.72,-2267.67 2161.64,-2260.72 2195.25,-2254.71"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="2196.12,-2258.1 2205.33,-2252.87 2194.87,-2251.22 2196.12,-2258.1"/>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.depositOwner -->
<g id="edge273" class="edge"><title>DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.depositOwner</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1450.63,-2281.9C1471.38,-2276.83 1491.23,-2268.15 1507.08,-2254 1543.43,-2221.55 1499.58,-2181.38 1535.08,-2148 1558.97,-2125.53 1593.95,-2116.82 1625.15,-2114.03"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1625.4,-2117.52 1635.13,-2113.33 1624.9,-2110.54 1625.4,-2117.52"/>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.getOwnerRedemptionTbtcRequirement -->
<g id="edge274" class="edge"><title>DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.getOwnerRedemptionTbtcRequirement</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1446.58,-2276.36C1467.75,-2271.86 1488.79,-2264.81 1507.08,-2254 1524.83,-2243.5 1517.44,-2227.69 1535.08,-2217 1543.68,-2211.79 1552.99,-2207.5 1562.66,-2203.99"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1564.04,-2207.21 1572.42,-2200.72 1561.83,-2200.57 1564.04,-2207.21"/>
</g>
<!-- DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.inCourtesyCall -->
<g id="edge272" class="edge"><title>DepositUtils.getRedemptionTbtcRequirement&#45;&gt;DepositUtils.Deposit.inCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M1441.38,-2274.32C1466.42,-2278.91 1490.29,-2288.85 1507.08,-2308 1582.67,-2394.24 1460.43,-4284.94 1535.08,-4372 1557.23,-4397.84 1594.08,-4405.33 1626.87,-4406.02"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1626.89,-4409.52 1636.9,-4406.04 1626.9,-4402.52 1626.89,-4409.52"/>
</g>
<!-- OutsourceDepositLogging.logCreated -->
<g id="node164" class="node"><title>OutsourceDepositLogging.logCreated</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12511" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12507.3" font-family="Times New Roman,serif" font-size="14.00">logCreated</text>
</g>
<!-- OutsourceDepositLogging.logCreated&#45;&gt;DepositLog.logCreated -->
<g id="edge277" class="edge"><title>OutsourceDepositLogging.logCreated&#45;&gt;DepositLog.logCreated</title>
<path fill="none" stroke="white" stroke-width="2" d="M268.98,-12511C342.221,-12511 479.726,-12511 558.43,-12511"/>
<polygon fill="white" stroke="white" stroke-width="2" points="558.664,-12514.5 568.664,-12511 558.664,-12507.5 558.664,-12514.5"/>
</g>
<!-- OutsourceDepositLogging.logRedemptionRequested -->
<g id="node165" class="node"><title>OutsourceDepositLogging.logRedemptionRequested</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-12457" rx="104.782" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12453.3" font-family="Times New Roman,serif" font-size="14.00">logRedemptionRequested</text>
</g>
<!-- OutsourceDepositLogging.logRedemptionRequested&#45;&gt;DepositLog.logRedemptionRequested -->
<g id="edge278" class="edge"><title>OutsourceDepositLogging.logRedemptionRequested&#45;&gt;DepositLog.logRedemptionRequested</title>
<path fill="none" stroke="white" stroke-width="2" d="M323.564,-12457C378.856,-12457 446.98,-12457 503.743,-12457"/>
<polygon fill="white" stroke="white" stroke-width="2" points="503.84,-12460.5 513.84,-12457 503.84,-12453.5 503.84,-12460.5"/>
</g>
<!-- OutsourceDepositLogging.logGotRedemptionSignature -->
<g id="node166" class="node"><title>OutsourceDepositLogging.logGotRedemptionSignature</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12403" rx="114.28" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12399.3" font-family="Times New Roman,serif" font-size="14.00">logGotRedemptionSignature</text>
</g>
<!-- OutsourceDepositLogging.logGotRedemptionSignature&#45;&gt;DepositLog.logGotRedemptionSignature -->
<g id="edge279" class="edge"><title>OutsourceDepositLogging.logGotRedemptionSignature&#45;&gt;DepositLog.logGotRedemptionSignature</title>
<path fill="none" stroke="white" stroke-width="2" d="M333.291,-12403C383.475,-12403 442.616,-12403 493.935,-12403"/>
<polygon fill="white" stroke="white" stroke-width="2" points="494.09,-12406.5 504.09,-12403 494.09,-12399.5 494.09,-12406.5"/>
</g>
<!-- OutsourceDepositLogging.logRegisteredPubkey -->
<g id="node167" class="node"><title>OutsourceDepositLogging.logRegisteredPubkey</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12349" rx="87.9851" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12345.3" font-family="Times New Roman,serif" font-size="14.00">logRegisteredPubkey</text>
</g>
<!-- OutsourceDepositLogging.logRegisteredPubkey&#45;&gt;DepositLog.logRegisteredPubkey -->
<g id="edge280" class="edge"><title>OutsourceDepositLogging.logRegisteredPubkey&#45;&gt;DepositLog.logRegisteredPubkey</title>
<path fill="none" stroke="white" stroke-width="2" d="M306.626,-12349C369.691,-12349 455.07,-12349 520.435,-12349"/>
<polygon fill="white" stroke="white" stroke-width="2" points="520.748,-12352.5 530.748,-12349 520.748,-12345.5 520.748,-12352.5"/>
</g>
<!-- OutsourceDepositLogging.logSetupFailed -->
<g id="node168" class="node"><title>OutsourceDepositLogging.logSetupFailed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12295" rx="64.9885" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12291.3" font-family="Times New Roman,serif" font-size="14.00">logSetupFailed</text>
</g>
<!-- OutsourceDepositLogging.logSetupFailed&#45;&gt;DepositLog.logSetupFailed -->
<g id="edge281" class="edge"><title>OutsourceDepositLogging.logSetupFailed&#45;&gt;DepositLog.logSetupFailed</title>
<path fill="none" stroke="white" stroke-width="2" d="M284.165,-12295C354.97,-12295 468.581,-12295 543.198,-12295"/>
<polygon fill="white" stroke="white" stroke-width="2" points="543.46,-12298.5 553.46,-12295 543.46,-12291.5 543.46,-12298.5"/>
</g>
<!-- OutsourceDepositLogging.logFunderRequestedAbort -->
<g id="node169" class="node"><title>OutsourceDepositLogging.logFunderRequestedAbort</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-12241" rx="107.781" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12237.3" font-family="Times New Roman,serif" font-size="14.00">logFunderRequestedAbort</text>
</g>
<!-- OutsourceDepositLogging.logFunderRequestedAbort&#45;&gt;DepositLog.logFunderRequestedAbort -->
<g id="edge282" class="edge"><title>OutsourceDepositLogging.logFunderRequestedAbort&#45;&gt;DepositLog.logFunderRequestedAbort</title>
<path fill="none" stroke="white" stroke-width="2" d="M326.692,-12241C380.335,-12241 445.431,-12241 500.447,-12241"/>
<polygon fill="white" stroke="white" stroke-width="2" points="500.597,-12244.5 510.597,-12241 500.597,-12237.5 500.597,-12244.5"/>
</g>
<!-- OutsourceDepositLogging.logFraudDuringSetup -->
<g id="node170" class="node"><title>OutsourceDepositLogging.logFraudDuringSetup</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12187" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12183.3" font-family="Times New Roman,serif" font-size="14.00">logFraudDuringSetup</text>
</g>
<!-- OutsourceDepositLogging.logFraudDuringSetup&#45;&gt;DepositLog.logFraudDuringSetup -->
<g id="edge283" class="edge"><title>OutsourceDepositLogging.logFraudDuringSetup&#45;&gt;DepositLog.logFraudDuringSetup</title>
<path fill="none" stroke="white" stroke-width="2" d="M308.104,-12187C370.705,-12187 454.732,-12187 519.458,-12187"/>
<polygon fill="white" stroke="white" stroke-width="2" points="519.675,-12190.5 529.675,-12187 519.675,-12183.5 519.675,-12190.5"/>
</g>
<!-- OutsourceDepositLogging.logFunded -->
<g id="node171" class="node"><title>OutsourceDepositLogging.logFunded</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12133" rx="50.0912" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12129.3" font-family="Times New Roman,serif" font-size="14.00">logFunded</text>
</g>
<!-- OutsourceDepositLogging.logFunded&#45;&gt;DepositLog.logFunded -->
<g id="edge284" class="edge"><title>OutsourceDepositLogging.logFunded&#45;&gt;DepositLog.logFunded</title>
<path fill="none" stroke="white" stroke-width="2" d="M268.98,-12133C342.221,-12133 479.726,-12133 558.43,-12133"/>
<polygon fill="white" stroke="white" stroke-width="2" points="558.664,-12136.5 568.664,-12133 558.664,-12129.5 558.664,-12136.5"/>
</g>
<!-- OutsourceDepositLogging.logCourtesyCalled -->
<g id="node172" class="node"><title>OutsourceDepositLogging.logCourtesyCalled</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12079" rx="77.9862" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12075.3" font-family="Times New Roman,serif" font-size="14.00">logCourtesyCalled</text>
</g>
<!-- OutsourceDepositLogging.logCourtesyCalled&#45;&gt;DepositLog.logCourtesyCalled -->
<g id="edge285" class="edge"><title>OutsourceDepositLogging.logCourtesyCalled&#45;&gt;DepositLog.logCourtesyCalled</title>
<path fill="none" stroke="white" stroke-width="2" d="M296.986,-12079C363.881,-12079 460.612,-12079 530.337,-12079"/>
<polygon fill="white" stroke="white" stroke-width="2" points="530.422,-12082.5 540.422,-12079 530.422,-12075.5 530.422,-12082.5"/>
</g>
<!-- OutsourceDepositLogging.logStartedLiquidation -->
<g id="node173" class="node"><title>OutsourceDepositLogging.logStartedLiquidation</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12025" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12021.3" font-family="Times New Roman,serif" font-size="14.00">logStartedLiquidation</text>
</g>
<!-- OutsourceDepositLogging.logStartedLiquidation&#45;&gt;DepositLog.logStartedLiquidation -->
<g id="edge286" class="edge"><title>OutsourceDepositLogging.logStartedLiquidation&#45;&gt;DepositLog.logStartedLiquidation</title>
<path fill="none" stroke="white" stroke-width="2" d="M308.104,-12025C370.705,-12025 454.732,-12025 519.458,-12025"/>
<polygon fill="white" stroke="white" stroke-width="2" points="519.675,-12028.5 529.675,-12025 519.675,-12021.5 519.675,-12028.5"/>
</g>
<!-- OutsourceDepositLogging.logRedeemed -->
<g id="node174" class="node"><title>OutsourceDepositLogging.logRedeemed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11971" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11967.3" font-family="Times New Roman,serif" font-size="14.00">logRedeemed</text>
</g>
<!-- OutsourceDepositLogging.logRedeemed&#45;&gt;DepositLog.logRedeemed -->
<g id="edge287" class="edge"><title>OutsourceDepositLogging.logRedeemed&#45;&gt;DepositLog.logRedeemed</title>
<path fill="none" stroke="white" stroke-width="2" d="M279.362,-11971C351.12,-11971 471.486,-11971 547.645,-11971"/>
<polygon fill="white" stroke="white" stroke-width="2" points="548.088,-11974.5 558.088,-11971 548.088,-11967.5 548.088,-11974.5"/>
</g>
<!-- OutsourceDepositLogging.logLiquidated -->
<g id="node175" class="node"><title>OutsourceDepositLogging.logLiquidated</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12619" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12615.3" font-family="Times New Roman,serif" font-size="14.00">logLiquidated</text>
</g>
<!-- OutsourceDepositLogging.logLiquidated&#45;&gt;DepositLog.logLiquidated -->
<g id="edge288" class="edge"><title>OutsourceDepositLogging.logLiquidated&#45;&gt;DepositLog.logLiquidated</title>
<path fill="none" stroke="white" stroke-width="2" d="M279.362,-12619C351.12,-12619 471.486,-12619 547.645,-12619"/>
<polygon fill="white" stroke="white" stroke-width="2" points="548.088,-12622.5 558.088,-12619 548.088,-12615.5 548.088,-12622.5"/>
</g>
<!-- OutsourceDepositLogging.logExitedCourtesyCall -->
<g id="node176" class="node"><title>OutsourceDepositLogging.logExitedCourtesyCall</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-12565" rx="92.0841" ry="18"/>
<text text-anchor="middle" x="218.782" y="-12561.3" font-family="Times New Roman,serif" font-size="14.00">logExitedCourtesyCall</text>
</g>
<!-- OutsourceDepositLogging.logExitedCourtesyCall&#45;&gt;DepositLog.logExitedCourtesyCall -->
<g id="edge289" class="edge"><title>OutsourceDepositLogging.logExitedCourtesyCall&#45;&gt;DepositLog.logExitedCourtesyCall</title>
<path fill="none" stroke="white" stroke-width="2" d="M311.084,-12565C372.167,-12565 452.624,-12565 515.8,-12565"/>
<polygon fill="white" stroke="white" stroke-width="2" points="516.185,-12568.5 526.184,-12565 516.184,-12561.5 516.185,-12568.5"/>
</g>
<!-- ISatWeiPriceFeed.getPrice -->
<g id="node177" class="node"><title>ISatWeiPriceFeed.getPrice</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8711" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8707.3" font-family="Times New Roman,serif" font-size="14.00">getPrice</text>
</g>
<!-- ISatWeiPriceFeed.addEthBtcFeed -->
<g id="node178" class="node"><title>ISatWeiPriceFeed.addEthBtcFeed</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8657" rx="67.6881" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8653.3" font-family="Times New Roman,serif" font-size="14.00">addEthBtcFeed</text>
</g>
<!-- ITBTCSystem.fetchBitcoinPrice -->
<g id="node179" class="node"><title>ITBTCSystem.fetchBitcoinPrice</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14783" rx="73.387" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14779.3" font-family="Times New Roman,serif" font-size="14.00">fetchBitcoinPrice</text>
</g>
<!-- ITBTCSystem.fetchRelayCurrentDifficulty -->
<g id="node180" class="node"><title>ITBTCSystem.fetchRelayCurrentDifficulty</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14729" rx="110.48" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14725.3" font-family="Times New Roman,serif" font-size="14.00">fetchRelayCurrentDifficulty</text>
</g>
<!-- ITBTCSystem.fetchRelayPreviousDifficulty -->
<g id="node181" class="node"><title>ITBTCSystem.fetchRelayPreviousDifficulty</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14675" rx="114.28" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14671.3" font-family="Times New Roman,serif" font-size="14.00">fetchRelayPreviousDifficulty</text>
</g>
<!-- ITBTCSystem.getNewDepositFeeEstimate -->
<g id="node182" class="node"><title>ITBTCSystem.getNewDepositFeeEstimate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14621" rx="110.48" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14617.3" font-family="Times New Roman,serif" font-size="14.00">getNewDepositFeeEstimate</text>
</g>
<!-- ITBTCSystem.getAllowNewDeposits -->
<g id="node183" class="node"><title>ITBTCSystem.getAllowNewDeposits</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14567" rx="91.784" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14563.3" font-family="Times New Roman,serif" font-size="14.00">getAllowNewDeposits</text>
</g>
<!-- ITBTCSystem.isAllowedLotSize -->
<g id="node184" class="node"><title>ITBTCSystem.isAllowedLotSize</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14513" rx="74.9875" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14509.3" font-family="Times New Roman,serif" font-size="14.00">isAllowedLotSize</text>
</g>
<!-- ITBTCSystem.requestNewKeep -->
<g id="node185" class="node"><title>ITBTCSystem.requestNewKeep</title>
<ellipse fill="#ffbdb9" stroke="brown" stroke-width="3" cx="218.782" cy="-14459" rx="72.5877" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14455.3" font-family="Times New Roman,serif" font-size="14.00">requestNewKeep</text>
</g>
<!-- ITBTCSystem.getSignerFeeDivisor -->
<g id="node186" class="node"><title>ITBTCSystem.getSignerFeeDivisor</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14405" rx="83.6854" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14401.3" font-family="Times New Roman,serif" font-size="14.00">getSignerFeeDivisor</text>
</g>
<!-- ITBTCSystem.getInitialCollateralizedPercent -->
<g id="node187" class="node"><title>ITBTCSystem.getInitialCollateralizedPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14351" rx="116.979" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14347.3" font-family="Times New Roman,serif" font-size="14.00">getInitialCollateralizedPercent</text>
</g>
<!-- ITBTCSystem.getUndercollateralizedThresholdPercent -->
<g id="node188" class="node"><title>ITBTCSystem.getUndercollateralizedThresholdPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14297" rx="155.173" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14293.3" font-family="Times New Roman,serif" font-size="14.00">getUndercollateralizedThresholdPercent</text>
</g>
<!-- ITBTCSystem.getSeverelyUndercollateralizedThresholdPercent -->
<g id="node189" class="node"><title>ITBTCSystem.getSeverelyUndercollateralizedThresholdPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-14243" rx="185.767" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14239.3" font-family="Times New Roman,serif" font-size="14.00">getSeverelyUndercollateralizedThresholdPercent</text>
</g>
<!-- ITokenRecipient.receiveApproval -->
<g id="node190" class="node"><title>ITokenRecipient.receiveApproval</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11811" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11807.3" font-family="Times New Roman,serif" font-size="14.00">receiveApproval</text>
</g>
<!-- SatWeiPriceFeed.&lt;Constructor&gt; -->
<g id="node191" class="node"><title>SatWeiPriceFeed.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-8570" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-8566.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- SatWeiPriceFeed.initialize -->
<g id="node192" class="node"><title>SatWeiPriceFeed.initialize</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-8516" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="218.782" y="-8512.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- SatWeiPriceFeed.getPrice -->
<g id="node193" class="node"><title>SatWeiPriceFeed.getPrice</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-8462" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="218.782" y="-8458.3" font-family="Times New Roman,serif" font-size="14.00">getPrice</text>
</g>
<!-- SatWeiPriceFeed.getWorkingEthBtcFeed -->
<g id="node194" class="node"><title>SatWeiPriceFeed.getWorkingEthBtcFeed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-8408" rx="96.3833" ry="18"/>
<text text-anchor="middle" x="218.782" y="-8404.3" font-family="Times New Roman,serif" font-size="14.00">getWorkingEthBtcFeed</text>
</g>
<!-- SatWeiPriceFeed.addEthBtcFeed -->
<g id="node195" class="node"><title>SatWeiPriceFeed.addEthBtcFeed</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-8354" rx="67.6881" ry="18"/>
<text text-anchor="middle" x="218.782" y="-8350.3" font-family="Times New Roman,serif" font-size="14.00">addEthBtcFeed</text>
</g>
<!-- IMedianizer.peek -->
<g id="node336" class="node"><title>IMedianizer.peek</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="618.75" cy="-8354" rx="27.8951" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8350.3" font-family="Times New Roman,serif" font-size="14.00">peek</text>
</g>
<!-- SatWeiPriceFeed.addEthBtcFeed&#45;&gt;IMedianizer.peek -->
<g id="edge290" class="edge"><title>SatWeiPriceFeed.addEthBtcFeed&#45;&gt;IMedianizer.peek</title>
<path fill="none" stroke="white" stroke-width="2" d="M286.393,-8354C370.827,-8354 513.458,-8354 580.641,-8354"/>
<polygon fill="white" stroke="white" stroke-width="2" points="580.755,-8357.5 590.755,-8354 580.755,-8350.5 580.755,-8357.5"/>
</g>
<!-- SatWeiPriceFeed.onlyTbtcSystem -->
<g id="node196" class="node"><title>SatWeiPriceFeed.onlyTbtcSystem</title>
<polygon fill="#edad56" stroke="#1bc6a6" stroke-width="3" points="295.635,-8288.54 295.635,-8303.46 250.615,-8314 186.949,-8314 141.929,-8303.46 141.929,-8288.54 186.949,-8278 250.615,-8278 295.635,-8288.54"/>
<polygon fill="none" stroke="#1bc6a6" stroke-width="3" points="299.644,-8285.37 299.644,-8306.63 251.08,-8318 186.484,-8318 137.92,-8306.63 137.92,-8285.37 186.484,-8274 251.08,-8274 299.644,-8285.37"/>
<text text-anchor="middle" x="218.782" y="-8292.3" font-family="Times New Roman,serif" font-size="14.00">onlyTbtcSystem</text>
</g>
<!-- CloneFactory.createClone -->
<g id="node197" class="node"><title>CloneFactory.createClone</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="218.782" cy="-14920" rx="53.8905" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14916.3" font-family="Times New Roman,serif" font-size="14.00">createClone</text>
</g>
<!-- CloneFactory.isClone -->
<g id="node198" class="node"><title>CloneFactory.isClone</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="218.782" cy="-14866" rx="38.1938" ry="18"/>
<text text-anchor="middle" x="218.782" y="-14862.3" font-family="Times New Roman,serif" font-size="14.00">isClone</text>
</g>
<!-- FundingScript.&lt;Constructor&gt; -->
<g id="node199" class="node"><title>FundingScript.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9502" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9498.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- FundingScript.receiveApproval -->
<g id="node200" class="node"><title>FundingScript.receiveApproval</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9448" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9444.3" font-family="Times New Roman,serif" font-size="14.00">receiveApproval</text>
</g>
<!-- FeeRebateToken.transferFrom -->
<g id="node208" class="node"><title>FeeRebateToken.transferFrom</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-10655" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10651.3" font-family="Times New Roman,serif" font-size="14.00">transferFrom</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;FeeRebateToken.transferFrom -->
<g id="edge296" class="edge"><title>FundingScript.receiveApproval&#45;&gt;FeeRebateToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M279.849,-9439.05C348.822,-9428.79 453.123,-9413.33 457.564,-9413 604.004,-9402.28 643.179,-9388.4 787.935,-9413 797.22,-9414.58 798.927,-9417.25 807.935,-9420 935.951,-9459.03 1016.17,-9391.13 1099.31,-9496 1176.64,-9593.55 1047.29,-10520.6 1127.31,-10616 1158.01,-10652.6 1212.7,-10660.8 1256.02,-10660.8"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1256.26,-10664.3 1266.2,-10660.6 1256.15,-10657.3 1256.26,-10664.3"/>
</g>
<!-- TBTCDepositToken.transferFrom -->
<g id="node237" class="node"><title>TBTCDepositToken.transferFrom</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-12110" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-12106.3" font-family="Times New Roman,serif" font-size="14.00">transferFrom</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;TBTCDepositToken.transferFrom -->
<g id="edge291" class="edge"><title>FundingScript.receiveApproval&#45;&gt;TBTCDepositToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M276.801,-9437.67C323.118,-9432.92 386.34,-9435.38 421.564,-9475 506.692,-9570.76 368.528,-11688.9 457.564,-11781 507.176,-11832.3 1047.49,-11763.9 1099.31,-11813 1143.09,-11854.5 1085.43,-12039.6 1127.31,-12083 1160.78,-12117.7 1216.8,-12122.1 1259.86,-12119.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1260.27,-12122.7 1269.95,-12118.4 1259.7,-12115.7 1260.27,-12122.7"/>
</g>
<!-- TBTCDepositToken.approve -->
<g id="node238" class="node"><title>TBTCDepositToken.approve</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11894" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11890.3" font-family="Times New Roman,serif" font-size="14.00">approve</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;TBTCDepositToken.approve -->
<g id="edge292" class="edge"><title>FundingScript.receiveApproval&#45;&gt;TBTCDepositToken.approve</title>
<path fill="none" stroke="white" stroke-width="2" d="M288.118,-9445.05C329.12,-9446.12 381.007,-9452.66 421.564,-9475 443.397,-9487.02 435.603,-9506.21 457.564,-9518 522.654,-9552.94 737.977,-9500.58 787.935,-9555 816.761,-9586.4 801.538,-10279.9 807.935,-10322 886.323,-10838.4 723.11,-11122.2 1127.31,-11453 1192.81,-11506.6 1447.32,-11422.1 1507.08,-11482 1567.17,-11542.3 1478.35,-11800.5 1535.08,-11864 1562.57,-11894.8 1610.69,-11900.2 1647.06,-11899.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1647.63,-11902.7 1657.46,-11898.8 1647.31,-11895.7 1647.63,-11902.7"/>
</g>
<!-- TBTCToken.transfer -->
<g id="node310" class="node"><title>TBTCToken.transfer</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11022" rx="38.1938" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11018.3" font-family="Times New Roman,serif" font-size="14.00">transfer</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;TBTCToken.transfer -->
<g id="edge294" class="edge"><title>FundingScript.receiveApproval&#45;&gt;TBTCToken.transfer</title>
<path fill="none" stroke="white" stroke-width="2" d="M286.675,-9443.28C420.46,-9435.33 714.475,-9425.78 787.935,-9489 1308,-9936.54 622.541,-10530.3 1127.31,-10995 1166.81,-11031.4 1231.5,-11033 1274.95,-11029"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1275.39,-11032.5 1284.97,-11028 1274.65,-11025.5 1275.39,-11032.5"/>
</g>
<!-- TBTCToken.balanceOf -->
<g id="node311" class="node"><title>TBTCToken.balanceOf</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11130" rx="48.1917" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11126.3" font-family="Times New Roman,serif" font-size="14.00">balanceOf</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;TBTCToken.balanceOf -->
<g id="edge295" class="edge"><title>FundingScript.receiveApproval&#45;&gt;TBTCToken.balanceOf</title>
<path fill="none" stroke="white" stroke-width="2" d="M281.62,-9456.13C427.893,-9475.43 783.307,-9522.69 787.935,-9527 853.477,-9588.04 1061.71,-11042 1127.31,-11103 1164.22,-11137.3 1223.54,-11140.8 1266.66,-11137.8"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1267.03,-11141.2 1276.69,-11136.9 1266.44,-11134.3 1267.03,-11141.2"/>
</g>
<!-- VendingMachine.call -->
<g id="node323" class="node"><title>VendingMachine.call</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11674" rx="27" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11670.3" font-family="Times New Roman,serif" font-size="14.00">call</text>
</g>
<!-- FundingScript.receiveApproval&#45;&gt;VendingMachine.call -->
<g id="edge293" class="edge"><title>FundingScript.receiveApproval&#45;&gt;VendingMachine.call</title>
<path fill="none" stroke="white" stroke-width="2" d="M276.791,-9437.68C323.102,-9432.93 386.321,-9435.39 421.564,-9475 501.79,-9565.16 378.881,-11555.5 457.564,-11647 487.688,-11682 544.858,-11683.3 582.122,-11679.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="582.993,-11683.1 592.529,-11678.5 582.196,-11676.1 582.993,-11683.1"/>
</g>
<!-- DepositFactory.&lt;Constructor&gt; -->
<g id="node201" class="node"><title>DepositFactory.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-9284" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9280.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- DepositFactory.setExternalDependencies -->
<g id="node202" class="node"><title>DepositFactory.setExternalDependencies</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-9230" rx="100.983" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9226.3" font-family="Times New Roman,serif" font-size="14.00">setExternalDependencies</text>
</g>
<!-- DepositFactory.createDeposit -->
<g id="node203" class="node"><title>DepositFactory.createDeposit</title>
<ellipse fill="#ff9797" stroke="brown" stroke-width="3" cx="618.75" cy="-9176" rx="60.3893" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9172.3" font-family="Times New Roman,serif" font-size="14.00">createDeposit</text>
</g>
<!-- DepositFactory.createDeposit&#45;&gt;Deposit.initialize -->
<g id="edge298" class="edge"><title>DepositFactory.createDeposit&#45;&gt;Deposit.initialize</title>
<path fill="none" stroke="white" stroke-width="2" d="M677.469,-9171.42C713.001,-9171.68 757.428,-9177.94 787.935,-9203 807.713,-9219.24 789.071,-9239.7 807.935,-9257 906.923,-9347.75 1016.7,-9231.12 1099.31,-9337 1142.14,-9391.9 1077.53,-10541.3 1127.31,-10590 1200.8,-10661.9 1530.49,-10599 1651.09,-10573"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1652.07,-10576.4 1661.09,-10570.8 1650.58,-10569.5 1652.07,-10576.4"/>
</g>
<!-- DepositFactory.createClone -->
<g id="node204" class="node"><title>DepositFactory.createClone</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-9176" rx="53.8905" ry="18"/>
<text text-anchor="middle" x="957.623" y="-9172.3" font-family="Times New Roman,serif" font-size="14.00">createClone</text>
</g>
<!-- DepositFactory.createDeposit&#45;&gt;DepositFactory.createClone -->
<g id="edge297" class="edge"><title>DepositFactory.createDeposit&#45;&gt;DepositFactory.createClone</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M679.2,-9176C739.285,-9176 831.794,-9176 893.245,-9176"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="893.586,-9179.5 903.586,-9176 893.586,-9172.5 893.586,-9179.5"/>
</g>
<!-- DepositFactory.DepositCloneCreated -->
<g id="node205" class="node"><title>DepositFactory.DepositCloneCreated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-9230" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="957.623" y="-9226.3" font-family="Times New Roman,serif" font-size="14.00">DepositCloneCreated</text>
</g>
<!-- DepositFactory.createDeposit&#45;&gt;DepositFactory.DepositCloneCreated -->
<g id="edge299" class="edge"><title>DepositFactory.createDeposit&#45;&gt;DepositFactory.DepositCloneCreated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M672.386,-9184.44C727.365,-9193.25 814.248,-9207.18 877.496,-9217.32"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="877.007,-9220.78 887.435,-9218.91 878.115,-9213.87 877.007,-9220.78"/>
</g>
<!-- DepositFactoryAuthority.initialize -->
<g id="node206" class="node"><title>DepositFactoryAuthority.initialize</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15065" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15061.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- DepositFactoryAuthority.onlyFactory -->
<g id="node207" class="node"><title>DepositFactoryAuthority.onlyFactory</title>
<polygon fill="#edad56" stroke="#1bc6a6" stroke-width="3" points="277.963,-14999.5 277.963,-15014.5 243.296,-15025 194.268,-15025 159.601,-15014.5 159.601,-14999.5 194.268,-14989 243.296,-14989 277.963,-14999.5"/>
<polygon fill="none" stroke="#1bc6a6" stroke-width="3" points="281.969,-14996.6 281.969,-15017.4 243.892,-15029 193.672,-15029 155.595,-15017.4 155.595,-14996.6 193.672,-14985 243.892,-14985 281.969,-14996.6"/>
<text text-anchor="middle" x="218.782" y="-15003.3" font-family="Times New Roman,serif" font-size="14.00">onlyFactory</text>
</g>
<!-- FeeRebateToken.&lt;Constructor&gt; -->
<g id="node209" class="node"><title>FeeRebateToken.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10763" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10759.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- FeeRebateToken.mint -->
<g id="node210" class="node"><title>FeeRebateToken.mint</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10817" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10813.3" font-family="Times New Roman,serif" font-size="14.00">mint</text>
</g>
<!-- FeeRebateToken._mint -->
<g id="node212" class="node"><title>FeeRebateToken._mint</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-10817" rx="31.3957" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-10813.3" font-family="Times New Roman,serif" font-size="14.00">_mint</text>
</g>
<!-- FeeRebateToken.mint&#45;&gt;FeeRebateToken._mint -->
<g id="edge300" class="edge"><title>FeeRebateToken.mint&#45;&gt;FeeRebateToken._mint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1348.44,-10817C1412.63,-10817 1577.9,-10817 1654.88,-10817"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1655.14,-10820.5 1665.14,-10817 1655.14,-10813.5 1655.14,-10820.5"/>
</g>
<!-- FeeRebateToken.exists -->
<g id="node211" class="node"><title>FeeRebateToken.exists</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10709" rx="31.3957" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10705.3" font-family="Times New Roman,serif" font-size="14.00">exists</text>
</g>
<!-- FeeRebateToken._exists -->
<g id="node213" class="node"><title>FeeRebateToken._exists</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-10709" rx="36.2938" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-10705.3" font-family="Times New Roman,serif" font-size="14.00">_exists</text>
</g>
<!-- FeeRebateToken.exists&#45;&gt;FeeRebateToken._exists -->
<g id="edge301" class="edge"><title>FeeRebateToken.exists&#45;&gt;FeeRebateToken._exists</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1352.42,-10709C1417.65,-10709 1571.95,-10709 1649.41,-10709"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1649.82,-10712.5 1659.82,-10709 1649.82,-10705.5 1649.82,-10712.5"/>
</g>
<!-- RedemptionScript.&lt;Constructor&gt; -->
<g id="node214" class="node"><title>RedemptionScript.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9365" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9361.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- RedemptionScript.receiveApproval -->
<g id="node215" class="node"><title>RedemptionScript.receiveApproval</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9311" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9307.3" font-family="Times New Roman,serif" font-size="14.00">receiveApproval</text>
</g>
<!-- TBTCToken.transferFrom -->
<g id="node312" class="node"><title>TBTCToken.transferFrom</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11076" rx="57.6901" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11072.3" font-family="Times New Roman,serif" font-size="14.00">transferFrom</text>
</g>
<!-- RedemptionScript.receiveApproval&#45;&gt;TBTCToken.transferFrom -->
<g id="edge302" class="edge"><title>RedemptionScript.receiveApproval&#45;&gt;TBTCToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M285.526,-9305.37C327.799,-9305.02 382.011,-9311 421.564,-9338 448.838,-9356.62 431.186,-9383.13 457.564,-9403 577.911,-9493.65 682.105,-9371.76 787.935,-9479 1289.39,-9987.13 604.229,-10563.2 1127.31,-11049 1161.87,-11081.1 1216.04,-11086.2 1258.19,-11084.3"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1258.58,-11087.7 1268.35,-11083.6 1258.15,-11080.8 1258.58,-11087.7"/>
</g>
<!-- TBTCToken.approve -->
<g id="node313" class="node"><title>TBTCToken.approve</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-10968" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-10964.3" font-family="Times New Roman,serif" font-size="14.00">approve</text>
</g>
<!-- RedemptionScript.receiveApproval&#45;&gt;TBTCToken.approve -->
<g id="edge303" class="edge"><title>RedemptionScript.receiveApproval&#45;&gt;TBTCToken.approve</title>
<path fill="none" stroke="white" stroke-width="2" d="M284.135,-9317.81C323.906,-9322.46 375.9,-9329.35 421.564,-9338 459.665,-9345.22 1075.08,-9474.72 1099.31,-9505 1146.7,-9564.22 1075.26,-10814.8 1127.31,-10870 1156.36,-10900.8 1465.7,-10891.1 1507.08,-10900 1561.21,-10911.7 1620.9,-10935.2 1658.28,-10951.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1657.19,-10954.6 1667.75,-10955.3 1659.98,-10948.1 1657.19,-10954.6"/>
</g>
<!-- RedemptionScript.receiveApproval&#45;&gt;VendingMachine.call -->
<g id="edge304" class="edge"><title>RedemptionScript.receiveApproval&#45;&gt;VendingMachine.call</title>
<path fill="none" stroke="white" stroke-width="2" d="M276.801,-9300.67C323.118,-9295.92 386.341,-9298.38 421.564,-9338 506.802,-9433.88 373.967,-11549.7 457.564,-11647 487.67,-11682 544.846,-11683.3 582.115,-11679.7"/>
<polygon fill="white" stroke="white" stroke-width="2" points="582.989,-11683.1 592.524,-11678.5 582.191,-11676.1 582.989,-11683.1"/>
</g>
<!-- KeepFactorySelector.selectFactory -->
<g id="node216" class="node"><title>KeepFactorySelector.selectFactory</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-15148" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15144.3" font-family="Times New Roman,serif" font-size="14.00">selectFactory</text>
</g>
<!-- KeepFactorySelection.initialize -->
<g id="node217" class="node"><title>KeepFactorySelection.initialize</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="218.782" cy="-15339" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15335.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- KeepFactorySelection.IBondedECDSAKeepFactory -->
<g id="node223" class="node"><title>KeepFactorySelection.IBondedECDSAKeepFactory</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-15285" rx="119.679" ry="18"/>
<text text-anchor="middle" x="618.75" y="-15281.3" font-family="Times New Roman,serif" font-size="14.00">IBondedECDSAKeepFactory</text>
</g>
<!-- KeepFactorySelection.initialize&#45;&gt;KeepFactorySelection.IBondedECDSAKeepFactory -->
<g id="edge305" class="edge"><title>KeepFactorySelection.initialize&#45;&gt;KeepFactorySelection.IBondedECDSAKeepFactory</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M256.608,-15334.1C297.063,-15328.7 363.952,-15319.8 421.564,-15312 453.535,-15307.7 488.43,-15302.9 519.808,-15298.6"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="520.436,-15302 529.865,-15297.2 519.48,-15295.1 520.436,-15302"/>
</g>
<!-- KeepFactorySelection.selectFactory -->
<g id="node218" class="node"><title>KeepFactorySelection.selectFactory</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-15393" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="618.75" y="-15389.3" font-family="Times New Roman,serif" font-size="14.00">selectFactory</text>
</g>
<!-- KeepFactorySelection.selectFactoryAndRefresh -->
<g id="node219" class="node"><title>KeepFactorySelection.selectFactoryAndRefresh</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15393" rx="103.182" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15389.3" font-family="Times New Roman,serif" font-size="14.00">selectFactoryAndRefresh</text>
</g>
<!-- KeepFactorySelection.selectFactoryAndRefresh&#45;&gt;KeepFactorySelection.selectFactory -->
<g id="edge306" class="edge"><title>KeepFactorySelection.selectFactoryAndRefresh&#45;&gt;KeepFactorySelection.selectFactory</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M322.269,-15393C393.388,-15393 486.207,-15393 548.679,-15393"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="548.821,-15396.5 558.821,-15393 548.821,-15389.5 548.821,-15396.5"/>
</g>
<!-- KeepFactorySelection.refreshFactory -->
<g id="node220" class="node"><title>KeepFactorySelection.refreshFactory</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-15339" rx="63.8893" ry="18"/>
<text text-anchor="middle" x="618.75" y="-15335.3" font-family="Times New Roman,serif" font-size="14.00">refreshFactory</text>
</g>
<!-- KeepFactorySelection.selectFactoryAndRefresh&#45;&gt;KeepFactorySelection.refreshFactory -->
<g id="edge307" class="edge"><title>KeepFactorySelection.selectFactoryAndRefresh&#45;&gt;KeepFactorySelection.refreshFactory</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M301.769,-15382.1C338.424,-15377.2 382.163,-15371.3 421.564,-15366 464.722,-15360.1 513.207,-15353.5 551.179,-15348.2"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="551.669,-15351.7 561.096,-15346.9 550.71,-15344.8 551.669,-15351.7"/>
</g>
<!-- KeepFactorySelection.setFullyBackedKeepFactory -->
<g id="node221" class="node"><title>KeepFactorySelection.setFullyBackedKeepFactory</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="218.782" cy="-15285" rx="113.98" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15281.3" font-family="Times New Roman,serif" font-size="14.00">setFullyBackedKeepFactory</text>
</g>
<!-- KeepFactorySelection.setFullyBackedKeepFactory&#45;&gt;KeepFactorySelection.IBondedECDSAKeepFactory -->
<g id="edge308" class="edge"><title>KeepFactorySelection.setFullyBackedKeepFactory&#45;&gt;KeepFactorySelection.IBondedECDSAKeepFactory</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M332.759,-15285C381.346,-15285 438.405,-15285 488.653,-15285"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="488.936,-15288.5 498.936,-15285 488.936,-15281.5 488.936,-15288.5"/>
</g>
<!-- KeepFactorySelection.setKeepFactorySelector -->
<g id="node222" class="node"><title>KeepFactorySelection.setKeepFactorySelector</title>
<ellipse fill="#f2c383" stroke="#f2c383" stroke-width="3" cx="218.782" cy="-15231" rx="98.2828" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15227.3" font-family="Times New Roman,serif" font-size="14.00">setKeepFactorySelector</text>
</g>
<!-- TBTCConstants.getBeneficiaryRewardDivisor -->
<g id="node235" class="node"><title>TBTCConstants.getBeneficiaryRewardDivisor</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="2251.37" cy="-242" rx="116.18" ry="18"/>
<text text-anchor="middle" x="2251.37" y="-238.3" font-family="Times New Roman,serif" font-size="14.00">getBeneficiaryRewardDivisor</text>
</g>
<!-- TBTCDepositToken._exists -->
<g id="node244" class="node"><title>TBTCDepositToken._exists</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-12164" rx="36.2938" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-12160.3" font-family="Times New Roman,serif" font-size="14.00">_exists</text>
</g>
<!-- TBTCDepositToken.exists&#45;&gt;TBTCDepositToken._exists -->
<g id="edge311" class="edge"><title>TBTCDepositToken.exists&#45;&gt;TBTCDepositToken._exists</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1352.42,-12164C1417.65,-12164 1571.95,-12164 1649.41,-12164"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1649.82,-12167.5 1659.82,-12164 1649.82,-12160.5 1649.82,-12167.5"/>
</g>
<!-- TBTCDepositToken.&lt;Constructor&gt; -->
<g id="node239" class="node"><title>TBTCDepositToken.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-12056" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-12052.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- TBTCDepositToken.initialize -->
<g id="node242" class="node"><title>TBTCDepositToken.initialize</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-12056" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-12052.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- TBTCDepositToken.&lt;Constructor&gt;&#45;&gt;TBTCDepositToken.initialize -->
<g id="edge309" class="edge"><title>TBTCDepositToken.&lt;Constructor&gt;&#45;&gt;TBTCDepositToken.initialize</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1387.21,-12056C1461.36,-12056 1580.88,-12056 1647.21,-12056"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1647.38,-12059.5 1657.38,-12056 1647.38,-12052.5 1647.38,-12059.5"/>
</g>
<!-- TBTCDepositToken.mint -->
<g id="node240" class="node"><title>TBTCDepositToken.mint</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-12002" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11998.3" font-family="Times New Roman,serif" font-size="14.00">mint</text>
</g>
<!-- TBTCDepositToken._mint -->
<g id="node243" class="node"><title>TBTCDepositToken._mint</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-12002" rx="31.3957" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11998.3" font-family="Times New Roman,serif" font-size="14.00">_mint</text>
</g>
<!-- TBTCDepositToken.mint&#45;&gt;TBTCDepositToken._mint -->
<g id="edge310" class="edge"><title>TBTCDepositToken.mint&#45;&gt;TBTCDepositToken._mint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1348.44,-12002C1412.63,-12002 1577.9,-12002 1654.88,-12002"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1655.14,-12005.5 1665.14,-12002 1655.14,-11998.5 1655.14,-12005.5"/>
</g>
<!-- TBTCDepositToken.approveAndCall -->
<g id="node241" class="node"><title>TBTCDepositToken.approveAndCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11948" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11944.3" font-family="Times New Roman,serif" font-size="14.00">approveAndCall</text>
</g>
<!-- TBTCDepositToken.approveAndCall&#45;&gt;ITokenRecipient.receiveApproval -->
<g id="edge313" class="edge"><title>TBTCDepositToken.approveAndCall&#45;&gt;ITokenRecipient.receiveApproval</title>
<path fill="none" stroke="white" stroke-width="2" d="M1389.02,-11952.8C1426.94,-11952.3 1473.39,-11945.5 1507.08,-11921 1529.89,-11904.4 1513.8,-11882.5 1535.08,-11864 1559.91,-11842.4 1593.82,-11829.5 1624.07,-11821.9"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1625.24,-11825.2 1634.16,-11819.5 1623.63,-11818.4 1625.24,-11825.2"/>
</g>
<!-- TBTCDepositToken.approveAndCall&#45;&gt;TBTCDepositToken.approve -->
<g id="edge312" class="edge"><title>TBTCDepositToken.approveAndCall&#45;&gt;TBTCDepositToken.approve</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1382.58,-11939.3C1456.57,-11928.6 1580.4,-11910.6 1647.96,-11900.9"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1648.51,-11904.3 1657.9,-11899.4 1647.5,-11897.4 1648.51,-11904.3"/>
</g>
<!-- TBTCDepositToken.ownerOf -->
<g id="node245" class="node"><title>TBTCDepositToken.ownerOf</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11894" rx="42.7926" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11890.3" font-family="Times New Roman,serif" font-size="14.00">ownerOf</text>
</g>
<!-- TBTCDevelopmentConstants.getBeneficiaryRewardDivisor -->
<g id="node246" class="node"><title>TBTCDevelopmentConstants.getBeneficiaryRewardDivisor</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-16070" rx="116.18" ry="18"/>
<text text-anchor="middle" x="218.782" y="-16066.3" font-family="Times New Roman,serif" font-size="14.00">getBeneficiaryRewardDivisor</text>
</g>
<!-- TBTCDevelopmentConstants.getSatoshiMultiplier -->
<g id="node247" class="node"><title>TBTCDevelopmentConstants.getSatoshiMultiplier</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-16016" rx="82.5854" ry="18"/>
<text text-anchor="middle" x="218.782" y="-16012.3" font-family="Times New Roman,serif" font-size="14.00">getSatoshiMultiplier</text>
</g>
<!-- TBTCDevelopmentConstants.getDepositTerm -->
<g id="node248" class="node"><title>TBTCDevelopmentConstants.getDepositTerm</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15962" rx="69.5877" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15958.3" font-family="Times New Roman,serif" font-size="14.00">getDepositTerm</text>
</g>
<!-- TBTCDevelopmentConstants.getTxProofDifficultyFactor -->
<g id="node249" class="node"><title>TBTCDevelopmentConstants.getTxProofDifficultyFactor</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15908" rx="110.48" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15904.3" font-family="Times New Roman,serif" font-size="14.00">getTxProofDifficultyFactor</text>
</g>
<!-- TBTCDevelopmentConstants.getSignatureTimeout -->
<g id="node250" class="node"><title>TBTCDevelopmentConstants.getSignatureTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15854" rx="85.2851" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15850.3" font-family="Times New Roman,serif" font-size="14.00">getSignatureTimeout</text>
</g>
<!-- TBTCDevelopmentConstants.getIncreaseFeeTimer -->
<g id="node251" class="node"><title>TBTCDevelopmentConstants.getIncreaseFeeTimer</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15800" rx="86.3847" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15796.3" font-family="Times New Roman,serif" font-size="14.00">getIncreaseFeeTimer</text>
</g>
<!-- TBTCDevelopmentConstants.getRedemptionProofTimeout -->
<g id="node252" class="node"><title>TBTCDevelopmentConstants.getRedemptionProofTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15746" rx="116.979" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15742.3" font-family="Times New Roman,serif" font-size="14.00">getRedemptionProofTimeout</text>
</g>
<!-- TBTCDevelopmentConstants.getMinimumRedemptionFee -->
<g id="node253" class="node"><title>TBTCDevelopmentConstants.getMinimumRedemptionFee</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15692" rx="113.18" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15688.3" font-family="Times New Roman,serif" font-size="14.00">getMinimumRedemptionFee</text>
</g>
<!-- TBTCDevelopmentConstants.getFundingTimeout -->
<g id="node254" class="node"><title>TBTCDevelopmentConstants.getFundingTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15638" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15634.3" font-family="Times New Roman,serif" font-size="14.00">getFundingTimeout</text>
</g>
<!-- TBTCDevelopmentConstants.getSigningGroupFormationTimeout -->
<g id="node255" class="node"><title>TBTCDevelopmentConstants.getSigningGroupFormationTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15584" rx="139.976" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15580.3" font-family="Times New Roman,serif" font-size="14.00">getSigningGroupFormationTimeout</text>
</g>
<!-- TBTCDevelopmentConstants.getCourtesyCallTimeout -->
<g id="node256" class="node"><title>TBTCDevelopmentConstants.getCourtesyCallTimeout</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15530" rx="98.5829" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15526.3" font-family="Times New Roman,serif" font-size="14.00">getCourtesyCallTimeout</text>
</g>
<!-- TBTCDevelopmentConstants.getAuctionDuration -->
<g id="node257" class="node"><title>TBTCDevelopmentConstants.getAuctionDuration</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-15476" rx="81.4863" ry="18"/>
<text text-anchor="middle" x="218.782" y="-15472.3" font-family="Times New Roman,serif" font-size="14.00">getAuctionDuration</text>
</g>
<!-- TBTCSystem.&lt;Constructor&gt; -->
<g id="node258" class="node"><title>TBTCSystem.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-11375" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11371.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- TBTCSystem.IRelay -->
<g id="node295" class="node"><title>TBTCSystem.IRelay</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11329" rx="34.394" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11325.3" font-family="Times New Roman,serif" font-size="14.00">IRelay</text>
</g>
<!-- TBTCSystem.&lt;Constructor&gt;&#45;&gt;TBTCSystem.IRelay -->
<g id="edge314" class="edge"><title>TBTCSystem.&lt;Constructor&gt;&#45;&gt;TBTCSystem.IRelay</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M279.793,-11368.1C361.025,-11358.7 503.977,-11342.2 575.087,-11333.9"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="575.509,-11337.4 585.041,-11332.8 574.706,-11330.5 575.509,-11337.4"/>
</g>
<!-- TBTCSystem.initialize -->
<g id="node259" class="node"><title>TBTCSystem.initialize</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10071" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10067.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- TBTCSystem.initialize&#45;&gt;DepositFactory.setExternalDependencies -->
<g id="edge317" class="edge"><title>TBTCSystem.initialize&#45;&gt;DepositFactory.setExternalDependencies</title>
<path fill="none" stroke="white" stroke-width="2" d="M254.66,-10078.2C300.377,-10085.5 379.659,-10089.7 421.564,-10044 480.701,-9979.46 399.531,-9322.53 457.564,-9257 471.302,-9241.49 490.35,-9232.65 510.528,-9227.95"/>
<polygon fill="white" stroke="white" stroke-width="2" points="511.384,-9231.34 520.506,-9225.95 510.014,-9224.48 511.384,-9231.34"/>
</g>
<!-- TBTCSystem.setTbtcDepositToken -->
<g id="node296" class="node"><title>TBTCSystem.setTbtcDepositToken</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10071" rx="90.1842" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10067.3" font-family="Times New Roman,serif" font-size="14.00">setTbtcDepositToken</text>
</g>
<!-- TBTCSystem.initialize&#45;&gt;TBTCSystem.setTbtcDepositToken -->
<g id="edge318" class="edge"><title>TBTCSystem.initialize&#45;&gt;TBTCSystem.setTbtcDepositToken</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M257.941,-10071C317.297,-10071 433.677,-10071 518.045,-10071"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="518.169,-10074.5 528.169,-10071 518.169,-10067.5 518.169,-10074.5"/>
</g>
<!-- VendingMachine.setExternalAddresses -->
<g id="node324" class="node"><title>VendingMachine.setExternalAddresses</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-11728" rx="89.0842" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11724.3" font-family="Times New Roman,serif" font-size="14.00">setExternalAddresses</text>
</g>
<!-- TBTCSystem.initialize&#45;&gt;VendingMachine.setExternalAddresses -->
<g id="edge316" class="edge"><title>TBTCSystem.initialize&#45;&gt;VendingMachine.setExternalAddresses</title>
<path fill="none" stroke="white" stroke-width="2" d="M254.427,-10063.7C300.26,-10056.3 380.076,-10051.7 421.564,-10098 480.975,-10164.4 399.289,-11633.6 457.564,-11701 474.341,-11720.4 499.409,-11729.4 524.762,-11733"/>
<polygon fill="white" stroke="white" stroke-width="2" points="524.523,-11736.5 534.854,-11734.1 525.313,-11729.5 524.523,-11736.5"/>
</g>
<!-- KeepFactorySelection.Storage.initialize -->
<g id="node461" class="node"><title>KeepFactorySelection.Storage.initialize</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-9039" rx="38.9931" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9035.3" font-family="Times New Roman,serif" font-size="14.00">initialize</text>
</g>
<!-- TBTCSystem.initialize&#45;&gt;KeepFactorySelection.Storage.initialize -->
<g id="edge315" class="edge"><title>TBTCSystem.initialize&#45;&gt;KeepFactorySelection.Storage.initialize</title>
<path fill="none" stroke="white" stroke-width="2" d="M254.721,-10078.3C300.506,-10085.6 379.863,-10089.9 421.564,-10044 494.668,-9963.5 385.838,-9147.73 457.564,-9066 485.195,-9034.51 534.689,-9030.48 571.373,-9032.63"/>
<polygon fill="white" stroke="white" stroke-width="2" points="571.116,-9036.12 581.351,-9033.39 571.644,-9029.14 571.116,-9036.12"/>
</g>
<!-- TBTCSystem.getAllowNewDeposits -->
<g id="node260" class="node"><title>TBTCSystem.getAllowNewDeposits</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11429" rx="91.784" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11425.3" font-family="Times New Roman,serif" font-size="14.00">getAllowNewDeposits</text>
</g>
<!-- TBTCSystem.getMaxLotSize -->
<g id="node261" class="node"><title>TBTCSystem.getMaxLotSize</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11383" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11379.3" font-family="Times New Roman,serif" font-size="14.00">getMaxLotSize</text>
</g>
<!-- TBTCSystem.getAllowNewDeposits&#45;&gt;TBTCSystem.getMaxLotSize -->
<g id="edge320" class="edge"><title>TBTCSystem.getAllowNewDeposits&#45;&gt;TBTCSystem.getMaxLotSize</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M298.408,-11419.9C371.168,-11411.5 478.318,-11399.1 548.074,-11391.1"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="548.554,-11394.5 558.086,-11389.9 547.75,-11387.6 548.554,-11394.5"/>
</g>
<!-- VendingMachine.canMint -->
<g id="node325" class="node"><title>VendingMachine.canMint</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11551" rx="40.0939" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11547.3" font-family="Times New Roman,serif" font-size="14.00">canMint</text>
</g>
<!-- TBTCSystem.getAllowNewDeposits&#45;&gt;VendingMachine.canMint -->
<g id="edge319" class="edge"><title>TBTCSystem.getAllowNewDeposits&#45;&gt;VendingMachine.canMint</title>
<path fill="none" stroke="white" stroke-width="2" d="M302.178,-11436.5C412.77,-11446.6 615.3,-11465.8 787.935,-11485 967.002,-11504.9 1179.46,-11532.4 1272.52,-11544.7"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1272.11,-11548.2 1282.48,-11546 1273.02,-11541.2 1272.11,-11548.2"/>
</g>
<!-- TBTCSystem.emergencyPauseNewDeposits -->
<g id="node262" class="node"><title>TBTCSystem.emergencyPauseNewDeposits</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11267" rx="120.479" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11263.3" font-family="Times New Roman,serif" font-size="14.00">emergencyPauseNewDeposits</text>
</g>
<!-- TBTCSystem.AllowNewDepositsUpdated -->
<g id="node297" class="node"><title>TBTCSystem.AllowNewDepositsUpdated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11271" rx="112.38" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11267.3" font-family="Times New Roman,serif" font-size="14.00">AllowNewDepositsUpdated</text>
</g>
<!-- TBTCSystem.emergencyPauseNewDeposits&#45;&gt;TBTCSystem.AllowNewDepositsUpdated -->
<g id="edge321" class="edge"><title>TBTCSystem.emergencyPauseNewDeposits&#45;&gt;TBTCSystem.AllowNewDepositsUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M338.916,-11268.2C388.619,-11268.7 446.29,-11269.3 496.242,-11269.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="496.416,-11273.3 506.451,-11269.9 496.487,-11266.3 496.416,-11273.3"/>
</g>
<!-- TBTCSystem.resumeNewDeposits -->
<g id="node263" class="node"><title>TBTCSystem.resumeNewDeposits</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-11321" rx="85.2851" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11317.3" font-family="Times New Roman,serif" font-size="14.00">resumeNewDeposits</text>
</g>
<!-- TBTCSystem.resumeNewDeposits&#45;&gt;TBTCSystem.AllowNewDepositsUpdated -->
<g id="edge322" class="edge"><title>TBTCSystem.resumeNewDeposits&#45;&gt;TBTCSystem.AllowNewDepositsUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M292.313,-11311.9C355.991,-11303.9 449.17,-11292.2 519.523,-11283.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="520.245,-11286.8 529.731,-11282.1 519.372,-11279.8 520.245,-11286.8"/>
</g>
<!-- TBTCSystem.getRemainingPauseTerm -->
<g id="node264" class="node"><title>TBTCSystem.getRemainingPauseTerm</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9801" rx="100.983" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9797.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingPauseTerm</text>
</g>
<!-- pausedDuration.sub -->
<g id="node466" class="node"><title>pausedDuration.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8794" rx="27" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8790.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- TBTCSystem.getRemainingPauseTerm&#45;&gt;pausedDuration.sub -->
<g id="edge323" class="edge"><title>TBTCSystem.getRemainingPauseTerm&#45;&gt;pausedDuration.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M296.334,-9812.54C339.486,-9814.36 390.759,-9807.85 421.564,-9774 490.938,-9697.76 395.59,-8929.37 457.564,-8847 486.38,-8808.7 543.795,-8797.71 581.482,-8794.76"/>
<polygon fill="white" stroke="white" stroke-width="2" points="581.788,-8798.25 591.548,-8794.13 581.348,-8791.26 581.788,-8798.25"/>
</g>
<!-- TBTCSystem.beginSignerFeeDivisorUpdate -->
<g id="node265" class="node"><title>TBTCSystem.beginSignerFeeDivisorUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11213" rx="118.879" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11209.3" font-family="Times New Roman,serif" font-size="14.00">beginSignerFeeDivisorUpdate</text>
</g>
<!-- TBTCSystem.SignerFeeDivisorUpdateStarted -->
<g id="node298" class="node"><title>TBTCSystem.SignerFeeDivisorUpdateStarted</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11213" rx="125.378" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11209.3" font-family="Times New Roman,serif" font-size="14.00">SignerFeeDivisorUpdateStarted</text>
</g>
<!-- TBTCSystem.beginSignerFeeDivisorUpdate&#45;&gt;TBTCSystem.SignerFeeDivisorUpdateStarted -->
<g id="edge324" class="edge"><title>TBTCSystem.beginSignerFeeDivisorUpdate&#45;&gt;TBTCSystem.SignerFeeDivisorUpdateStarted</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M337.839,-11213C383.42,-11213 435.831,-11213 482.885,-11213"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="483.152,-11216.5 493.152,-11213 483.152,-11209.5 483.152,-11216.5"/>
</g>
<!-- TBTCSystem.beginLotSizesUpdate -->
<g id="node266" class="node"><title>TBTCSystem.beginLotSizesUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11159" rx="88.2844" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11155.3" font-family="Times New Roman,serif" font-size="14.00">beginLotSizesUpdate</text>
</g>
<!-- TBTCSystem.LotSizesUpdateStarted -->
<g id="node299" class="node"><title>TBTCSystem.LotSizesUpdateStarted</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11159" rx="94.7833" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11155.3" font-family="Times New Roman,serif" font-size="14.00">LotSizesUpdateStarted</text>
</g>
<!-- TBTCSystem.beginLotSizesUpdate&#45;&gt;TBTCSystem.LotSizesUpdateStarted -->
<g id="edge325" class="edge"><title>TBTCSystem.beginLotSizesUpdate&#45;&gt;TBTCSystem.LotSizesUpdateStarted</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M307.61,-11159C368.339,-11159 449.406,-11159 513.428,-11159"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="513.551,-11162.5 523.551,-11159 513.551,-11155.5 513.551,-11162.5"/>
</g>
<!-- TBTCSystem.beginCollateralizationThresholdsUpdate -->
<g id="node267" class="node"><title>TBTCSystem.beginCollateralizationThresholdsUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11105" rx="155.173" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11101.3" font-family="Times New Roman,serif" font-size="14.00">beginCollateralizationThresholdsUpdate</text>
</g>
<!-- TBTCSystem.CollateralizationThresholdsUpdateStarted -->
<g id="node300" class="node"><title>TBTCSystem.CollateralizationThresholdsUpdateStarted</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11105" rx="161.372" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11101.3" font-family="Times New Roman,serif" font-size="14.00">CollateralizationThresholdsUpdateStarted</text>
</g>
<!-- TBTCSystem.beginCollateralizationThresholdsUpdate&#45;&gt;TBTCSystem.CollateralizationThresholdsUpdateStarted -->
<g id="edge326" class="edge"><title>TBTCSystem.beginCollateralizationThresholdsUpdate&#45;&gt;TBTCSystem.CollateralizationThresholdsUpdateStarted</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M374.216,-11105C398.22,-11105 423.136,-11105 447.466,-11105"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="447.486,-11108.5 457.486,-11105 447.486,-11101.5 447.486,-11108.5"/>
</g>
<!-- TBTCSystem.beginKeepFactorySingleShotUpdate -->
<g id="node268" class="node"><title>TBTCSystem.beginKeepFactorySingleShotUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-11051" rx="142.975" ry="18"/>
<text text-anchor="middle" x="218.782" y="-11047.3" font-family="Times New Roman,serif" font-size="14.00">beginKeepFactorySingleShotUpdate</text>
</g>
<!-- TBTCSystem.KeepFactorySingleShotUpdateStarted -->
<g id="node301" class="node"><title>TBTCSystem.KeepFactorySingleShotUpdateStarted</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-11051" rx="149.473" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11047.3" font-family="Times New Roman,serif" font-size="14.00">KeepFactorySingleShotUpdateStarted</text>
</g>
<!-- TBTCSystem.beginKeepFactorySingleShotUpdate&#45;&gt;TBTCSystem.KeepFactorySingleShotUpdateStarted -->
<g id="edge327" class="edge"><title>TBTCSystem.beginKeepFactorySingleShotUpdate&#45;&gt;TBTCSystem.KeepFactorySingleShotUpdateStarted</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M361.772,-11051C393.194,-11051 426.687,-11051 458.737,-11051"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="459.088,-11054.5 469.088,-11051 459.088,-11047.5 459.088,-11054.5"/>
</g>
<!-- TBTCSystem.beginEthBtcPriceFeedAddition -->
<g id="node269" class="node"><title>TBTCSystem.beginEthBtcPriceFeedAddition</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-9909" rx="123.478" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9905.3" font-family="Times New Roman,serif" font-size="14.00">beginEthBtcPriceFeedAddition</text>
</g>
<!-- TBTCSystem.EthBtcPriceFeedAdditionStarted -->
<g id="node302" class="node"><title>TBTCSystem.EthBtcPriceFeedAdditionStarted</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-9909" rx="129.977" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9905.3" font-family="Times New Roman,serif" font-size="14.00">EthBtcPriceFeedAdditionStarted</text>
</g>
<!-- TBTCSystem.beginEthBtcPriceFeedAddition&#45;&gt;TBTCSystem.EthBtcPriceFeedAdditionStarted -->
<g id="edge329" class="edge"><title>TBTCSystem.beginEthBtcPriceFeedAddition&#45;&gt;TBTCSystem.EthBtcPriceFeedAdditionStarted</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M342.433,-9909C385.444,-9909 434.064,-9909 478.347,-9909"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="478.612,-9912.5 488.612,-9909 478.612,-9905.5 478.612,-9912.5"/>
</g>
<!-- TBTCSystem.beginEthBtcPriceFeedAddition&#45;&gt;IMedianizer.peek -->
<g id="edge328" class="edge"><title>TBTCSystem.beginEthBtcPriceFeedAddition&#45;&gt;IMedianizer.peek</title>
<path fill="none" stroke="white" stroke-width="2" d="M311.034,-9920.99C350.761,-9920.82 394.367,-9912.32 421.564,-9882 476.293,-9820.98 408.755,-8472.85 457.564,-8407 485.864,-8368.82 542.634,-8357.75 580.42,-8354.76"/>
<polygon fill="white" stroke="white" stroke-width="2" points="580.777,-8358.24 590.534,-8354.11 580.332,-8351.25 580.777,-8358.24"/>
</g>
<!-- TBTCSystem.onlyAfterGovernanceDelay -->
<g id="node270" class="node"><title>TBTCSystem.onlyAfterGovernanceDelay</title>
<polygon fill="#edad56" stroke="#1bc6a6" stroke-width="3" points="337.15,-10823.5 337.15,-10838.5 267.811,-10849 169.753,-10849 100.414,-10838.5 100.414,-10823.5 169.753,-10813 267.811,-10813 337.15,-10823.5"/>
<polygon fill="none" stroke="#1bc6a6" stroke-width="3" points="341.156,-10820.1 341.156,-10841.9 268.115,-10853 169.449,-10853 96.4082,-10841.9 96.4082,-10820.1 169.449,-10809 268.115,-10809 341.156,-10820.1"/>
<text text-anchor="middle" x="218.782" y="-10827.3" font-family="Times New Roman,serif" font-size="14.00">onlyAfterGovernanceDelay</text>
</g>
<!-- TBTCSystem.finalizeSignerFeeDivisorUpdate -->
<g id="node271" class="node"><title>TBTCSystem.finalizeSignerFeeDivisorUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10997" rx="124.278" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10993.3" font-family="Times New Roman,serif" font-size="14.00">finalizeSignerFeeDivisorUpdate</text>
</g>
<!-- TBTCSystem.SignerFeeDivisorUpdated -->
<g id="node303" class="node"><title>TBTCSystem.SignerFeeDivisorUpdated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10997" rx="104.782" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10993.3" font-family="Times New Roman,serif" font-size="14.00">SignerFeeDivisorUpdated</text>
</g>
<!-- TBTCSystem.finalizeSignerFeeDivisorUpdate&#45;&gt;TBTCSystem.SignerFeeDivisorUpdated -->
<g id="edge330" class="edge"><title>TBTCSystem.finalizeSignerFeeDivisorUpdate&#45;&gt;TBTCSystem.SignerFeeDivisorUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M342.976,-10997C394.232,-10997 453.376,-10997 503.632,-10997"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="503.887,-11000.5 513.887,-10997 503.887,-10993.5 503.887,-11000.5"/>
</g>
<!-- TBTCSystem.finalizeLotSizesUpdate -->
<g id="node272" class="node"><title>TBTCSystem.finalizeLotSizesUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10943" rx="93.6835" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10939.3" font-family="Times New Roman,serif" font-size="14.00">finalizeLotSizesUpdate</text>
</g>
<!-- TBTCSystem.LotSizesUpdated -->
<g id="node304" class="node"><title>TBTCSystem.LotSizesUpdated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10943" rx="73.387" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10939.3" font-family="Times New Roman,serif" font-size="14.00">LotSizesUpdated</text>
</g>
<!-- TBTCSystem.finalizeLotSizesUpdate&#45;&gt;TBTCSystem.LotSizesUpdated -->
<g id="edge331" class="edge"><title>TBTCSystem.finalizeLotSizesUpdate&#45;&gt;TBTCSystem.LotSizesUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M312.585,-10943C379.844,-10943 469.991,-10943 534.843,-10943"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="535.027,-10946.5 545.027,-10943 535.027,-10939.5 535.027,-10946.5"/>
</g>
<!-- TBTCSystem.finalizeCollateralizationThresholdsUpdate -->
<g id="node273" class="node"><title>TBTCSystem.finalizeCollateralizationThresholdsUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10889" rx="160.572" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10885.3" font-family="Times New Roman,serif" font-size="14.00">finalizeCollateralizationThresholdsUpdate</text>
</g>
<!-- TBTCSystem.CollateralizationThresholdsUpdated -->
<g id="node305" class="node"><title>TBTCSystem.CollateralizationThresholdsUpdated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10889" rx="140.275" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10885.3" font-family="Times New Roman,serif" font-size="14.00">CollateralizationThresholdsUpdated</text>
</g>
<!-- TBTCSystem.finalizeCollateralizationThresholdsUpdate&#45;&gt;TBTCSystem.CollateralizationThresholdsUpdated -->
<g id="edge332" class="edge"><title>TBTCSystem.finalizeCollateralizationThresholdsUpdate&#45;&gt;TBTCSystem.CollateralizationThresholdsUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M379.358,-10889C408.664,-10889 439.157,-10889 468.157,-10889"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="468.348,-10892.5 478.348,-10889 468.348,-10885.5 468.348,-10892.5"/>
</g>
<!-- TBTCSystem.finalizeKeepFactorySingleShotUpdate -->
<g id="node274" class="node"><title>TBTCSystem.finalizeKeepFactorySingleShotUpdate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10017" rx="148.374" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10013.3" font-family="Times New Roman,serif" font-size="14.00">finalizeKeepFactorySingleShotUpdate</text>
</g>
<!-- TBTCSystem.KeepFactorySingleShotUpdated -->
<g id="node306" class="node"><title>TBTCSystem.KeepFactorySingleShotUpdated</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10017" rx="128.077" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10013.3" font-family="Times New Roman,serif" font-size="14.00">KeepFactorySingleShotUpdated</text>
</g>
<!-- TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;TBTCSystem.KeepFactorySingleShotUpdated -->
<g id="edge335" class="edge"><title>TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;TBTCSystem.KeepFactorySingleShotUpdated</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M367.122,-10017C404.142,-10017 443.724,-10017 480.242,-10017"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="480.456,-10020.5 490.456,-10017 480.456,-10013.5 480.456,-10020.5"/>
</g>
<!-- KeepFactorySelection.Storage.setKeepFactorySelector -->
<g id="node462" class="node"><title>KeepFactorySelection.Storage.setKeepFactorySelector</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8985" rx="98.2828" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8981.3" font-family="Times New Roman,serif" font-size="14.00">setKeepFactorySelector</text>
</g>
<!-- TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;KeepFactorySelection.Storage.setKeepFactorySelector -->
<g id="edge333" class="edge"><title>TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;KeepFactorySelection.Storage.setKeepFactorySelector</title>
<path fill="none" stroke="white" stroke-width="2" d="M346.239,-10026.2C374.713,-10021.8 402.199,-10011.3 421.564,-9990 494.668,-9909.5 385.838,-9093.73 457.564,-9012 472.002,-8995.55 492.409,-8986.59 513.839,-8982.09"/>
<polygon fill="white" stroke="white" stroke-width="2" points="514.508,-8985.53 523.739,-8980.33 513.281,-8978.64 514.508,-8985.53"/>
</g>
<!-- KeepFactorySelection.Storage.setFullyBackedKeepFactory -->
<g id="node463" class="node"><title>KeepFactorySelection.Storage.setFullyBackedKeepFactory</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8931" rx="113.98" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8927.3" font-family="Times New Roman,serif" font-size="14.00">setFullyBackedKeepFactory</text>
</g>
<!-- TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;KeepFactorySelection.Storage.setFullyBackedKeepFactory -->
<g id="edge334" class="edge"><title>TBTCSystem.finalizeKeepFactorySingleShotUpdate&#45;&gt;KeepFactorySelection.Storage.setFullyBackedKeepFactory</title>
<path fill="none" stroke="white" stroke-width="2" d="M345.481,-10026.3C374.234,-10022 402.041,-10011.5 421.564,-9990 498.617,-9904.99 381.965,-9044.31 457.564,-8958 467.777,-8946.34 480.988,-8938.44 495.439,-8933.23"/>
<polygon fill="white" stroke="white" stroke-width="2" points="496.615,-8936.53 505.095,-8930.18 494.506,-8929.85 496.615,-8936.53"/>
</g>
<!-- TBTCSystem.finalizeEthBtcPriceFeedAddition -->
<g id="node275" class="node"><title>TBTCSystem.finalizeEthBtcPriceFeedAddition</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-9963" rx="128.877" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9959.3" font-family="Times New Roman,serif" font-size="14.00">finalizeEthBtcPriceFeedAddition</text>
</g>
<!-- TBTCSystem.finalizeEthBtcPriceFeedAddition&#45;&gt;ISatWeiPriceFeed.addEthBtcFeed -->
<g id="edge336" class="edge"><title>TBTCSystem.finalizeEthBtcPriceFeedAddition&#45;&gt;ISatWeiPriceFeed.addEthBtcFeed</title>
<path fill="none" stroke="white" stroke-width="2" d="M315.643,-9974.88C354.07,-9974.06 395.366,-9965.08 421.564,-9936 514.709,-9832.6 366.188,-8788.97 457.564,-8684 479.118,-8659.24 514.19,-8651.41 546.029,-8650.24"/>
<polygon fill="white" stroke="white" stroke-width="2" points="546.288,-8653.74 556.232,-8650.08 546.178,-8646.74 546.288,-8653.74"/>
</g>
<!-- TBTCSystem.EthBtcPriceFeedAdded -->
<g id="node307" class="node"><title>TBTCSystem.EthBtcPriceFeedAdded</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-9963" rx="96.6831" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9959.3" font-family="Times New Roman,serif" font-size="14.00">EthBtcPriceFeedAdded</text>
</g>
<!-- TBTCSystem.finalizeEthBtcPriceFeedAddition&#45;&gt;TBTCSystem.EthBtcPriceFeedAdded -->
<g id="edge337" class="edge"><title>TBTCSystem.finalizeEthBtcPriceFeedAddition&#45;&gt;TBTCSystem.EthBtcPriceFeedAdded</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M347.618,-9963C400.458,-9963 461.008,-9963 511.371,-9963"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="511.629,-9966.5 521.629,-9963 511.629,-9959.5 511.629,-9966.5"/>
</g>
<!-- TBTCSystem.getSignerFeeDivisor -->
<g id="node276" class="node"><title>TBTCSystem.getSignerFeeDivisor</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10503" rx="83.6854" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10499.3" font-family="Times New Roman,serif" font-size="14.00">getSignerFeeDivisor</text>
</g>
<!-- TBTCSystem.getAllowedLotSizes -->
<g id="node277" class="node"><title>TBTCSystem.getAllowedLotSizes</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10449" rx="83.3857" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10445.3" font-family="Times New Roman,serif" font-size="14.00">getAllowedLotSizes</text>
</g>
<!-- TBTCSystem.isAllowedLotSize -->
<g id="node278" class="node"><title>TBTCSystem.isAllowedLotSize</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10395" rx="74.9875" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10391.3" font-family="Times New Roman,serif" font-size="14.00">isAllowedLotSize</text>
</g>
<!-- TBTCSystem.getUndercollateralizedThresholdPercent -->
<g id="node279" class="node"><title>TBTCSystem.getUndercollateralizedThresholdPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10341" rx="155.173" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10337.3" font-family="Times New Roman,serif" font-size="14.00">getUndercollateralizedThresholdPercent</text>
</g>
<!-- TBTCSystem.getSeverelyUndercollateralizedThresholdPercent -->
<g id="node280" class="node"><title>TBTCSystem.getSeverelyUndercollateralizedThresholdPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10287" rx="185.767" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10283.3" font-family="Times New Roman,serif" font-size="14.00">getSeverelyUndercollateralizedThresholdPercent</text>
</g>
<!-- TBTCSystem.getInitialCollateralizedPercent -->
<g id="node281" class="node"><title>TBTCSystem.getInitialCollateralizedPercent</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10233" rx="116.979" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10229.3" font-family="Times New Roman,serif" font-size="14.00">getInitialCollateralizedPercent</text>
</g>
<!-- TBTCSystem.fetchBitcoinPrice -->
<g id="node282" class="node"><title>TBTCSystem.fetchBitcoinPrice</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10125" rx="73.387" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10121.3" font-family="Times New Roman,serif" font-size="14.00">fetchBitcoinPrice</text>
</g>
<!-- TBTCSystem.fetchBitcoinPrice&#45;&gt;ISatWeiPriceFeed.getPrice -->
<g id="edge339" class="edge"><title>TBTCSystem.fetchBitcoinPrice&#45;&gt;ISatWeiPriceFeed.getPrice</title>
<path fill="none" stroke="white" stroke-width="2" d="M279.012,-10135.5C325.03,-10139.8 386.706,-10136.8 421.564,-10098 520.708,-9987.74 369.118,-8883.01 457.564,-8764 483.038,-8729.72 531.451,-8717.3 568.413,-8712.95"/>
<polygon fill="white" stroke="white" stroke-width="2" points="568.91,-8716.42 578.506,-8711.93 568.204,-8709.46 568.91,-8716.42"/>
</g>
<!-- TBTCSystem.fetchBitcoinPrice&#45;&gt;TBTCDepositToken.exists -->
<g id="edge338" class="edge"><title>TBTCSystem.fetchBitcoinPrice&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M278.599,-10114.5C324.698,-10110.1 386.691,-10113 421.564,-10152 482.95,-10220.6 393.84,-11742.5 457.564,-11809 556.462,-11912.1 996.588,-11750.7 1099.31,-11850 1145.37,-11894.5 1082.96,-12090.8 1127.31,-12137 1166.64,-12178 1237.43,-12176.8 1281.45,-12171.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1282.08,-12174.6 1291.49,-12169.7 1281.09,-12167.7 1282.08,-12174.6"/>
</g>
<!-- TBTCSystem.fetchRelayCurrentDifficulty -->
<g id="node283" class="node"><title>TBTCSystem.fetchRelayCurrentDifficulty</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-9585" rx="110.48" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9581.3" font-family="Times New Roman,serif" font-size="14.00">fetchRelayCurrentDifficulty</text>
</g>
<!-- IRelay.getCurrentEpochDifficulty -->
<g id="node467" class="node"><title>IRelay.getCurrentEpochDifficulty</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8520" rx="106.681" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8516.3" font-family="Times New Roman,serif" font-size="14.00">getCurrentEpochDifficulty</text>
</g>
<!-- TBTCSystem.fetchRelayCurrentDifficulty&#45;&gt;IRelay.getCurrentEpochDifficulty -->
<g id="edge340" class="edge"><title>TBTCSystem.fetchRelayCurrentDifficulty&#45;&gt;IRelay.getCurrentEpochDifficulty</title>
<path fill="none" stroke="white" stroke-width="2" d="M309.221,-9595.39C349.427,-9594.81 393.948,-9585.89 421.564,-9555 496.255,-9471.45 383.686,-8631.27 457.564,-8547 469.642,-8533.22 485.907,-8524.7 503.455,-8519.65"/>
<polygon fill="white" stroke="white" stroke-width="2" points="504.462,-8523.01 513.318,-8517.19 502.768,-8516.21 504.462,-8523.01"/>
</g>
<!-- TBTCSystem.fetchRelayPreviousDifficulty -->
<g id="node284" class="node"><title>TBTCSystem.fetchRelayPreviousDifficulty</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-9639" rx="114.28" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9635.3" font-family="Times New Roman,serif" font-size="14.00">fetchRelayPreviousDifficulty</text>
</g>
<!-- IRelay.getPrevEpochDifficulty -->
<g id="node468" class="node"><title>IRelay.getPrevEpochDifficulty</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8574" rx="95.5831" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8570.3" font-family="Times New Roman,serif" font-size="14.00">getPrevEpochDifficulty</text>
</g>
<!-- TBTCSystem.fetchRelayPreviousDifficulty&#45;&gt;IRelay.getPrevEpochDifficulty -->
<g id="edge341" class="edge"><title>TBTCSystem.fetchRelayPreviousDifficulty&#45;&gt;IRelay.getPrevEpochDifficulty</title>
<path fill="none" stroke="white" stroke-width="2" d="M305.214,-9650.81C346.359,-9651.39 392.877,-9643.6 421.564,-9612 495.18,-9530.92 391.819,-8714.59 457.564,-8627 473.625,-8605.6 498.614,-8592.73 524.118,-8585.02"/>
<polygon fill="white" stroke="white" stroke-width="2" points="525.197,-8588.35 533.9,-8582.31 523.328,-8581.6 525.197,-8588.35"/>
</g>
<!-- TBTCSystem.getRemainingSignerFeeDivisorUpdateTime -->
<g id="node285" class="node"><title>TBTCSystem.getRemainingSignerFeeDivisorUpdateTime</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10557" rx="167.07" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10553.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingSignerFeeDivisorUpdateTime</text>
</g>
<!-- TBTCSystem.getRemainingChangeTime -->
<g id="node294" class="node"><title>TBTCSystem.getRemainingChangeTime</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-10638" rx="105.082" ry="18"/>
<text text-anchor="middle" x="618.75" y="-10634.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingChangeTime</text>
</g>
<!-- TBTCSystem.getRemainingSignerFeeDivisorUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime -->
<g id="edge342" class="edge"><title>TBTCSystem.getRemainingSignerFeeDivisorUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M336.272,-10569.8C364.326,-10573.7 394.117,-10578.4 421.564,-10584 467.8,-10593.4 519.193,-10607.7 557.777,-10619.2"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="557.216,-10622.7 567.801,-10622.2 559.233,-10616 557.216,-10622.7"/>
</g>
<!-- TBTCSystem.getRemainingLotSizesUpdateTime -->
<g id="node286" class="node"><title>TBTCSystem.getRemainingLotSizesUpdateTime</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10773" rx="135.676" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10769.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingLotSizesUpdateTime</text>
</g>
<!-- TBTCSystem.getRemainingLotSizesUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime -->
<g id="edge343" class="edge"><title>TBTCSystem.getRemainingLotSizesUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M338.804,-10764.5C366.418,-10760.5 395.379,-10754.6 421.564,-10746 482.761,-10725.8 546.937,-10686.5 584.592,-10661.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="586.805,-10664 593.121,-10655.5 582.879,-10658.2 586.805,-10664"/>
</g>
<!-- TBTCSystem.getRemainingCollateralizationThresholdsUpdateTime -->
<g id="node287" class="node"><title>TBTCSystem.getRemainingCollateralizationThresholdsUpdateTime</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10719" rx="202.564" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10715.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingCollateralizationThresholdsUpdateTime</text>
</g>
<!-- TBTCSystem.getRemainingCollateralizationThresholdsUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime -->
<g id="edge344" class="edge"><title>TBTCSystem.getRemainingCollateralizationThresholdsUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M345.354,-10704.9C370.689,-10701.3 397.061,-10697 421.564,-10692 467.8,-10682.6 519.193,-10668.3 557.777,-10656.8"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="559.233,-10660 567.801,-10653.8 557.216,-10653.3 559.233,-10660"/>
</g>
<!-- TBTCSystem.getRemainingKeepFactorySingleShotUpdateTime -->
<g id="node288" class="node"><title>TBTCSystem.getRemainingKeepFactorySingleShotUpdateTime</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10665" rx="190.366" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10661.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingKeepFactorySingleShotUpdateTime</text>
</g>
<!-- TBTCSystem.getRemainingKeepFactorySingleShotUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime -->
<g id="edge345" class="edge"><title>TBTCSystem.getRemainingKeepFactorySingleShotUpdateTime&#45;&gt;TBTCSystem.getRemainingChangeTime</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M373.931,-10654.5C419.473,-10651.5 468.319,-10648.1 510.241,-10645.3"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="510.724,-10648.8 520.464,-10644.6 510.25,-10641.8 510.724,-10648.8"/>
</g>
<!-- TBTCSystem.getRemainingEthBtcPriceFeedAdditionTime -->
<g id="node289" class="node"><title>TBTCSystem.getRemainingEthBtcPriceFeedAdditionTime</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-10611" rx="170.87" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10607.3" font-family="Times New Roman,serif" font-size="14.00">getRemainingEthBtcPriceFeedAdditionTime</text>
</g>
<!-- TBTCSystem.getRemainingEthBtcPriceFeedAdditionTime&#45;&gt;TBTCSystem.getRemainingChangeTime -->
<g id="edge346" class="edge"><title>TBTCSystem.getRemainingEthBtcPriceFeedAdditionTime&#45;&gt;TBTCSystem.getRemainingChangeTime</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M362.895,-10620.7C411.58,-10624 465.121,-10627.6 510.509,-10630.7"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="510.447,-10634.2 520.661,-10631.4 510.921,-10627.2 510.447,-10634.2"/>
</g>
<!-- TBTCSystem.getGovernanceTimeDelay -->
<g id="node290" class="node"><title>TBTCSystem.getGovernanceTimeDelay</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9747" rx="104.782" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9743.3" font-family="Times New Roman,serif" font-size="14.00">getGovernanceTimeDelay</text>
</g>
<!-- TBTCSystem.getPriceFeedGovernanceTimeDelay -->
<g id="node291" class="node"><title>TBTCSystem.getPriceFeedGovernanceTimeDelay</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-9693" rx="141.075" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9689.3" font-family="Times New Roman,serif" font-size="14.00">getPriceFeedGovernanceTimeDelay</text>
</g>
<!-- TBTCSystem.getNewDepositFeeEstimate -->
<g id="node292" class="node"><title>TBTCSystem.getNewDepositFeeEstimate</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="218.782" cy="-9855" rx="110.48" ry="18"/>
<text text-anchor="middle" x="218.782" y="-9851.3" font-family="Times New Roman,serif" font-size="14.00">getNewDepositFeeEstimate</text>
</g>
<!-- KeepFactorySelection.Storage.selectFactory -->
<g id="node464" class="node"><title>KeepFactorySelection.Storage.selectFactory</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8877" rx="59.5901" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8873.3" font-family="Times New Roman,serif" font-size="14.00">selectFactory</text>
</g>
<!-- TBTCSystem.getNewDepositFeeEstimate&#45;&gt;KeepFactorySelection.Storage.selectFactory -->
<g id="edge347" class="edge"><title>TBTCSystem.getNewDepositFeeEstimate&#45;&gt;KeepFactorySelection.Storage.selectFactory</title>
<path fill="none" stroke="white" stroke-width="2" d="M302.634,-9866.74C344.385,-9867.67 392.244,-9860.22 421.564,-9828 490.719,-9752.01 389.71,-8981.15 457.564,-8904 480.773,-8877.61 519.341,-8870.52 552.816,-8870.18"/>
<polygon fill="white" stroke="white" stroke-width="2" points="552.985,-8873.68 563.019,-8870.28 553.054,-8866.68 552.985,-8873.68"/>
</g>
<!-- IBondedECDSAKeepFactory.openKeepFeeEstimate -->
<g id="node469" class="node"><title>IBondedECDSAKeepFactory.openKeepFeeEstimate</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-8437" rx="91.784" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8433.3" font-family="Times New Roman,serif" font-size="14.00">openKeepFeeEstimate</text>
</g>
<!-- TBTCSystem.getNewDepositFeeEstimate&#45;&gt;IBondedECDSAKeepFactory.openKeepFeeEstimate -->
<g id="edge348" class="edge"><title>TBTCSystem.getNewDepositFeeEstimate&#45;&gt;IBondedECDSAKeepFactory.openKeepFeeEstimate</title>
<path fill="none" stroke="white" stroke-width="2" d="M302.029,-9866.86C344.004,-9867.94 392.261,-9860.59 421.564,-9828 521,-9717.41 368.858,-8609.37 457.564,-8490 473.981,-8467.91 499.926,-8454.89 526.193,-8447.27"/>
<polygon fill="white" stroke="white" stroke-width="2" points="527.103,-8450.65 535.868,-8444.7 525.305,-8443.88 527.103,-8450.65"/>
</g>
<!-- TBTCSystem.requestNewKeep -->
<g id="node293" class="node"><title>TBTCSystem.requestNewKeep</title>
<ellipse fill="#ffbdb9" stroke="brown" stroke-width="3" cx="218.782" cy="-10179" rx="72.5877" ry="18"/>
<text text-anchor="middle" x="218.782" y="-10175.3" font-family="Times New Roman,serif" font-size="14.00">requestNewKeep</text>
</g>
<!-- TBTCSystem.requestNewKeep&#45;&gt;TBTCDepositToken.exists -->
<g id="edge349" class="edge"><title>TBTCSystem.requestNewKeep&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M278.597,-10168.5C324.695,-10164.1 386.686,-10167 421.564,-10206 482.365,-10274 394.397,-11781.2 457.564,-11847 556.543,-11950.1 995.815,-11788.5 1099.31,-11887 1180.29,-11964.1 1049.35,-12056.9 1127.31,-12137 1166.93,-12177.7 1237.64,-12176.6 1281.55,-12171.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1282.15,-12174.5 1291.57,-12169.6 1281.18,-12167.6 1282.15,-12174.5"/>
</g>
<!-- KeepFactorySelection.Storage.selectFactoryAndRefresh -->
<g id="node465" class="node"><title>KeepFactorySelection.Storage.selectFactoryAndRefresh</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="618.75" cy="-9093" rx="103.182" ry="18"/>
<text text-anchor="middle" x="618.75" y="-9089.3" font-family="Times New Roman,serif" font-size="14.00">selectFactoryAndRefresh</text>
</g>
<!-- TBTCSystem.requestNewKeep&#45;&gt;KeepFactorySelection.Storage.selectFactoryAndRefresh -->
<g id="edge350" class="edge"><title>TBTCSystem.requestNewKeep&#45;&gt;KeepFactorySelection.Storage.selectFactoryAndRefresh</title>
<path fill="none" stroke="white" stroke-width="2" d="M278.453,-10189.3C324.468,-10193.7 386.418,-10190.7 421.564,-10152 496.716,-10069.2 390.453,-9235.48 457.564,-9146 472.848,-9125.62 496.23,-9112.97 520.447,-9105.15"/>
<polygon fill="white" stroke="white" stroke-width="2" points="521.524,-9108.48 530.118,-9102.29 519.535,-9101.77 521.524,-9108.48"/>
</g>
<!-- _delayAmount.sub -->
<g id="node470" class="node"><title>_delayAmount.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="957.623" cy="-9367" rx="27" ry="18"/>
<text text-anchor="middle" x="957.623" y="-9363.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- TBTCSystem.getRemainingChangeTime&#45;&gt;_delayAmount.sub -->
<g id="edge351" class="edge"><title>TBTCSystem.getRemainingChangeTime&#45;&gt;_delayAmount.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M625.91,-10620C648.99,-10552.1 731.875,-10305.1 787.935,-10098 861.495,-9826.26 931.093,-9492.27 950.979,-9394.87"/>
<polygon fill="white" stroke="white" stroke-width="2" points="954.438,-9395.43 953.004,-9384.93 947.579,-9394.03 954.438,-9395.43"/>
</g>
<!-- TBTCSystemAuthority.&lt;Constructor&gt; -->
<g id="node308" class="node"><title>TBTCSystemAuthority.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-16215" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-16211.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- TBTCSystemAuthority.onlyTbtcSystem -->
<g id="node309" class="node"><title>TBTCSystemAuthority.onlyTbtcSystem</title>
<polygon fill="#edad56" stroke="#1bc6a6" stroke-width="3" points="295.635,-16149.5 295.635,-16164.5 250.615,-16175 186.949,-16175 141.929,-16164.5 141.929,-16149.5 186.949,-16139 250.615,-16139 295.635,-16149.5"/>
<polygon fill="none" stroke="#1bc6a6" stroke-width="3" points="299.644,-16146.4 299.644,-16167.6 251.08,-16179 186.484,-16179 137.92,-16167.6 137.92,-16146.4 186.484,-16135 251.08,-16135 299.644,-16146.4"/>
<text text-anchor="middle" x="218.782" y="-16153.3" font-family="Times New Roman,serif" font-size="14.00">onlyTbtcSystem</text>
</g>
<!-- TBTCToken.&lt;Constructor&gt; -->
<g id="node314" class="node"><title>TBTCToken.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11238" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11234.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- TBTCToken.mint -->
<g id="node315" class="node"><title>TBTCToken.mint</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11346" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11342.3" font-family="Times New Roman,serif" font-size="14.00">mint</text>
</g>
<!-- TBTCToken._mint -->
<g id="node319" class="node"><title>TBTCToken._mint</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11346" rx="31.3957" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11342.3" font-family="Times New Roman,serif" font-size="14.00">_mint</text>
</g>
<!-- TBTCToken.mint&#45;&gt;TBTCToken._mint -->
<g id="edge352" class="edge"><title>TBTCToken.mint&#45;&gt;TBTCToken._mint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1348.44,-11346C1412.63,-11346 1577.9,-11346 1654.88,-11346"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1655.14,-11349.5 1665.14,-11346 1655.14,-11342.5 1655.14,-11349.5"/>
</g>
<!-- TBTCToken.burnFrom -->
<g id="node316" class="node"><title>TBTCToken.burnFrom</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11184" rx="47.3916" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11180.3" font-family="Times New Roman,serif" font-size="14.00">burnFrom</text>
</g>
<!-- TBTCToken._burnFrom -->
<g id="node320" class="node"><title>TBTCToken._burnFrom</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11184" rx="51.9908" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11180.3" font-family="Times New Roman,serif" font-size="14.00">_burnFrom</text>
</g>
<!-- TBTCToken.burnFrom&#45;&gt;TBTCToken._burnFrom -->
<g id="edge353" class="edge"><title>TBTCToken.burnFrom&#45;&gt;TBTCToken._burnFrom</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1368.71,-11184C1435.82,-11184 1559.86,-11184 1634.3,-11184"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1634.47,-11187.5 1644.47,-11184 1634.47,-11180.5 1634.47,-11187.5"/>
</g>
<!-- TBTCToken.burn -->
<g id="node317" class="node"><title>TBTCToken.burn</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-10968" rx="27.0966" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-10964.3" font-family="Times New Roman,serif" font-size="14.00">burn</text>
</g>
<!-- TBTCToken._burn -->
<g id="node321" class="node"><title>TBTCToken._burn</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11022" rx="32.4942" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11018.3" font-family="Times New Roman,serif" font-size="14.00">_burn</text>
</g>
<!-- TBTCToken.burn&#45;&gt;TBTCToken._burn -->
<g id="edge354" class="edge"><title>TBTCToken.burn&#45;&gt;TBTCToken._burn</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1348.15,-10971.8C1412.02,-10981 1577.24,-11004.9 1654.51,-11016.1"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1654.41,-11019.6 1664.8,-11017.6 1655.41,-11012.7 1654.41,-11019.6"/>
</g>
<!-- TBTCToken.approveAndCall -->
<g id="node318" class="node"><title>TBTCToken.approveAndCall</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1321.19" cy="-11292" rx="70.3881" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11288.3" font-family="Times New Roman,serif" font-size="14.00">approveAndCall</text>
</g>
<!-- TBTCToken.approveAndCall&#45;&gt;ITokenRecipient.receiveApproval -->
<g id="edge356" class="edge"><title>TBTCToken.approveAndCall&#45;&gt;ITokenRecipient.receiveApproval</title>
<path fill="none" stroke="white" stroke-width="2" d="M1382.31,-11283C1423.56,-11280.6 1476.24,-11285.4 1507.08,-11319 1576.67,-11394.7 1467.01,-11703.9 1535.08,-11781 1555.79,-11804.5 1588.51,-11813.3 1619.01,-11815.7"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1619.06,-11819.2 1629.25,-11816.3 1619.46,-11812.2 1619.06,-11819.2"/>
</g>
<!-- TBTCToken.approveAndCall&#45;&gt;TBTCToken.approve -->
<g id="edge355" class="edge"><title>TBTCToken.approveAndCall&#45;&gt;TBTCToken.approve</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1383.19,-11300.6C1424.04,-11302.7 1475.87,-11297.5 1507.08,-11265 1590.59,-11177.9 1452.52,-11083 1535.08,-10995 1563.22,-10965 1611.24,-10960.4 1647.42,-10962"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1647.56,-10965.5 1657.76,-10962.6 1647.99,-10958.5 1647.56,-10965.5"/>
</g>
<!-- TBTCToken.totalSupply -->
<g id="node322" class="node"><title>TBTCToken.totalSupply</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11400" rx="51.9908" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11396.3" font-family="Times New Roman,serif" font-size="14.00">totalSupply</text>
</g>
<!-- VendingMachine.getMintedSupply -->
<g id="node327" class="node"><title>VendingMachine.getMintedSupply</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="1696.46" cy="-11512" rx="72.5877" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11508.3" font-family="Times New Roman,serif" font-size="14.00">getMintedSupply</text>
</g>
<!-- VendingMachine.canMint&#45;&gt;VendingMachine.getMintedSupply -->
<g id="edge377" class="edge"><title>VendingMachine.canMint&#45;&gt;VendingMachine.getMintedSupply</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1360.73,-11547C1421.34,-11540.6 1540.11,-11528.2 1618.63,-11520"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1619.38,-11523.5 1628.96,-11518.9 1618.65,-11516.5 1619.38,-11523.5"/>
</g>
<!-- VendingMachine.getMaxSupply -->
<g id="node328" class="node"><title>VendingMachine.getMaxSupply</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1696.46" cy="-11566" rx="63.8893" ry="18"/>
<text text-anchor="middle" x="1696.46" y="-11562.3" font-family="Times New Roman,serif" font-size="14.00">getMaxSupply</text>
</g>
<!-- VendingMachine.canMint&#45;&gt;VendingMachine.getMaxSupply -->
<g id="edge378" class="edge"><title>VendingMachine.canMint&#45;&gt;VendingMachine.getMaxSupply</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1361.43,-11552.6C1423.42,-11555.1 1544.94,-11560 1623.07,-11563.1"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1623.19,-11566.6 1633.32,-11563.5 1623.47,-11559.6 1623.19,-11566.6"/>
</g>
<!-- VendingMachine.&lt;Constructor&gt; -->
<g id="node326" class="node"><title>VendingMachine.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-11620" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11616.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- VendingMachine.getMintedSupply&#45;&gt;TBTCToken.totalSupply -->
<g id="edge357" class="edge"><title>VendingMachine.getMintedSupply&#45;&gt;TBTCToken.totalSupply</title>
<path fill="none" stroke="white" stroke-width="2" d="M1651.02,-11497.7C1612.91,-11485.6 1556.48,-11467.8 1507.08,-11453 1461.62,-11439.4 1409.64,-11424.5 1372.4,-11414"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1372.88,-11410.5 1362.31,-11411.2 1370.99,-11417.3 1372.88,-11410.5"/>
</g>
<!-- VendingMachine.isQualified -->
<g id="node329" class="node"><title>VendingMachine.isQualified</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-11618" rx="49.2915" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-11614.3" font-family="Times New Roman,serif" font-size="14.00">isQualified</text>
</g>
<!-- VendingMachine.tbtcToTdt -->
<g id="node330" class="node"><title>VendingMachine.tbtcToTdt</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-11644" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="957.623" y="-11640.3" font-family="Times New Roman,serif" font-size="14.00">tbtcToTdt</text>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.exists -->
<g id="edge358" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M995.638,-11655.4C1028.95,-11667.7 1076.12,-11691 1099.31,-11729 1146.65,-11806.6 1065.36,-12070.5 1127.31,-12137 1166.04,-12178.6 1237.03,-12177.2 1281.24,-12171.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1281.94,-12174.8 1291.33,-12169.9 1280.92,-12167.9 1281.94,-12174.8"/>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.transferFrom -->
<g id="edge363" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M995.547,-11655.4C1028.8,-11667.8 1075.92,-11691.1 1099.31,-11729 1140.77,-11796.1 1073.21,-12025.5 1127.31,-12083 1160.47,-12118.2 1216.78,-12122.5 1260.03,-12119.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1260.5,-12122.9 1270.16,-12118.6 1259.9,-12115.9 1260.5,-12122.9"/>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.ownerOf -->
<g id="edge362" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;TBTCDepositToken.ownerOf</title>
<path fill="none" stroke="white" stroke-width="2" d="M990.731,-11657.3C1021.63,-11671.5 1068.13,-11696.2 1099.31,-11729 1117.41,-11748 1109.09,-11762.1 1127.31,-11781 1171.18,-11826.5 1237.27,-11859.8 1279.57,-11878.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1278.43,-11881.4 1289,-11882 1281.15,-11874.9 1278.43,-11881.4"/>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;TBTCToken.balanceOf -->
<g id="edge360" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;TBTCToken.balanceOf</title>
<path fill="none" stroke="white" stroke-width="2" d="M1001.59,-11636C1034.17,-11627.5 1077.02,-11610.6 1099.31,-11578 1152.2,-11500.6 1063.46,-11225.7 1127.31,-11157 1162.24,-11119.4 1223.49,-11116.9 1267.61,-11121.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1267.27,-11124.6 1277.59,-11122.2 1268.03,-11117.6 1267.27,-11124.6"/>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;TBTCToken.burnFrom -->
<g id="edge361" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;TBTCToken.burnFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M1001.5,-11636C1034.03,-11627.4 1076.86,-11610.5 1099.31,-11578 1145.77,-11510.7 1071.32,-11270.6 1127.31,-11211 1162.53,-11173.5 1224.01,-11171 1268.11,-11175.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1267.75,-11178.7 1278.07,-11176.3 1268.51,-11171.7 1267.75,-11178.7"/>
</g>
<!-- VendingMachine.tbtcToTdt&#45;&gt;VendingMachine.isQualified -->
<g id="edge359" class="edge"><title>VendingMachine.tbtcToTdt&#45;&gt;VendingMachine.isQualified</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1005.52,-11640.6C1071.36,-11635.9 1191.09,-11627.3 1262.36,-11622.2"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1262.79,-11625.6 1272.52,-11621.4 1262.29,-11618.7 1262.79,-11625.6"/>
</g>
<!-- VendingMachine.tdtToTbtc -->
<g id="node331" class="node"><title>VendingMachine.tdtToTbtc</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="957.623" cy="-11551" rx="48.9926" ry="18"/>
<text text-anchor="middle" x="957.623" y="-11547.3" font-family="Times New Roman,serif" font-size="14.00">tdtToTbtc</text>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;Deposit.signerFee -->
<g id="edge367" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;Deposit.signerFee</title>
<path fill="none" stroke="white" stroke-width="2" d="M961.541,-11532.8C978.621,-11425.5 1066.01,-10864 1099.31,-10402 1101.85,-10366.8 1103.86,-9158.37 1127.31,-9132 1162.12,-9092.85 1225.45,-9091.2 1270.02,-9096"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1269.72,-9099.49 1280.07,-9097.22 1270.57,-9092.54 1269.72,-9099.49"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;Deposit.lotSizeTbtc -->
<g id="edge368" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;Deposit.lotSizeTbtc</title>
<path fill="none" stroke="white" stroke-width="2" d="M962.835,-11533C982.855,-11446.4 1068.7,-11063.8 1099.31,-10745 1103.31,-10703.4 1099.58,-9271.29 1127.31,-9240 1160.7,-9202.32 1220.51,-9199.34 1264.7,-9203.44"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1264.41,-9206.93 1274.72,-9204.51 1265.15,-9199.97 1264.41,-9206.93"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;FeeRebateToken.mint -->
<g id="edge376" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;FeeRebateToken.mint</title>
<path fill="none" stroke="white" stroke-width="2" d="M973.569,-11533.9C1003.71,-11498.1 1071.3,-11411.8 1099.31,-11326 1126.13,-11243.8 1082.77,-11012.1 1127.31,-10938 1163.29,-10878.2 1241.45,-10843.3 1286.45,-10827.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1287.72,-10830.7 1296.06,-10824.1 1285.47,-10824.1 1287.72,-10830.7"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;FeeRebateToken.exists -->
<g id="edge375" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;FeeRebateToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M973.743,-11533.9C1004.21,-11498.3 1072.36,-11412.2 1099.31,-11326 1118.9,-11263.4 1083.08,-10784.5 1127.31,-10736 1165.71,-10693.9 1237.12,-10695.5 1281.45,-10701.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1281.15,-10705 1291.56,-10703.1 1282.19,-10698.1 1281.15,-10705"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCDepositToken.exists -->
<g id="edge364" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M1001.7,-11558.9C1034.34,-11567.3 1077.22,-11584.2 1099.31,-11617 1131.64,-11665 1088.18,-12094.4 1127.31,-12137 1165.84,-12179 1237.21,-12177.4 1281.5,-12171.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1282.22,-12174.8 1291.59,-12169.9 1281.19,-12167.9 1282.22,-12174.8"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCDepositToken.transferFrom -->
<g id="edge366" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCDepositToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M1001.64,-11558.9C1034.25,-11567.4 1077.12,-11584.3 1099.31,-11617 1157.55,-11702.9 1056.91,-12006.8 1127.31,-12083 1160.24,-12118.6 1216.85,-12122.8 1260.26,-12119.6"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1260.77,-12123.1 1270.42,-12118.7 1260.15,-12116.1 1260.77,-12123.1"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.balanceOf -->
<g id="edge370" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.balanceOf</title>
<path fill="none" stroke="white" stroke-width="2" d="M972.922,-11533.6C1001.87,-11497.5 1067.37,-11410.5 1099.31,-11326 1126.24,-11254.8 1072.8,-11210.2 1127.31,-11157 1163.62,-11121.6 1223.58,-11118.4 1267.03,-11121.8"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1266.86,-11125.3 1277.14,-11122.8 1267.5,-11118.4 1266.86,-11125.3"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint -->
<g id="edge371" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint</title>
<path fill="none" stroke="white" stroke-width="2" d="M979.508,-11534.9C1010.44,-11520.6 1068.12,-11501.5 1099.31,-11463 1130.54,-11424.5 1090.3,-11388 1127.31,-11355 1173.26,-11314 1251.42,-11317.7 1292.72,-11329.7"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1291.8,-11333.1 1302.39,-11332.9 1294,-11326.4 1291.8,-11333.1"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint -->
<g id="edge373" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint</title>
<path fill="none" stroke="white" stroke-width="2" d="M998.392,-11541.1C1030.25,-11531.1 1073.71,-11512.6 1099.31,-11481 1130.54,-11442.5 1090.3,-11406 1127.31,-11373 1170.56,-11334.4 1242.34,-11335.4 1285.07,-11340.3"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1284.66,-11343.7 1295.02,-11341.5 1285.54,-11336.8 1284.66,-11343.7"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint -->
<g id="edge374" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;TBTCToken.mint</title>
<path fill="none" stroke="white" stroke-width="2" d="M1005.96,-11553.8C1036.85,-11546.2 1075.68,-11528.1 1099.31,-11499 1130.54,-11460.5 1090.3,-11424 1127.31,-11391 1170.82,-11352.2 1243.2,-11353.4 1285.83,-11352.8"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1286.07,-11356.3 1296,-11352.6 1285.93,-11349.3 1286.07,-11356.3"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;VendingMachine.canMint -->
<g id="edge369" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;VendingMachine.canMint</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1006.64,-11551C1075.34,-11551 1201.05,-11551 1270.61,-11551"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1270.87,-11554.5 1280.86,-11551 1270.86,-11547.5 1270.87,-11554.5"/>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;VendingMachine.isQualified -->
<g id="edge365" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;VendingMachine.isQualified</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M1001.52,-11558.9C1067.67,-11571.2 1194.45,-11594.7 1266.56,-11608.1"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="1266.32,-11611.6 1276.79,-11610 1267.6,-11604.7 1266.32,-11611.6"/>
</g>
<!-- depositValue.sub -->
<g id="node471" class="node"><title>depositValue.sub</title>
<ellipse fill="#edad56" stroke="#edad56" stroke-width="3" cx="1321.19" cy="-1550" rx="27" ry="18"/>
<text text-anchor="middle" x="1321.19" y="-1546.3" font-family="Times New Roman,serif" font-size="14.00">sub</text>
</g>
<!-- VendingMachine.tdtToTbtc&#45;&gt;depositValue.sub -->
<g id="edge372" class="edge"><title>VendingMachine.tdtToTbtc&#45;&gt;depositValue.sub</title>
<path fill="none" stroke="white" stroke-width="2" d="M960.241,-11533C973.8,-11381.3 1068.71,-10300 1099.31,-9420 1101.2,-9365.75 1094.32,-1646.11 1127.31,-1603 1163.84,-1555.25 1239.17,-1547.85 1284.12,-1548.05"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1284.25,-1551.56 1294.31,-1548.23 1284.37,-1544.56 1284.25,-1551.56"/>
</g>
<!-- VendingMachine.unqualifiedDepositToTbtc -->
<g id="node332" class="node"><title>VendingMachine.unqualifiedDepositToTbtc</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-11566" rx="106.681" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11562.3" font-family="Times New Roman,serif" font-size="14.00">unqualifiedDepositToTbtc</text>
</g>
<!-- VendingMachine.unqualifiedDepositToTbtc&#45;&gt;Deposit.provideBTCFundingProof -->
<g id="edge379" class="edge"><title>VendingMachine.unqualifiedDepositToTbtc&#45;&gt;Deposit.provideBTCFundingProof</title>
<path fill="none" stroke="white" stroke-width="2" d="M725.432,-11565.8C747.921,-11561.4 770.202,-11553.3 787.935,-11539 1083.12,-11301.2 1024.48,-11116.6 1099.31,-10745 1112.27,-10680.7 1083.66,-9613.01 1127.31,-9564 1151.57,-9536.77 1189.63,-9527.69 1225.55,-9526.3"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1225.68,-9529.8 1235.61,-9526.11 1225.54,-9522.8 1225.68,-9529.8"/>
</g>
<!-- VendingMachine.unqualifiedDepositToTbtc&#45;&gt;VendingMachine.tdtToTbtc -->
<g id="edge380" class="edge"><title>VendingMachine.unqualifiedDepositToTbtc&#45;&gt;VendingMachine.tdtToTbtc</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M722.195,-11561.4C780.084,-11558.9 850.327,-11555.7 898.742,-11553.6"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="899.199,-11557.1 909.033,-11553.1 898.888,-11550.1 899.199,-11557.1"/>
</g>
<!-- VendingMachine.tbtcToBtc -->
<g id="node333" class="node"><title>VendingMachine.tbtcToBtc</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="618.75" cy="-11512" rx="48.1917" ry="18"/>
<text text-anchor="middle" x="618.75" y="-11508.3" font-family="Times New Roman,serif" font-size="14.00">tbtcToBtc</text>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;Deposit.lotSizeTbtc -->
<g id="edge383" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;Deposit.lotSizeTbtc</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.318,-11517.9C703.222,-11520.4 758.005,-11516.5 787.935,-11482 808.844,-11457.9 799.159,-10938.7 807.935,-10908 879.315,-10658.5 1029.27,-10651.9 1099.31,-10402 1116.74,-10339.8 1084.35,-9288.21 1127.31,-9240 1160.7,-9202.53 1220.22,-9199.43 1264.34,-9203.45"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1264.04,-9206.94 1274.35,-9204.5 1264.77,-9199.97 1264.04,-9206.94"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;Deposit.transferAndRequestRedemption -->
<g id="edge388" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;Deposit.transferAndRequestRedemption</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.073,-11518C703.091,-11520.6 758.191,-11516.9 787.935,-11482 826.888,-11436.3 778.926,-10454.5 807.935,-10402 882.787,-10266.5 1024.25,-10346.4 1099.31,-10211 1134.19,-10148.1 1079.5,-8969.78 1127.31,-8916 1146.99,-8893.86 1175.78,-8883.71 1205.15,-8879.94"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1205.54,-8883.42 1215.12,-8878.9 1204.81,-8876.46 1205.54,-8883.42"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;Deposit.getOwnerRedemptionTbtcRequirement -->
<g id="edge385" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;Deposit.getOwnerRedemptionTbtcRequirement</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.096,-11518.1C703.129,-11520.6 758.239,-11516.9 787.935,-11482 810.818,-11455.1 801.463,-10245.7 807.935,-10211 876.606,-9842.7 1024.31,-9787.07 1099.31,-9420 1111.74,-9359.18 1085.41,-8907.8 1127.31,-8862 1136.13,-8852.35 1146.69,-8845.01 1158.26,-8839.48"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1159.92,-8842.58 1167.74,-8835.43 1157.17,-8836.14 1159.92,-8842.58"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;TBTCDepositToken.exists -->
<g id="edge381" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;TBTCDepositToken.exists</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.425,-11506C702.581,-11503.5 756.187,-11507 787.935,-11539 829.707,-11581.1 773.189,-11622.9 807.935,-11671 892.99,-11788.7 1017.98,-11698.7 1099.31,-11819 1139.03,-11877.8 1078.45,-12085.6 1127.31,-12137 1166.44,-12178.2 1237.3,-12176.9 1281.38,-12171.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1282.03,-12174.7 1291.43,-12169.8 1281.04,-12167.7 1282.03,-12174.7"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;TBTCDepositToken.approve -->
<g id="edge384" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;TBTCDepositToken.approve</title>
<path fill="none" stroke="white" stroke-width="2" d="M666.433,-11509.1C840.576,-11498.5 1445.46,-11466.5 1507.08,-11524 1562.49,-11575.7 1484.29,-11807.7 1535.08,-11864 1562.71,-11894.6 1610.8,-11900.1 1647.14,-11899.2"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1647.69,-11902.6 1657.53,-11898.7 1647.38,-11895.6 1647.69,-11902.6"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.transferFrom -->
<g id="edge386" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.transferFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.732,-11517.7C703.359,-11519.8 757.487,-11515.6 787.935,-11482 826.817,-11439 773.076,-11268.3 807.935,-11222 912.859,-11082.7 1141.24,-11069.4 1254.21,-11072.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1254.34,-11075.6 1264.44,-11072.4 1254.54,-11068.6 1254.34,-11075.6"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.approve -->
<g id="edge387" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.approve</title>
<path fill="none" stroke="white" stroke-width="2" d="M664.577,-11517.9C703.376,-11520.2 757.851,-11516.2 787.935,-11482 817.634,-11448.3 782.28,-11114.9 807.935,-11078 988.683,-10818 1191.24,-10918.5 1507.08,-10941 1555.58,-10944.5 1610.57,-10952.9 1648.56,-10959.4"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1648.36,-10962.9 1658.81,-10961.2 1649.56,-10956 1648.36,-10962.9"/>
</g>
<!-- VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.burnFrom -->
<g id="edge382" class="edge"><title>VendingMachine.tbtcToBtc&#45;&gt;TBTCToken.burnFrom</title>
<path fill="none" stroke="white" stroke-width="2" d="M666.544,-11509.9C701.348,-11506.8 749.298,-11499.5 787.935,-11482 963.772,-11402.4 950.014,-11287.3 1127.31,-11211 1170.6,-11192.4 1223.92,-11186 1263.52,-11184.1"/>
<polygon fill="white" stroke="white" stroke-width="2" points="1263.68,-11187.6 1273.53,-11183.7 1263.4,-11180.6 1263.68,-11187.6"/>
</g>
<!-- VendingMachineAuthority.&lt;Constructor&gt; -->
<g id="node334" class="node"><title>VendingMachineAuthority.&lt;Constructor&gt;</title>
<ellipse fill="#ff9797" stroke="#ff9797" stroke-width="3" cx="218.782" cy="-16360" rx="65.7887" ry="18"/>
<text text-anchor="middle" x="218.782" y="-16356.3" font-family="Times New Roman,serif" font-size="14.00">&lt;Constructor&gt;</text>
</g>
<!-- VendingMachineAuthority.onlyVendingMachine -->
<g id="node335" class="node"><title>VendingMachineAuthority.onlyVendingMachine</title>
<polygon fill="#edad56" stroke="#1bc6a6" stroke-width="3" points="312.828,-16294.5 312.828,-16309.5 257.737,-16320 179.827,-16320 124.736,-16309.5 124.736,-16294.5 179.827,-16284 257.737,-16284 312.828,-16294.5"/>
<polygon fill="none" stroke="#1bc6a6" stroke-width="3" points="316.819,-16291.2 316.819,-16312.8 258.115,-16324 179.449,-16324 120.745,-16312.8 120.745,-16291.2 179.449,-16280 258.115,-16280 316.819,-16291.2"/>
<text text-anchor="middle" x="218.782" y="-16298.3" font-family="Times New Roman,serif" font-size="14.00">onlyVendingMachine</text>
</g>
<!-- IMedianizer.read -->
<g id="node337" class="node"><title>IMedianizer.read</title>
<ellipse fill="#ffbdb9" stroke="#ffbdb9" stroke-width="3" cx="618.75" cy="-8300" rx="27" ry="18"/>
<text text-anchor="middle" x="618.75" y="-8296.3" font-family="Times New Roman,serif" font-size="14.00">read</text>
</g>
<!-- key -->
<g id="node472" class="node"><title>key</title>
<polygon fill="#edad56" stroke="none" stroke-width="3" points="284.282,-16510 153.282,-16510 153.282,-16426 284.282,-16426 284.282,-16510"/>
<text text-anchor="start" x="207.782" y="-16492.8" font-family="Times New Roman,serif" font-size="14.00">Internal Call</text>
<text text-anchor="start" x="203.782" y="-16473.8" font-family="Times New Roman,serif" font-size="14.00">External Call</text>
<text text-anchor="start" x="177.782" y="-16454.8" font-family="Times New Roman,serif" font-size="14.00">Defined Contract</text>
<text text-anchor="start" x="163.782" y="-16435.8" font-family="Times New Roman,serif" font-size="14.00">Undefined Contract</text>
</g>
<!-- key2 -->
<g id="node473" class="node"><title>key2</title>
<polygon fill="#edad56" stroke="none" stroke-width="3" points="645.75,-16510.5 591.75,-16510.5 591.75,-16425.5 645.75,-16425.5 645.75,-16510.5"/>
<text text-anchor="start" x="612.75" y="-16492.8" font-family="Times New Roman,serif" font-size="14.00">   </text>
<text text-anchor="start" x="612.75" y="-16473.8" font-family="Times New Roman,serif" font-size="14.00">   </text>
<polygon fill="#445773" stroke="none" points="608.75,-16449 608.75,-16468 628.75,-16468 628.75,-16449 608.75,-16449"/>
<text text-anchor="start" x="612.75" y="-16454.8" font-family="Times New Roman,serif" font-size="14.00">   </text>
<polygon fill="none" stroke="#e8726d" points="610.75,-16431 610.75,-16447 626.75,-16447 626.75,-16431 610.75,-16431"/>
</g>
<!-- key&#45;&gt;key2 -->
<g id="edge389" class="edge"><title>key:i1:e&#45;&gt;key2:i1:w</title>
<path fill="none" stroke="#1bc6a6" stroke-width="2" d="M277.782,-16497C420.997,-16497 459.318,-16497 597.617,-16497"/>
<polygon fill="#1bc6a6" stroke="#1bc6a6" stroke-width="2" points="597.75,-16500.5 607.75,-16497 597.75,-16493.5 597.75,-16500.5"/>
</g>
<!-- key&#45;&gt;key2 -->
<g id="edge390" class="edge"><title>key:i2:e&#45;&gt;key2:i2:w</title>
<path fill="none" stroke="white" stroke-width="2" d="M277.782,-16478C420.997,-16478 459.318,-16478 597.617,-16478"/>
<polygon fill="white" stroke="white" stroke-width="2" points="597.75,-16481.5 607.75,-16478 597.75,-16474.5 597.75,-16481.5"/>
</g>
</g>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment