@keep-network/tbtc-v2 1.8.0 → 1.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/artifacts/Bridge.json +1998 -1972
  2. package/artifacts/Bridge_v2_Implementation.json +2817 -0
  3. package/artifacts/Deposit.json +7 -7
  4. package/artifacts/Redemption.json +95 -171
  5. package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
  6. package/build/contracts/Timelock.sol/Timelock.dbg.json +1 -1
  7. package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
  8. package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
  9. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
  10. package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +2 -2
  11. package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
  12. package/build/contracts/bridge/Bridge.sol/Bridge.json +74 -48
  13. package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.dbg.json +1 -1
  14. package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +2 -2
  15. package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
  16. package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
  17. package/build/contracts/bridge/BridgeState.sol/BridgeState.json +2 -2
  18. package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
  19. package/build/contracts/bridge/Deposit.sol/Deposit.json +2 -2
  20. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
  21. package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +2 -2
  22. package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
  23. package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
  24. package/build/contracts/bridge/Fraud.sol/Fraud.json +2 -2
  25. package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
  26. package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
  27. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
  28. package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +2 -2
  29. package/build/contracts/bridge/Redemption.sol/IRedemptionWatchtower.dbg.json +1 -1
  30. package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
  31. package/build/contracts/bridge/Redemption.sol/OutboundTx.json +2 -2
  32. package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
  33. package/build/contracts/bridge/Redemption.sol/Redemption.json +2 -2
  34. package/build/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.dbg.json +1 -1
  35. package/build/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.json +2 -2
  36. package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
  37. package/build/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.dbg.json +1 -1
  38. package/build/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.dbg.json +1 -1
  39. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.dbg.json +1 -1
  40. package/build/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +2 -2
  41. package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
  42. package/build/contracts/bridge/Wallets.sol/Wallets.json +2 -2
  43. package/build/contracts/cross-chain/AbstractL1BTCDepositor.sol/AbstractL1BTCDepositor.dbg.json +1 -1
  44. package/build/contracts/cross-chain/L2TBTC.sol/L2TBTC.dbg.json +1 -1
  45. package/build/contracts/cross-chain/starknet/StarkNetBitcoinDepositor.sol/StarkNetBitcoinDepositor.dbg.json +1 -1
  46. package/build/contracts/cross-chain/starknet/interfaces/IStarkGateBridge.sol/IStarkGateBridge.dbg.json +1 -1
  47. package/build/contracts/cross-chain/utils/Crosschain.sol/CrosschainUtils.dbg.json +1 -1
  48. package/build/contracts/cross-chain/wormhole/BTCDepositorWormhole.sol/BTCDepositorWormhole.dbg.json +1 -1
  49. package/build/contracts/cross-chain/wormhole/L1BTCDepositorWormhole.sol/L1BTCDepositorWormhole.dbg.json +1 -1
  50. package/build/contracts/cross-chain/wormhole/L2BTCDepositorWormhole.sol/L2BTCDepositorWormhole.dbg.json +1 -1
  51. package/build/contracts/cross-chain/wormhole/L2WormholeGateway.sol/L2WormholeGateway.dbg.json +1 -1
  52. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormhole.dbg.json +1 -1
  53. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeGateway.dbg.json +1 -1
  54. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeReceiver.dbg.json +1 -1
  55. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeRelayer.dbg.json +1 -1
  56. package/build/contracts/cross-chain/wormhole/Wormhole.sol/IWormholeTokenBridge.dbg.json +1 -1
  57. package/build/contracts/cross-chain/wormhole/Wormhole.sol/WormholeTypes.dbg.json +1 -1
  58. package/build/contracts/cross-chain/wormhole/Wormhole.sol/WormholeUtils.dbg.json +1 -1
  59. package/build/contracts/integrator/AbstractBTCDepositor.sol/AbstractBTCDepositor.dbg.json +1 -1
  60. package/build/contracts/integrator/IBridge.sol/IBridge.dbg.json +1 -1
  61. package/build/contracts/integrator/IBridge.sol/IBridgeTypes.dbg.json +1 -1
  62. package/build/contracts/integrator/ITBTCVault.sol/ITBTCVault.dbg.json +1 -1
  63. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
  64. package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +2 -2
  65. package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
  66. package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
  67. package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
  68. package/build/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.dbg.json +1 -1
  69. package/build/contracts/test/BankStub.sol/BankStub.dbg.json +1 -1
  70. package/build/contracts/test/BridgeStub.sol/BridgeStub.dbg.json +1 -1
  71. package/build/contracts/test/BridgeStub.sol/BridgeStub.json +74 -48
  72. package/build/contracts/test/HeartbeatStub.sol/HeartbeatStub.dbg.json +1 -1
  73. package/build/contracts/test/LightRelayStub.sol/LightRelayStub.dbg.json +1 -1
  74. package/build/contracts/test/MockBridgeForStarkNet.sol/MockBridgeForStarkNet.dbg.json +1 -1
  75. package/build/contracts/test/MockStarkGateBridge.sol/MockStarkGateBridge.dbg.json +1 -1
  76. package/build/contracts/test/MockTBTCBridge.sol/MockTBTCBridge.dbg.json +1 -1
  77. package/build/contracts/test/MockTBTCBridgeWithSweep.sol/MockTBTCBridgeWithSweep.dbg.json +1 -1
  78. package/build/contracts/test/MockTBTCToken.sol/MockTBTCToken.dbg.json +1 -1
  79. package/build/contracts/test/MockTBTCVault.sol/MockTBTCVault.dbg.json +1 -1
  80. package/build/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.dbg.json +1 -1
  81. package/build/contracts/test/ReentrancyAttacker.sol/ReentrancyAttacker.dbg.json +1 -1
  82. package/build/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.dbg.json +1 -1
  83. package/build/contracts/test/SystemTestRelay.sol/SystemTestRelay.dbg.json +1 -1
  84. package/build/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +2 -2
  85. package/build/contracts/test/TestBTCDepositor.sol/MockBridge.dbg.json +1 -1
  86. package/build/contracts/test/TestBTCDepositor.sol/MockTBTCVault.dbg.json +1 -1
  87. package/build/contracts/test/TestBTCDepositor.sol/TestBTCDepositor.dbg.json +1 -1
  88. package/build/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.dbg.json +1 -1
  89. package/build/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +2 -2
  90. package/build/contracts/test/TestERC20.sol/TestERC20.dbg.json +1 -1
  91. package/build/contracts/test/TestERC721.sol/TestERC721.dbg.json +1 -1
  92. package/build/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.dbg.json +1 -1
  93. package/build/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.dbg.json +1 -1
  94. package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
  95. package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
  96. package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
  97. package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
  98. package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
  99. package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +2 -2
  100. package/contracts/bridge/Bridge.sol +34 -0
  101. package/contracts/bridge/Deposit.sol +7 -5
  102. package/deploy/80_upgrade_bridge_v2.ts +107 -54
  103. package/deploy/81_upgrade_bridge_v2_vault_fix.ts +160 -0
  104. package/export/artifacts/contracts/bridge/Bridge.sol/Bridge.json +4891 -4170
  105. package/export/artifacts/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +207 -207
  106. package/export/artifacts/contracts/bridge/RedemptionWatchtower.sol/RedemptionWatchtower.json +104 -104
  107. package/export/artifacts/contracts/bridge/VendingMachine.sol/VendingMachine.json +67 -67
  108. package/export/artifacts/contracts/bridge/VendingMachineV2.sol/VendingMachineV2.json +24 -24
  109. package/export/artifacts/contracts/bridge/VendingMachineV3.sol/VendingMachineV3.json +26 -26
  110. package/export/artifacts/contracts/bridge/WalletProposalValidator.sol/WalletProposalValidator.json +72 -72
  111. package/export/artifacts/contracts/cross-chain/L2TBTC.sol/L2TBTC.json +40 -40
  112. package/export/artifacts/contracts/cross-chain/starknet/StarkNetBitcoinDepositor.sol/StarkNetBitcoinDepositor.json +3360 -3360
  113. package/export/artifacts/contracts/cross-chain/wormhole/BTCDepositorWormhole.sol/BTCDepositorWormhole.json +117 -117
  114. package/export/artifacts/contracts/cross-chain/wormhole/L1BTCDepositorWormhole.sol/L1BTCDepositorWormhole.json +140 -140
  115. package/export/artifacts/contracts/cross-chain/wormhole/L2BTCDepositorWormhole.sol/L2BTCDepositorWormhole.json +37 -37
  116. package/export/artifacts/contracts/cross-chain/wormhole/L2WormholeGateway.sol/L2WormholeGateway.json +51 -51
  117. package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +103 -103
  118. package/export/artifacts/contracts/relay/LightRelay.sol/LightRelay.json +57 -57
  119. package/export/artifacts/contracts/relay/LightRelayMaintainerProxy.sol/LightRelayMaintainerProxy.json +31 -31
  120. package/export/artifacts/contracts/test/BankStub.sol/BankStub.json +2 -2
  121. package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +5130 -4414
  122. package/export/artifacts/contracts/test/HeartbeatStub.sol/HeartbeatStub.json +4 -4
  123. package/export/artifacts/contracts/test/LightRelayStub.sol/LightRelayStub.json +59 -59
  124. package/export/artifacts/contracts/test/MockBridgeForStarkNet.sol/MockBridgeForStarkNet.json +730 -730
  125. package/export/artifacts/contracts/test/MockStarkGateBridge.sol/MockStarkGateBridge.json +956 -956
  126. package/export/artifacts/contracts/test/MockTBTCBridge.sol/MockTBTCBridge.json +781 -781
  127. package/export/artifacts/contracts/test/MockTBTCBridgeWithSweep.sol/MockTBTCBridgeWithSweep.json +458 -458
  128. package/export/artifacts/contracts/test/MockTBTCToken.sol/MockTBTCToken.json +1273 -1273
  129. package/export/artifacts/contracts/test/MockTBTCVault.sol/MockTBTCVault.json +305 -305
  130. package/export/artifacts/contracts/test/ReceiveApprovalStub.sol/ReceiveApprovalStub.json +7 -7
  131. package/export/artifacts/contracts/test/ReentrancyAttacker.sol/ReentrancyAttacker.json +204 -204
  132. package/export/artifacts/contracts/test/SepoliaLightRelay.sol/SepoliaLightRelay.json +59 -59
  133. package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +19 -19
  134. package/export/artifacts/contracts/test/TestBTCDepositor.sol/MockBridge.json +34 -34
  135. package/export/artifacts/contracts/test/TestBTCDepositor.sol/MockTBTCVault.json +20 -20
  136. package/export/artifacts/contracts/test/TestBTCDepositor.sol/TestBTCDepositor.json +52 -52
  137. package/export/artifacts/contracts/test/TestBitcoinTx.sol/TestBitcoinTx.json +124 -124
  138. package/export/artifacts/contracts/test/TestERC20.sol/TestERC20.json +6 -6
  139. package/export/artifacts/contracts/test/TestERC721.sol/TestERC721.json +8 -8
  140. package/export/artifacts/contracts/test/TestEcdsaLib.sol/TestEcdsaLib.json +4 -4
  141. package/export/artifacts/contracts/test/WormholeBridgeStub.sol/WormholeBridgeStub.json +37 -37
  142. package/export/artifacts/contracts/token/TBTC.sol/TBTC.json +2 -2
  143. package/export/artifacts/contracts/vault/DonationVault.sol/DonationVault.json +11 -11
  144. package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +144 -144
  145. package/export/deploy/80_upgrade_bridge_v2.js +127 -90
  146. package/export/deploy/81_upgrade_bridge_v2_vault_fix.js +211 -0
  147. package/export/typechain/AbstractBTCRedeemer.js +2 -0
  148. package/export/typechain/IBank.js +2 -0
  149. package/export/typechain/IL2WormholeGateway.js +2 -0
  150. package/export/typechain/INttManager.js +2 -0
  151. package/export/typechain/INttManagerWithExecutor.js +2 -0
  152. package/export/typechain/L1BTCDepositorNtt.js +2 -0
  153. package/export/typechain/L1BTCDepositorNttWithExecutor.js +2 -0
  154. package/export/typechain/L1BTCRedeemerWormhole.js +2 -0
  155. package/export/typechain/L2BTCRedeemerWormhole.js +2 -0
  156. package/export/typechain/MockBank.js +2 -0
  157. package/export/typechain/MockBridgeWithRebateStaking.js +2 -0
  158. package/export/typechain/MockL1BTCRedeemerWormhole.js +2 -0
  159. package/export/typechain/MockNttManager.js +2 -0
  160. package/export/typechain/MockNttManagerWithExecutor.js +2 -0
  161. package/export/typechain/NativeBTCDepositor.js +2 -0
  162. package/export/typechain/RebateStaking.js +2 -0
  163. package/export/typechain/TestBTCRedeemer.js +2 -0
  164. package/export/typechain/TestBTCUtilsHelper.js +2 -0
  165. package/export/typechain/TransceiverStructs.js +2 -0
  166. package/export/typechain/factories/AbstractBTCRedeemer__factory.js +204 -0
  167. package/export/typechain/factories/BridgeGovernance__factory.js +1 -1
  168. package/export/typechain/factories/BridgeState__factory.js +1 -1
  169. package/export/typechain/factories/BridgeStub__factory.js +27 -1
  170. package/export/typechain/factories/Bridge__factory.js +27 -1
  171. package/export/typechain/factories/DepositSweep__factory.js +1 -1
  172. package/export/typechain/factories/Deposit__factory.js +1 -1
  173. package/export/typechain/factories/Fraud__factory.js +1 -1
  174. package/export/typechain/factories/IBank__factory.js +138 -0
  175. package/export/typechain/factories/IL2WormholeGateway__factory.js +61 -0
  176. package/export/typechain/factories/INttManagerWithExecutor__factory.js +183 -0
  177. package/export/typechain/factories/INttManager__factory.js +51 -0
  178. package/export/typechain/factories/L1BTCDepositorNttWithExecutor__factory.js +1454 -0
  179. package/export/typechain/factories/L1BTCDepositorNtt__factory.js +920 -0
  180. package/export/typechain/factories/L1BTCRedeemerWormhole__factory.js +622 -0
  181. package/export/typechain/factories/L2BTCRedeemerWormhole__factory.js +348 -0
  182. package/export/typechain/factories/MaintainerProxy__factory.js +1 -1
  183. package/export/typechain/factories/MockBank__factory.js +248 -0
  184. package/export/typechain/factories/MockBridgeWithRebateStaking__factory.js +129 -0
  185. package/export/typechain/factories/MockL1BTCRedeemerWormhole__factory.js +638 -0
  186. package/export/typechain/factories/MockNttManagerWithExecutor__factory.js +423 -0
  187. package/export/typechain/factories/MockNttManager__factory.js +211 -0
  188. package/export/typechain/factories/MovingFunds__factory.js +1 -1
  189. package/export/typechain/factories/NativeBTCDepositor__factory.js +635 -0
  190. package/export/typechain/factories/RebateStaking__factory.js +720 -0
  191. package/export/typechain/factories/RedemptionWatchtower__factory.js +1 -1
  192. package/export/typechain/factories/Redemption__factory.js +1 -1
  193. package/export/typechain/factories/SystemTestRelay__factory.js +1 -1
  194. package/export/typechain/factories/TBTCVault__factory.js +1 -1
  195. package/export/typechain/factories/TestBTCRedeemer__factory.js +425 -0
  196. package/export/typechain/factories/TestBTCUtilsHelper__factory.js +109 -0
  197. package/export/typechain/factories/TestBitcoinTx__factory.js +1 -1
  198. package/export/typechain/factories/TransceiverStructs__factory.js +853 -0
  199. package/export/typechain/factories/WalletProposalValidator__factory.js +1 -1
  200. package/export/typechain/factories/Wallets__factory.js +1 -1
  201. package/export/typechain/index.js +40 -2
  202. package/export.json +40910 -0
  203. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  {
2
- "address": "0xCD2EbDA2beA80484C55675e1965149054dCcD137",
2
+ "address": "0x9C6aDa0beD100b0807779E2518E1638277768739",
3
3
  "abi": [
4
4
  {
5
5
  "anonymous": false,
@@ -66,15 +66,15 @@
66
66
  "transactionHash": "0x1e51b7e3cec8b30f51b72ce93814849698af163af8705b13a8ceaa5b4c268b7d",
67
67
  "receipt": {
68
68
  "to": null,
69
- "from": "0x123694886DBf5Ac94DDA07135349534536D14cAf",
70
- "contractAddress": "0xCD2EbDA2beA80484C55675e1965149054dCcD137",
69
+ "from": "0x716089154304f22a2F9c8d2f8C45815183BF3532",
70
+ "contractAddress": "0x9C6aDa0beD100b0807779E2518E1638277768739",
71
71
  "transactionIndex": 93,
72
72
  "gasUsed": "1535019",
73
73
  "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
74
74
  "blockHash": "0x5298c113234c075234c59e6443bc0cdf78d329c431c21a42ef54e4d9ed7e4efd",
75
- "transactionHash": "0x1e51b7e3cec8b30f51b72ce93814849698af163af8705b13a8ceaa5b4c268b7d",
75
+ "transactionHash": "0xe3a96c3819709381d8305093135385870e5bf9bbc8a7236e82ce39d301d8ea0a",
76
76
  "logs": [],
77
- "blockNumber": 19411941,
77
+ "blockNumber": 24493299,
78
78
  "cumulativeGasUsed": "8637491",
79
79
  "status": 1,
80
80
  "byzantium": true
@@ -86,7 +86,7 @@
86
86
  "bytecode": "0x611aee61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c8063aea7fd0b14610045578063e4f3925d14610067575b600080fd5b81801561005157600080fd5b50610065610060366004611418565b610087565b005b81801561007357600080fd5b50610065610082366004611471565b610099565b61009483838360006100fd565b505050565b806100eb5760405162461bcd60e51b815260206004820152601c60248201527f45787472612064617461206d757374206e6f7420626520656d7074790000000060448201526064015b60405180910390fd5b6100f7848484846100fd565b50505050565b6001601b8501600061011560608601604087016114e9565b6bffffffffffffffffffffffff19168152602081019190915260400160002060020154600160c01b900460ff166005811115610153576101536114d3565b146101a05760405162461bcd60e51b815260206004820152601c60248201527f57616c6c6574206d75737420626520696e204c6976652073746174650000000060448201526064016100e2565b60006101b260c0840160a08501611518565b6001600160a01b031614806101f657506014840160006101d860c0850160a08601611518565b6001600160a01b0316815260208101919091526040016000205460ff165b6102425760405162461bcd60e51b815260206004820152601460248201527f5661756c74206973206e6f74207472757374656400000000000000000000000060448201526064016100e2565b6006840154600160c01b900463ffffffff1615610272576102728461026d60a0850160808601611541565b61082b565b6060816102e4573361028a604085016020860161156b565b61029a60608601604087016114e9565b6102aa60808701606088016114e9565b6102ba60a0880160808901611541565b6040516020016102ce959493929190611595565b604051602081830303815290604052905061034d565b33826102f6604086016020870161156b565b61030660608701604088016114e9565b61031660808801606089016114e9565b61032660a0890160808a01611541565b60405160200161033b969594939291906117b8565b60405160208183030381529060405290505b60006103af61035f60208601866118ef565b63ffffffff166103726040880188611915565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061095e9050565b905060006103bc82610b42565b9050805160140361044b576103d083610b5c565b6bffffffffffffffffffffffff19166103ea826000610b83565b6bffffffffffffffffffffffff1916146104465760405162461bcd60e51b815260206004820152601960248201527f57726f6e672032302d627974652073637269707420686173680000000000000060448201526064016100e2565b610542565b80516020036104fa57600283604051610464919061195c565b602060405180830381855afa158015610481573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104a4919061198b565b6104ad82610b99565b146104465760405162461bcd60e51b815260206004820152601960248201527f57726f6e672033322d627974652073637269707420686173680000000000000060448201526064016100e2565b60405162461bcd60e51b815260206004820152601860248201527f57726f6e67207363726970742068617368206c656e677468000000000000000060448201526064016100e2565b60006105a76105546020890189611541565b61056160208a018a611915565b61056e60408c018c611915565b61057e60808e0160608f01611541565b604051602001610593969594939291906119a4565b604051602081830303815290604052610bb4565b905060006013890181836105be60208b018b6118ef565b6040516020016105e592919091825260e01b6001600160e01b031916602082015260240190565b60408051808303601f190181529181528151602092830120835290820192909252016000208054909150600160e01b900463ffffffff16156106695760405162461bcd60e51b815260206004820152601860248201527f4465706f73697420616c72656164792072657665616c6564000000000000000060448201526064016100e2565b600061067485610bdb565b60068b015490915067ffffffffffffffff90811690821610156106d95760405162461bcd60e51b815260206004820152601860248201527f4465706f73697420616d6f756e7420746f6f20736d616c6c000000000000000060448201526064016100e2565b8154336001600160e01b0319909116600160a01b67ffffffffffffffff84160273ffffffffffffffffffffffffffffffffffffffff191617177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160e01b4263ffffffff160217825561075060c0890160a08a01611518565b60018301805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905560068a015468010000000000000000900467ffffffffffffffff166107a55760006107ca565b60068a01546107ca9068010000000000000000900467ffffffffffffffff16826119fc565b60018301805467ffffffffffffffff92909216600160a01b027fffffffff0000000000000000ffffffffffffffffffffffffffffffffffffffff9092169190911790556002820187905561081f83828a610c5a565b50505050505050505050565b60e881901c62ff00ff1663ff00ff0060d883901c1617601081811c91901b17631dcd650063ffffffff821610156108ca5760405162461bcd60e51b815260206004820152602760248201527f526566756e64206c6f636b74696d65206d75737420626520612076616c75652060448201527f3e3d203530304d0000000000000000000000000000000000000000000000000060648201526084016100e2565b600683015463ffffffff808316916108eb91600160c01b9091041642611a31565b11156100945760405162461bcd60e51b8152602060048201526024808201527f4465706f73697420726566756e64206c6f636b74696d6520697320746f6f206360448201527f6c6f73650000000000000000000000000000000000000000000000000000000060648201526084016100e2565b606060008061096c85610d62565b9092509050600182016109e75760405162461bcd60e51b815260206004820152602260248201527f52656164206f76657272756e20647572696e6720566172496e7420706172736960448201527f6e6700000000000000000000000000000000000000000000000000000000000060648201526084016100e2565b808410610a365760405162461bcd60e51b815260206004820152601160248201527f566f75742072656164206f76657272756e00000000000000000000000000000060448201526064016100e2565b600080610a44846001611a31565b905060005b86811015610acc57610a5b8883610d79565b92506000198303610aae5760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016100e2565b610ab88383611a31565b915080610ac481611a44565b915050610a49565b50610ad78782610d79565b91506000198203610b2a5760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016100e2565b610b35878284610de6565b9450505050505b92915050565b6060610b3c826008808551610b579190611a5d565b610eb3565b60006020600083516020850160025afa50602060006020600060035afa5050600c51919050565b6000610b928383016020015190565b9392505050565b60008151600003610bac57506000919050565b506020015190565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b600080610be7836111b8565b60c01c90506000610c528264ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b949350505050565b610c6a60608201604083016114e9565b6bffffffffffffffffffffffff1916337fa7382159a693ed317a024daf0fd1ba30805cdf9928ee09550af517c516e2ef0585610ca960208601866118ef565b86610cba604088016020890161156b565b610cca6080890160608a016114e9565b610cda60a08a0160808b01611541565b610cea60c08b0160a08c01611518565b6040805197885263ffffffff96909616602088015267ffffffffffffffff94909416868601526001600160c01b03199290921660608601526bffffffffffffffffffffffff191660808501526001600160e01b03191660a08401526001600160a01b031660c0830152519081900360e00190a3505050565b600080610d708360006111c4565b91509150915091565b6000610d86826009611a31565b83511015610d975750600019610b3c565b600080610dae85610da9866008611a31565b6111c4565b909250905060018201610dc75760001992505050610b3c565b80610dd3836009611a31565b610ddd9190611a31565b95945050505050565b606081600003610e055750604080516020810190915260008152610b92565b6000610e118385611a31565b90508381118015610e23575080855110155b610e6f5760405162461bcd60e51b815260206004820152601360248201527f536c696365206f7574206f6620626f756e64730000000000000000000000000060448201526064016100e2565b604051915082604083010160405282825283850182038460208701018481015b80821015610ea857815183830152602082019150610e8f565b505050509392505050565b60606000848481518110610ec957610ec9611a70565b016020015160f81c905082610edf826001611a86565b60ff1614610efd575050604080516020810190915260008152610b92565b84610f09856001611a31565b81518110610f1957610f19611a70565b016020015160f81c600003610fd85760028160ff161015610f4a575050604080516020810190915260008152610b92565b600085610f58866002611a31565b81518110610f6857610f68611a70565b016020015160f81c9050610f7d600283611a9f565b60ff1681141580610f9b575080602014158015610f9b575080601414155b15610fb9576040518060200160405280600081525092505050610b92565b610fcf610fc7866003611a31565b879083610de6565b92505050610b92565b6000610fe48686610b83565b90507fffffff000000000000000000000000000000000000000000000000000000000081167f1976a90000000000000000000000000000000000000000000000000000000000036110f8578561103b866003611a31565b8151811061104b5761104b611a70565b60209101015160f81c60141415806110c3575061107e600261106d8688611a31565b6110779190611a5d565b8790610b83565b7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f88ac00000000000000000000000000000000000000000000000000000000000014155b156110e1576040518060200160405280600081525092505050610b92565b610fcf6110ef866004611a31565b87906014610de6565b7fffffff000000000000000000000000000000000000000000000000000000000081167f17a91400000000000000000000000000000000000000000000000000000000000361119f5785600161114e8688611a31565b6111589190611a5d565b8151811061116857611168611a70565b60209101015160f81c608714611191576040518060200160405280600081525092505050610b92565b610fcf6110ef866003611a31565b5050506040805160208101909152600081529392505050565b6000610b3c8282610b83565b60008060006111d38585611368565b90508060ff166000036112085760008585815181106111f4576111f4611a70565b016020015190935060f81c91506113619050565b83611214826001611a86565b60ff166112219190611a31565b855110156112385760001960009250925050611361565b60008160ff1660020361127c5761127161125d611256876001611a31565b8890610b83565b62ffff0060e882901c1660f89190911c1790565b61ffff169050611357565b8160ff166004036112cb576112be611298611256876001611a31565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050611357565b8160ff166008036113575761134a6112e7611256876001611a31565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600082828151811061137c5761137c611a70565b016020015160f81c60ff0361139357506008610b3c565b8282815181106113a5576113a5611a70565b016020015160f81c60fe036113bc57506004610b3c565b8282815181106113ce576113ce611a70565b016020015160f81c60fd036113e557506002610b3c565b50600092915050565b60006080828403121561140057600080fd5b50919050565b600060c0828403121561140057600080fd5b6000806000610100848603121561142e57600080fd5b83359250602084013567ffffffffffffffff81111561144c57600080fd5b611458868287016113ee565b9250506114688560408601611406565b90509250925092565b600080600080610120858703121561148857600080fd5b84359350602085013567ffffffffffffffff8111156114a657600080fd5b6114b2878288016113ee565b9350506114c28660408701611406565b939692955092936101000135925050565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156114fb57600080fd5b81356bffffffffffffffffffffffff1981168114610b9257600080fd5b60006020828403121561152a57600080fd5b81356001600160a01b0381168114610b9257600080fd5b60006020828403121561155357600080fd5b81356001600160e01b031981168114610b9257600080fd5b60006020828403121561157d57600080fd5b81356001600160c01b031981168114610b9257600080fd5b600560fa1b8152606086901b6bffffffffffffffffffffffff19166001820152607560f81b6015820152600160fb1b60168201526001600160c01b031985166017820152607560f81b601f820152600061165261164561161c602085015b7f7600000000000000000000000000000000000000000000000000000000000000815260010190565b7fa900000000000000000000000000000000000000000000000000000000000000815260010190565b600560fa1b815260010190565b6bffffffffffffffffffffffff1986168152608760f81b601482015261170061164561161c6115f36116d76116ae601587015b7f6300000000000000000000000000000000000000000000000000000000000000815260010190565b7fac00000000000000000000000000000000000000000000000000000000000000815260010190565b7f6700000000000000000000000000000000000000000000000000000000000000815260010190565b6bffffffffffffffffffffffff19861681529050601160fb1b601482015261174f601582015b7f0400000000000000000000000000000000000000000000000000000000000000815260010190565b6001600160e01b031985168152905060b160f81b60048201526117ac6117836116ae600584015b607560f81b815260010190565b7f6800000000000000000000000000000000000000000000000000000000000000815260010190565b98975050505050505050565b600560fa1b81526bffffffffffffffffffffffff19606088901b166001820152607560f81b60158201527f20000000000000000000000000000000000000000000000000000000000000006016820152600060178201878152607560f81b6020820152600160fb1b6021820152602281016001600160c01b0319881681529050607560f81b600882015261185461164561161c600984016115f3565b6bffffffffffffffffffffffff19871681529050608760f81b601482015261188d61164561161c6115f36116d76116ae60158701611685565b6bffffffffffffffffffffffff19861681529050601160fb1b60148201526118b760158201611726565b6001600160e01b031985168152905060b160f81b60048201526118e26117836116ae60058401611776565b9998505050505050505050565b60006020828403121561190157600080fd5b813563ffffffff81168114610b9257600080fd5b6000808335601e1984360301811261192c57600080fd5b83018035915067ffffffffffffffff82111561194757600080fd5b60200191503681900382131561136157600080fd5b6000825160005b8181101561197d5760208186018101518583015201611963565b506000920191825250919050565b60006020828403121561199d57600080fd5b5051919050565b60006001600160e01b03198089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b634e487b7160e01b600052601160045260246000fd5b600067ffffffffffffffff80841680611a2557634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b80820180821115610b3c57610b3c6119e6565b600060018201611a5657611a566119e6565b5060010190565b81810381811115610b3c57610b3c6119e6565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610b3c57610b3c6119e6565b60ff8281168282160390811115610b3c57610b3c6119e656fea2646970667358221220cb81ae80f3aa24e82201d8c4d895005e83619e0c8c5ff5671b58391d6053a6bc64736f6c63430008110033",
87
87
  "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100405760003560e01c8063aea7fd0b14610045578063e4f3925d14610067575b600080fd5b81801561005157600080fd5b50610065610060366004611418565b610087565b005b81801561007357600080fd5b50610065610082366004611471565b610099565b61009483838360006100fd565b505050565b806100eb5760405162461bcd60e51b815260206004820152601c60248201527f45787472612064617461206d757374206e6f7420626520656d7074790000000060448201526064015b60405180910390fd5b6100f7848484846100fd565b50505050565b6001601b8501600061011560608601604087016114e9565b6bffffffffffffffffffffffff19168152602081019190915260400160002060020154600160c01b900460ff166005811115610153576101536114d3565b146101a05760405162461bcd60e51b815260206004820152601c60248201527f57616c6c6574206d75737420626520696e204c6976652073746174650000000060448201526064016100e2565b60006101b260c0840160a08501611518565b6001600160a01b031614806101f657506014840160006101d860c0850160a08601611518565b6001600160a01b0316815260208101919091526040016000205460ff165b6102425760405162461bcd60e51b815260206004820152601460248201527f5661756c74206973206e6f74207472757374656400000000000000000000000060448201526064016100e2565b6006840154600160c01b900463ffffffff1615610272576102728461026d60a0850160808601611541565b61082b565b6060816102e4573361028a604085016020860161156b565b61029a60608601604087016114e9565b6102aa60808701606088016114e9565b6102ba60a0880160808901611541565b6040516020016102ce959493929190611595565b604051602081830303815290604052905061034d565b33826102f6604086016020870161156b565b61030660608701604088016114e9565b61031660808801606089016114e9565b61032660a0890160808a01611541565b60405160200161033b969594939291906117b8565b60405160208183030381529060405290505b60006103af61035f60208601866118ef565b63ffffffff166103726040880188611915565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929392505061095e9050565b905060006103bc82610b42565b9050805160140361044b576103d083610b5c565b6bffffffffffffffffffffffff19166103ea826000610b83565b6bffffffffffffffffffffffff1916146104465760405162461bcd60e51b815260206004820152601960248201527f57726f6e672032302d627974652073637269707420686173680000000000000060448201526064016100e2565b610542565b80516020036104fa57600283604051610464919061195c565b602060405180830381855afa158015610481573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906104a4919061198b565b6104ad82610b99565b146104465760405162461bcd60e51b815260206004820152601960248201527f57726f6e672033322d627974652073637269707420686173680000000000000060448201526064016100e2565b60405162461bcd60e51b815260206004820152601860248201527f57726f6e67207363726970742068617368206c656e677468000000000000000060448201526064016100e2565b60006105a76105546020890189611541565b61056160208a018a611915565b61056e60408c018c611915565b61057e60808e0160608f01611541565b604051602001610593969594939291906119a4565b604051602081830303815290604052610bb4565b905060006013890181836105be60208b018b6118ef565b6040516020016105e592919091825260e01b6001600160e01b031916602082015260240190565b60408051808303601f190181529181528151602092830120835290820192909252016000208054909150600160e01b900463ffffffff16156106695760405162461bcd60e51b815260206004820152601860248201527f4465706f73697420616c72656164792072657665616c6564000000000000000060448201526064016100e2565b600061067485610bdb565b60068b015490915067ffffffffffffffff90811690821610156106d95760405162461bcd60e51b815260206004820152601860248201527f4465706f73697420616d6f756e7420746f6f20736d616c6c000000000000000060448201526064016100e2565b8154336001600160e01b0319909116600160a01b67ffffffffffffffff84160273ffffffffffffffffffffffffffffffffffffffff191617177bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160e01b4263ffffffff160217825561075060c0890160a08a01611518565b60018301805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b039290921691909117905560068a015468010000000000000000900467ffffffffffffffff166107a55760006107ca565b60068a01546107ca9068010000000000000000900467ffffffffffffffff16826119fc565b60018301805467ffffffffffffffff92909216600160a01b027fffffffff0000000000000000ffffffffffffffffffffffffffffffffffffffff9092169190911790556002820187905561081f83828a610c5a565b50505050505050505050565b60e881901c62ff00ff1663ff00ff0060d883901c1617601081811c91901b17631dcd650063ffffffff821610156108ca5760405162461bcd60e51b815260206004820152602760248201527f526566756e64206c6f636b74696d65206d75737420626520612076616c75652060448201527f3e3d203530304d0000000000000000000000000000000000000000000000000060648201526084016100e2565b600683015463ffffffff808316916108eb91600160c01b9091041642611a31565b11156100945760405162461bcd60e51b8152602060048201526024808201527f4465706f73697420726566756e64206c6f636b74696d6520697320746f6f206360448201527f6c6f73650000000000000000000000000000000000000000000000000000000060648201526084016100e2565b606060008061096c85610d62565b9092509050600182016109e75760405162461bcd60e51b815260206004820152602260248201527f52656164206f76657272756e20647572696e6720566172496e7420706172736960448201527f6e6700000000000000000000000000000000000000000000000000000000000060648201526084016100e2565b808410610a365760405162461bcd60e51b815260206004820152601160248201527f566f75742072656164206f76657272756e00000000000000000000000000000060448201526064016100e2565b600080610a44846001611a31565b905060005b86811015610acc57610a5b8883610d79565b92506000198303610aae5760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016100e2565b610ab88383611a31565b915080610ac481611a44565b915050610a49565b50610ad78782610d79565b91506000198203610b2a5760405162461bcd60e51b815260206004820152601a60248201527f42616420566172496e7420696e207363726970745075626b657900000000000060448201526064016100e2565b610b35878284610de6565b9450505050505b92915050565b6060610b3c826008808551610b579190611a5d565b610eb3565b60006020600083516020850160025afa50602060006020600060035afa5050600c51919050565b6000610b928383016020015190565b9392505050565b60008151600003610bac57506000919050565b506020015190565b60006020600083516020850160025afa50602060006020600060025afa5050600051919050565b600080610be7836111b8565b60c01c90506000610c528264ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b949350505050565b610c6a60608201604083016114e9565b6bffffffffffffffffffffffff1916337fa7382159a693ed317a024daf0fd1ba30805cdf9928ee09550af517c516e2ef0585610ca960208601866118ef565b86610cba604088016020890161156b565b610cca6080890160608a016114e9565b610cda60a08a0160808b01611541565b610cea60c08b0160a08c01611518565b6040805197885263ffffffff96909616602088015267ffffffffffffffff94909416868601526001600160c01b03199290921660608601526bffffffffffffffffffffffff191660808501526001600160e01b03191660a08401526001600160a01b031660c0830152519081900360e00190a3505050565b600080610d708360006111c4565b91509150915091565b6000610d86826009611a31565b83511015610d975750600019610b3c565b600080610dae85610da9866008611a31565b6111c4565b909250905060018201610dc75760001992505050610b3c565b80610dd3836009611a31565b610ddd9190611a31565b95945050505050565b606081600003610e055750604080516020810190915260008152610b92565b6000610e118385611a31565b90508381118015610e23575080855110155b610e6f5760405162461bcd60e51b815260206004820152601360248201527f536c696365206f7574206f6620626f756e64730000000000000000000000000060448201526064016100e2565b604051915082604083010160405282825283850182038460208701018481015b80821015610ea857815183830152602082019150610e8f565b505050509392505050565b60606000848481518110610ec957610ec9611a70565b016020015160f81c905082610edf826001611a86565b60ff1614610efd575050604080516020810190915260008152610b92565b84610f09856001611a31565b81518110610f1957610f19611a70565b016020015160f81c600003610fd85760028160ff161015610f4a575050604080516020810190915260008152610b92565b600085610f58866002611a31565b81518110610f6857610f68611a70565b016020015160f81c9050610f7d600283611a9f565b60ff1681141580610f9b575080602014158015610f9b575080601414155b15610fb9576040518060200160405280600081525092505050610b92565b610fcf610fc7866003611a31565b879083610de6565b92505050610b92565b6000610fe48686610b83565b90507fffffff000000000000000000000000000000000000000000000000000000000081167f1976a90000000000000000000000000000000000000000000000000000000000036110f8578561103b866003611a31565b8151811061104b5761104b611a70565b60209101015160f81c60141415806110c3575061107e600261106d8688611a31565b6110779190611a5d565b8790610b83565b7dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f88ac00000000000000000000000000000000000000000000000000000000000014155b156110e1576040518060200160405280600081525092505050610b92565b610fcf6110ef866004611a31565b87906014610de6565b7fffffff000000000000000000000000000000000000000000000000000000000081167f17a91400000000000000000000000000000000000000000000000000000000000361119f5785600161114e8688611a31565b6111589190611a5d565b8151811061116857611168611a70565b60209101015160f81c608714611191576040518060200160405280600081525092505050610b92565b610fcf6110ef866003611a31565b5050506040805160208101909152600081529392505050565b6000610b3c8282610b83565b60008060006111d38585611368565b90508060ff166000036112085760008585815181106111f4576111f4611a70565b016020015190935060f81c91506113619050565b83611214826001611a86565b60ff166112219190611a31565b855110156112385760001960009250925050611361565b60008160ff1660020361127c5761127161125d611256876001611a31565b8890610b83565b62ffff0060e882901c1660f89190911c1790565b61ffff169050611357565b8160ff166004036112cb576112be611298611256876001611a31565b60d881901c63ff00ff001662ff00ff60e89290921c9190911617601081811b91901c1790565b63ffffffff169050611357565b8160ff166008036113575761134a6112e7611256876001611a31565b60c01c64ff000000ff600882811c91821665ff000000ff009390911b92831617601090811b67ffffffffffffffff1666ff00ff00ff00ff9290921667ff00ff00ff00ff009093169290921790911c65ffff0000ffff1617602081811c91901b1790565b67ffffffffffffffff1690505b60ff909116925090505b9250929050565b600082828151811061137c5761137c611a70565b016020015160f81c60ff0361139357506008610b3c565b8282815181106113a5576113a5611a70565b016020015160f81c60fe036113bc57506004610b3c565b8282815181106113ce576113ce611a70565b016020015160f81c60fd036113e557506002610b3c565b50600092915050565b60006080828403121561140057600080fd5b50919050565b600060c0828403121561140057600080fd5b6000806000610100848603121561142e57600080fd5b83359250602084013567ffffffffffffffff81111561144c57600080fd5b611458868287016113ee565b9250506114688560408601611406565b90509250925092565b600080600080610120858703121561148857600080fd5b84359350602085013567ffffffffffffffff8111156114a657600080fd5b6114b2878288016113ee565b9350506114c28660408701611406565b939692955092936101000135925050565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156114fb57600080fd5b81356bffffffffffffffffffffffff1981168114610b9257600080fd5b60006020828403121561152a57600080fd5b81356001600160a01b0381168114610b9257600080fd5b60006020828403121561155357600080fd5b81356001600160e01b031981168114610b9257600080fd5b60006020828403121561157d57600080fd5b81356001600160c01b031981168114610b9257600080fd5b600560fa1b8152606086901b6bffffffffffffffffffffffff19166001820152607560f81b6015820152600160fb1b60168201526001600160c01b031985166017820152607560f81b601f820152600061165261164561161c602085015b7f7600000000000000000000000000000000000000000000000000000000000000815260010190565b7fa900000000000000000000000000000000000000000000000000000000000000815260010190565b600560fa1b815260010190565b6bffffffffffffffffffffffff1986168152608760f81b601482015261170061164561161c6115f36116d76116ae601587015b7f6300000000000000000000000000000000000000000000000000000000000000815260010190565b7fac00000000000000000000000000000000000000000000000000000000000000815260010190565b7f6700000000000000000000000000000000000000000000000000000000000000815260010190565b6bffffffffffffffffffffffff19861681529050601160fb1b601482015261174f601582015b7f0400000000000000000000000000000000000000000000000000000000000000815260010190565b6001600160e01b031985168152905060b160f81b60048201526117ac6117836116ae600584015b607560f81b815260010190565b7f6800000000000000000000000000000000000000000000000000000000000000815260010190565b98975050505050505050565b600560fa1b81526bffffffffffffffffffffffff19606088901b166001820152607560f81b60158201527f20000000000000000000000000000000000000000000000000000000000000006016820152600060178201878152607560f81b6020820152600160fb1b6021820152602281016001600160c01b0319881681529050607560f81b600882015261185461164561161c600984016115f3565b6bffffffffffffffffffffffff19871681529050608760f81b601482015261188d61164561161c6115f36116d76116ae60158701611685565b6bffffffffffffffffffffffff19861681529050601160fb1b60148201526118b760158201611726565b6001600160e01b031985168152905060b160f81b60048201526118e26117836116ae60058401611776565b9998505050505050505050565b60006020828403121561190157600080fd5b813563ffffffff81168114610b9257600080fd5b6000808335601e1984360301811261192c57600080fd5b83018035915067ffffffffffffffff82111561194757600080fd5b60200191503681900382131561136157600080fd5b6000825160005b8181101561197d5760208186018101518583015201611963565b506000920191825250919050565b60006020828403121561199d57600080fd5b5051919050565b60006001600160e01b03198089168352868860048501378683016004810160008152868882375093169390920160048101939093525050600801949350505050565b634e487b7160e01b600052601160045260246000fd5b600067ffffffffffffffff80841680611a2557634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b80820180821115610b3c57610b3c6119e6565b600060018201611a5657611a566119e6565b5060010190565b81810381811115610b3c57610b3c6119e6565b634e487b7160e01b600052603260045260246000fd5b60ff8181168382160190811115610b3c57610b3c6119e6565b60ff8281168282160390811115610b3c57610b3c6119e656fea2646970667358221220cb81ae80f3aa24e82201d8c4d895005e83619e0c8c5ff5671b58391d6053a6bc64736f6c63430008110033",
88
88
  "devdoc": {
89
- "details": "The depositor puts together a P2SH or P2WSH address to deposit the funds. This script is unique to each depositor and looks like this: ``` <depositorAddress> DROP <blindingFactor> DROP DUP HASH160 <walletPubKeyHash> EQUAL IF CHECKSIG ELSE DUP HASH160 <refundPubkeyHash> EQUALVERIFY <refundLocktime> CHECKLOCKTIMEVERIFY DROP CHECKSIG ENDIF ``` Since each depositor has their own Ethereum address and their own blinding factor, each depositor’s script is unique, and the hash of each depositor’s script is unique. This library also supports another variant of the deposit script allowing to embed 32-byte extra data. The extra data allows to attach additional context to the deposit. The script with 32-byte extra data looks like this: ``` <depositorAddress> DROP <extraData> DROP <blindingFactor> DROP DUP HASH160 <walletPubKeyHash> EQUAL IF CHECKSIG ELSE DUP HASH160 <refundPubkeyHash> EQUALVERIFY <refundLocktime> CHECKLOCKTIMEVERIFY DROP CHECKSIG ENDIF ```",
89
+ "details": "The depositor puts together a P2SH or P2WSH address to deposit the funds. This script is unique to each depositor and looks like this: ``` <depositorAddress> DROP <blindingFactor> DROP DUP HASH160 <walletPubKeyHash> EQUAL IF CHECKSIG ELSE DUP HASH160 <refundPubkeyHash> EQUALVERIFY <refundLocktime> CHECKLOCKTIMEVERIFY DROP CHECKSIG ENDIF ``` Since each depositor has their own Ethereum address and their own blinding factor, each depositor\u2019s script is unique, and the hash of each depositor\u2019s script is unique. This library also supports another variant of the deposit script allowing to embed 32-byte extra data. The extra data allows to attach additional context to the deposit. The script with 32-byte extra data looks like this: ``` <depositorAddress> DROP <extraData> DROP <blindingFactor> DROP DUP HASH160 <walletPubKeyHash> EQUAL IF CHECKSIG ELSE DUP HASH160 <refundPubkeyHash> EQUALVERIFY <refundLocktime> CHECKLOCKTIMEVERIFY DROP CHECKSIG ENDIF ```",
90
90
  "kind": "dev",
91
91
  "methods": {
92
92
  "revealDeposit(BridgeState.Storage storage,BitcoinTx.Info,Deposit.DepositRevealInfo)": {
@@ -125,4 +125,4 @@
125
125
  "storage": [],
126
126
  "types": null
127
127
  }
128
- }
128
+ }