@wireio/stake 2.5.2 → 2.6.0

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 (210) hide show
  1. package/lib/stake.browser.js +28102 -730
  2. package/lib/stake.browser.js.map +1 -1
  3. package/lib/stake.d.ts +53 -11
  4. package/lib/stake.js +28126 -730
  5. package/lib/stake.js.map +1 -1
  6. package/lib/stake.m.js +28102 -730
  7. package/lib/stake.m.js.map +1 -1
  8. package/package.json +2 -2
  9. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
  10. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.json +164 -0
  11. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  12. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  13. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  14. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  15. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
  16. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.json +618 -0
  17. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  18. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.json +40 -0
  19. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  20. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.json +10 -0
  21. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  22. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.json +10 -0
  23. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  24. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  25. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  26. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.json +49 -0
  27. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  28. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  29. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  30. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.json +1458 -0
  31. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  32. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.json +1532 -0
  33. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  34. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.json +1525 -0
  35. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  36. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.json +1076 -0
  37. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  38. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.json +807 -0
  39. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  40. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  41. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  42. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  43. package/src/assets/ethereum/hoodi/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  44. package/src/assets/ethereum/hoodi/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  45. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  46. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  47. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  48. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  49. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  50. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  51. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  52. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  53. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  54. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  56. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  57. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  59. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  60. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  61. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  62. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  63. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  64. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  65. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  66. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  67. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  68. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  69. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  70. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  71. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  72. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  73. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  74. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  75. package/src/assets/ethereum/hoodi/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  76. package/src/assets/ethereum/hoodi/liqEth/StakingLib.sol/StakingLib.json +89 -0
  77. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  78. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.json +1376 -0
  79. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  80. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  81. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  82. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  83. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  84. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  85. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  86. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  87. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  88. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  89. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  90. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  96. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  97. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  98. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  99. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  100. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  101. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  102. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  105. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  106. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  107. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  108. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  109. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  110. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +542 -0
  111. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  112. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  113. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  114. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  115. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  116. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  117. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  118. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  119. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  120. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  121. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BARV2.dbg.json +4 -0
  122. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BARV2.json +1915 -0
  123. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  124. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/DepositorV2.json +1845 -0
  125. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  126. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  127. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  128. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +551 -0
  129. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  130. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +948 -0
  131. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  132. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +88 -0
  133. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  134. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  135. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  136. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +194 -0
  137. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  138. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  139. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  140. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +36 -0
  141. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  142. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +199 -0
  143. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  144. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +273 -0
  145. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  146. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +394 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +378 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +224 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1010 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +291 -0
  155. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  156. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +298 -0
  157. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  158. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +488 -0
  159. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  160. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  161. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  162. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  163. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  164. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  165. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  166. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  167. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  168. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  169. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  170. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  171. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  172. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  173. package/src/assets/ethereum/hoodi/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  174. package/src/assets/ethereum/hoodi/outpost/Pool.sol/PoolV2.json +943 -0
  175. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  176. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  177. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  178. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +2015 -0
  179. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  180. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  181. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  182. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  183. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  184. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  185. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  186. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  187. package/src/assets/ethereum/hoodi/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  188. package/src/assets/ethereum/hoodi/outpost/v1/BAR.sol/BAR.json +1871 -0
  189. package/src/assets/ethereum/hoodi/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  190. package/src/assets/ethereum/hoodi/outpost/v1/Depositor.sol/Depositor.json +1653 -0
  191. package/src/assets/ethereum/hoodi/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  192. package/src/assets/ethereum/hoodi/outpost/v1/OutpostManager.sol/OutpostManager.json +730 -0
  193. package/src/assets/ethereum/hoodi/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  194. package/src/assets/ethereum/hoodi/outpost/v1/Pool.sol/Pool.json +936 -0
  195. package/src/assets/ethereum/hoodi/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  196. package/src/assets/ethereum/hoodi/outpost/v1/Pretoken.sol/Pretoken.json +1665 -0
  197. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  198. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  199. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  200. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  201. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  202. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  203. package/src/networks/ethereum/clients/stake.client.ts +81 -7
  204. package/src/networks/ethereum/contract.ts +189 -81
  205. package/src/networks/ethereum/ethereum.ts +47 -6
  206. package/src/networks/ethereum/types.ts +10 -0
  207. package/src/networks/solana/constants.ts +3 -3
  208. package/src/networks/solana/solana.ts +92 -7
  209. package/src/networks/solana/types.ts +2 -2
  210. package/src/types.ts +10 -1
@@ -0,0 +1,1703 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "PretokenV2",
4
+ "sourceName": "contracts/outpost/Pretoken.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "authority",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "AccessManagedInvalidAuthority",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "caller",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "internalType": "uint32",
26
+ "name": "delay",
27
+ "type": "uint32"
28
+ }
29
+ ],
30
+ "name": "AccessManagedRequiredDelay",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "address",
37
+ "name": "caller",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "AccessManagedUnauthorized",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "address",
48
+ "name": "target",
49
+ "type": "address"
50
+ }
51
+ ],
52
+ "name": "AddressEmptyCode",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [
57
+ {
58
+ "internalType": "address",
59
+ "name": "implementation",
60
+ "type": "address"
61
+ }
62
+ ],
63
+ "name": "ERC1967InvalidImplementation",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [],
68
+ "name": "ERC1967NonPayable",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [
73
+ {
74
+ "internalType": "address",
75
+ "name": "spender",
76
+ "type": "address"
77
+ },
78
+ {
79
+ "internalType": "uint256",
80
+ "name": "allowance",
81
+ "type": "uint256"
82
+ },
83
+ {
84
+ "internalType": "uint256",
85
+ "name": "needed",
86
+ "type": "uint256"
87
+ }
88
+ ],
89
+ "name": "ERC20InsufficientAllowance",
90
+ "type": "error"
91
+ },
92
+ {
93
+ "inputs": [
94
+ {
95
+ "internalType": "address",
96
+ "name": "sender",
97
+ "type": "address"
98
+ },
99
+ {
100
+ "internalType": "uint256",
101
+ "name": "balance",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "needed",
107
+ "type": "uint256"
108
+ }
109
+ ],
110
+ "name": "ERC20InsufficientBalance",
111
+ "type": "error"
112
+ },
113
+ {
114
+ "inputs": [
115
+ {
116
+ "internalType": "address",
117
+ "name": "approver",
118
+ "type": "address"
119
+ }
120
+ ],
121
+ "name": "ERC20InvalidApprover",
122
+ "type": "error"
123
+ },
124
+ {
125
+ "inputs": [
126
+ {
127
+ "internalType": "address",
128
+ "name": "receiver",
129
+ "type": "address"
130
+ }
131
+ ],
132
+ "name": "ERC20InvalidReceiver",
133
+ "type": "error"
134
+ },
135
+ {
136
+ "inputs": [
137
+ {
138
+ "internalType": "address",
139
+ "name": "sender",
140
+ "type": "address"
141
+ }
142
+ ],
143
+ "name": "ERC20InvalidSender",
144
+ "type": "error"
145
+ },
146
+ {
147
+ "inputs": [
148
+ {
149
+ "internalType": "address",
150
+ "name": "spender",
151
+ "type": "address"
152
+ }
153
+ ],
154
+ "name": "ERC20InvalidSpender",
155
+ "type": "error"
156
+ },
157
+ {
158
+ "inputs": [],
159
+ "name": "EnforcedPause",
160
+ "type": "error"
161
+ },
162
+ {
163
+ "inputs": [],
164
+ "name": "ExpectedPause",
165
+ "type": "error"
166
+ },
167
+ {
168
+ "inputs": [],
169
+ "name": "FailedCall",
170
+ "type": "error"
171
+ },
172
+ {
173
+ "inputs": [],
174
+ "name": "InvalidInitialization",
175
+ "type": "error"
176
+ },
177
+ {
178
+ "inputs": [],
179
+ "name": "NotInitializing",
180
+ "type": "error"
181
+ },
182
+ {
183
+ "inputs": [
184
+ {
185
+ "internalType": "bytes32",
186
+ "name": "expected",
187
+ "type": "bytes32"
188
+ },
189
+ {
190
+ "internalType": "bytes32",
191
+ "name": "actual",
192
+ "type": "bytes32"
193
+ }
194
+ ],
195
+ "name": "OPP_EpochHashMismatch",
196
+ "type": "error"
197
+ },
198
+ {
199
+ "inputs": [
200
+ {
201
+ "internalType": "uint256",
202
+ "name": "required",
203
+ "type": "uint256"
204
+ },
205
+ {
206
+ "internalType": "uint256",
207
+ "name": "provided",
208
+ "type": "uint256"
209
+ }
210
+ ],
211
+ "name": "OPP_InsufficientSignatureWeight",
212
+ "type": "error"
213
+ },
214
+ {
215
+ "inputs": [
216
+ {
217
+ "internalType": "address",
218
+ "name": "caller",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "internalType": "address",
223
+ "name": "expected",
224
+ "type": "address"
225
+ }
226
+ ],
227
+ "name": "OPP_InvalidOPPAddress",
228
+ "type": "error"
229
+ },
230
+ {
231
+ "inputs": [
232
+ {
233
+ "internalType": "bytes32",
234
+ "name": "expected",
235
+ "type": "bytes32"
236
+ },
237
+ {
238
+ "internalType": "bytes32",
239
+ "name": "actual",
240
+ "type": "bytes32"
241
+ }
242
+ ],
243
+ "name": "OPP_MessageIDMismatch",
244
+ "type": "error"
245
+ },
246
+ {
247
+ "inputs": [],
248
+ "name": "OPP_NoAssertionsSent",
249
+ "type": "error"
250
+ },
251
+ {
252
+ "inputs": [],
253
+ "name": "OPP_NoPendingAssertions",
254
+ "type": "error"
255
+ },
256
+ {
257
+ "inputs": [
258
+ {
259
+ "internalType": "uint32",
260
+ "name": "expected",
261
+ "type": "uint32"
262
+ },
263
+ {
264
+ "internalType": "uint32",
265
+ "name": "actual",
266
+ "type": "uint32"
267
+ }
268
+ ],
269
+ "name": "OPP_NonSequentialEpoch",
270
+ "type": "error"
271
+ },
272
+ {
273
+ "inputs": [],
274
+ "name": "OPP_NotSending",
275
+ "type": "error"
276
+ },
277
+ {
278
+ "inputs": [],
279
+ "name": "OPP_OPPAddressNotSet",
280
+ "type": "error"
281
+ },
282
+ {
283
+ "inputs": [
284
+ {
285
+ "internalType": "bytes32",
286
+ "name": "expected",
287
+ "type": "bytes32"
288
+ },
289
+ {
290
+ "internalType": "bytes32",
291
+ "name": "actual",
292
+ "type": "bytes32"
293
+ }
294
+ ],
295
+ "name": "OPP_PayloadHashMismatch",
296
+ "type": "error"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "uint32",
302
+ "name": "epochNumber",
303
+ "type": "uint32"
304
+ },
305
+ {
306
+ "internalType": "uint256",
307
+ "name": "messageCount",
308
+ "type": "uint256"
309
+ }
310
+ ],
311
+ "name": "OPP_PreviousEpochPendingMessages",
312
+ "type": "error"
313
+ },
314
+ {
315
+ "inputs": [
316
+ {
317
+ "internalType": "uint32",
318
+ "name": "epochNumber",
319
+ "type": "uint32"
320
+ }
321
+ ],
322
+ "name": "OPP_PreviousEpochSent",
323
+ "type": "error"
324
+ },
325
+ {
326
+ "inputs": [
327
+ {
328
+ "internalType": "uint32",
329
+ "name": "epochNumber",
330
+ "type": "uint32"
331
+ }
332
+ ],
333
+ "name": "OPP_PreviousEpochUnsent",
334
+ "type": "error"
335
+ },
336
+ {
337
+ "inputs": [
338
+ {
339
+ "internalType": "uint256",
340
+ "name": "stack",
341
+ "type": "uint256"
342
+ }
343
+ ],
344
+ "name": "OPP_SendStackError",
345
+ "type": "error"
346
+ },
347
+ {
348
+ "inputs": [
349
+ {
350
+ "internalType": "uint256",
351
+ "name": "expectedMaxMessages",
352
+ "type": "uint256"
353
+ },
354
+ {
355
+ "internalType": "uint256",
356
+ "name": "actualMessages",
357
+ "type": "uint256"
358
+ }
359
+ ],
360
+ "name": "OPP_TooManyMessages",
361
+ "type": "error"
362
+ },
363
+ {
364
+ "inputs": [
365
+ {
366
+ "internalType": "address",
367
+ "name": "sender",
368
+ "type": "address"
369
+ },
370
+ {
371
+ "internalType": "uint16",
372
+ "name": "assertionType",
373
+ "type": "uint16"
374
+ }
375
+ ],
376
+ "name": "OPP_UnauthorizedAssertionType",
377
+ "type": "error"
378
+ },
379
+ {
380
+ "inputs": [
381
+ {
382
+ "internalType": "uint16",
383
+ "name": "assertionType",
384
+ "type": "uint16"
385
+ }
386
+ ],
387
+ "name": "OPP_UnhandledAssertionType",
388
+ "type": "error"
389
+ },
390
+ {
391
+ "inputs": [],
392
+ "name": "OPP_ZeroTag",
393
+ "type": "error"
394
+ },
395
+ {
396
+ "inputs": [],
397
+ "name": "UUPSUnauthorizedCallContext",
398
+ "type": "error"
399
+ },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "bytes32",
404
+ "name": "slot",
405
+ "type": "bytes32"
406
+ }
407
+ ],
408
+ "name": "UUPSUnsupportedProxiableUUID",
409
+ "type": "error"
410
+ },
411
+ {
412
+ "inputs": [
413
+ {
414
+ "internalType": "address",
415
+ "name": "actor",
416
+ "type": "address"
417
+ }
418
+ ],
419
+ "name": "WIRE_ActorAlreadyBonded",
420
+ "type": "error"
421
+ },
422
+ {
423
+ "inputs": [
424
+ {
425
+ "internalType": "address",
426
+ "name": "actor",
427
+ "type": "address"
428
+ }
429
+ ],
430
+ "name": "WIRE_ActorNotBonded",
431
+ "type": "error"
432
+ },
433
+ {
434
+ "inputs": [
435
+ {
436
+ "internalType": "uint32",
437
+ "name": "tokenType",
438
+ "type": "uint32"
439
+ },
440
+ {
441
+ "internalType": "bytes32",
442
+ "name": "bondLevelId",
443
+ "type": "bytes32"
444
+ }
445
+ ],
446
+ "name": "WIRE_BadBondLevel",
447
+ "type": "error"
448
+ },
449
+ {
450
+ "inputs": [
451
+ {
452
+ "internalType": "string",
453
+ "name": "name",
454
+ "type": "string"
455
+ },
456
+ {
457
+ "internalType": "address",
458
+ "name": "provided",
459
+ "type": "address"
460
+ }
461
+ ],
462
+ "name": "WIRE_BadContractAddress",
463
+ "type": "error"
464
+ },
465
+ {
466
+ "inputs": [
467
+ {
468
+ "internalType": "uint256",
469
+ "name": "bps",
470
+ "type": "uint256"
471
+ },
472
+ {
473
+ "internalType": "uint256",
474
+ "name": "maxBps",
475
+ "type": "uint256"
476
+ }
477
+ ],
478
+ "name": "WIRE_BasisPointsTooHigh",
479
+ "type": "error"
480
+ },
481
+ {
482
+ "inputs": [
483
+ {
484
+ "internalType": "address",
485
+ "name": "actor",
486
+ "type": "address"
487
+ },
488
+ {
489
+ "internalType": "uint256",
490
+ "name": "cooldownEnd",
491
+ "type": "uint256"
492
+ }
493
+ ],
494
+ "name": "WIRE_BondInCooldown",
495
+ "type": "error"
496
+ },
497
+ {
498
+ "inputs": [
499
+ {
500
+ "internalType": "address",
501
+ "name": "actor",
502
+ "type": "address"
503
+ },
504
+ {
505
+ "internalType": "uint256",
506
+ "name": "warmupEnd",
507
+ "type": "uint256"
508
+ }
509
+ ],
510
+ "name": "WIRE_BondInWarmup",
511
+ "type": "error"
512
+ },
513
+ {
514
+ "inputs": [
515
+ {
516
+ "internalType": "uint256",
517
+ "name": "required",
518
+ "type": "uint256"
519
+ },
520
+ {
521
+ "internalType": "uint256",
522
+ "name": "provided",
523
+ "type": "uint256"
524
+ }
525
+ ],
526
+ "name": "WIRE_BondInsufficientEth",
527
+ "type": "error"
528
+ },
529
+ {
530
+ "inputs": [
531
+ {
532
+ "internalType": "uint256",
533
+ "name": "required",
534
+ "type": "uint256"
535
+ },
536
+ {
537
+ "internalType": "uint256",
538
+ "name": "provided",
539
+ "type": "uint256"
540
+ }
541
+ ],
542
+ "name": "WIRE_BondInsufficientEthEquivalent",
543
+ "type": "error"
544
+ },
545
+ {
546
+ "inputs": [
547
+ {
548
+ "internalType": "uint256",
549
+ "name": "value",
550
+ "type": "uint256"
551
+ },
552
+ {
553
+ "internalType": "uint256",
554
+ "name": "minValue",
555
+ "type": "uint256"
556
+ }
557
+ ],
558
+ "name": "WIRE_BondLevelCooldownTooShort",
559
+ "type": "error"
560
+ },
561
+ {
562
+ "inputs": [
563
+ {
564
+ "internalType": "uint32",
565
+ "name": "tokenType",
566
+ "type": "uint32"
567
+ },
568
+ {
569
+ "internalType": "bytes32",
570
+ "name": "bondLevelId",
571
+ "type": "bytes32"
572
+ }
573
+ ],
574
+ "name": "WIRE_BondLevelExists",
575
+ "type": "error"
576
+ },
577
+ {
578
+ "inputs": [
579
+ {
580
+ "internalType": "uint32",
581
+ "name": "tokenType",
582
+ "type": "uint32"
583
+ },
584
+ {
585
+ "internalType": "bytes32",
586
+ "name": "bondLevelId",
587
+ "type": "bytes32"
588
+ }
589
+ ],
590
+ "name": "WIRE_BondLevelHasNoRoles",
591
+ "type": "error"
592
+ },
593
+ {
594
+ "inputs": [
595
+ {
596
+ "internalType": "uint32",
597
+ "name": "tokenType",
598
+ "type": "uint32"
599
+ },
600
+ {
601
+ "internalType": "bytes32",
602
+ "name": "bondLevelId",
603
+ "type": "bytes32"
604
+ }
605
+ ],
606
+ "name": "WIRE_BondLevelNoAmount",
607
+ "type": "error"
608
+ },
609
+ {
610
+ "inputs": [
611
+ {
612
+ "internalType": "uint32",
613
+ "name": "tokenType",
614
+ "type": "uint32"
615
+ },
616
+ {
617
+ "internalType": "bytes32",
618
+ "name": "bondLevelId",
619
+ "type": "bytes32"
620
+ }
621
+ ],
622
+ "name": "WIRE_BondLevelNoEthEquivalent",
623
+ "type": "error"
624
+ },
625
+ {
626
+ "inputs": [
627
+ {
628
+ "internalType": "uint32",
629
+ "name": "tokenType",
630
+ "type": "uint32"
631
+ },
632
+ {
633
+ "internalType": "bytes32",
634
+ "name": "bondLevelId",
635
+ "type": "bytes32"
636
+ }
637
+ ],
638
+ "name": "WIRE_BondLevelNoTokenContract",
639
+ "type": "error"
640
+ },
641
+ {
642
+ "inputs": [
643
+ {
644
+ "internalType": "uint32",
645
+ "name": "tokenType",
646
+ "type": "uint32"
647
+ },
648
+ {
649
+ "internalType": "bytes32",
650
+ "name": "bondLevelId",
651
+ "type": "bytes32"
652
+ }
653
+ ],
654
+ "name": "WIRE_BondLevelNoTokenId",
655
+ "type": "error"
656
+ },
657
+ {
658
+ "inputs": [
659
+ {
660
+ "internalType": "uint256",
661
+ "name": "value",
662
+ "type": "uint256"
663
+ },
664
+ {
665
+ "internalType": "uint256",
666
+ "name": "minValue",
667
+ "type": "uint256"
668
+ }
669
+ ],
670
+ "name": "WIRE_BondLevelWarmupTooShort",
671
+ "type": "error"
672
+ },
673
+ {
674
+ "inputs": [
675
+ {
676
+ "internalType": "address",
677
+ "name": "actor",
678
+ "type": "address"
679
+ }
680
+ ],
681
+ "name": "WIRE_BondNotUnbonding",
682
+ "type": "error"
683
+ },
684
+ {
685
+ "inputs": [
686
+ {
687
+ "internalType": "uint32",
688
+ "name": "tokenType",
689
+ "type": "uint32"
690
+ },
691
+ {
692
+ "internalType": "bytes32",
693
+ "name": "bondLevelId",
694
+ "type": "bytes32"
695
+ },
696
+ {
697
+ "internalType": "uint256",
698
+ "name": "requiredTokenId",
699
+ "type": "uint256"
700
+ },
701
+ {
702
+ "internalType": "uint256",
703
+ "name": "providedTokenId",
704
+ "type": "uint256"
705
+ }
706
+ ],
707
+ "name": "WIRE_BondTokenIdMismatch",
708
+ "type": "error"
709
+ },
710
+ {
711
+ "inputs": [
712
+ {
713
+ "internalType": "address",
714
+ "name": "to",
715
+ "type": "address"
716
+ },
717
+ {
718
+ "internalType": "uint256",
719
+ "name": "amount",
720
+ "type": "uint256"
721
+ }
722
+ ],
723
+ "name": "WIRE_EthSendFailed",
724
+ "type": "error"
725
+ },
726
+ {
727
+ "inputs": [],
728
+ "name": "WIRE_GoLiveInProgress",
729
+ "type": "error"
730
+ },
731
+ {
732
+ "inputs": [
733
+ {
734
+ "internalType": "uint256",
735
+ "name": "required",
736
+ "type": "uint256"
737
+ },
738
+ {
739
+ "internalType": "uint256",
740
+ "name": "available",
741
+ "type": "uint256"
742
+ }
743
+ ],
744
+ "name": "WIRE_InsufficientEthBalance",
745
+ "type": "error"
746
+ },
747
+ {
748
+ "inputs": [],
749
+ "name": "WIRE_InvalidPrice",
750
+ "type": "error"
751
+ },
752
+ {
753
+ "inputs": [
754
+ {
755
+ "internalType": "address",
756
+ "name": "from",
757
+ "type": "address"
758
+ },
759
+ {
760
+ "internalType": "address",
761
+ "name": "to",
762
+ "type": "address"
763
+ },
764
+ {
765
+ "internalType": "uint256",
766
+ "name": "amount",
767
+ "type": "uint256"
768
+ }
769
+ ],
770
+ "name": "WIRE_LiqEthTransferFailed",
771
+ "type": "error"
772
+ },
773
+ {
774
+ "inputs": [],
775
+ "name": "WIRE_NoPricesRecorded",
776
+ "type": "error"
777
+ },
778
+ {
779
+ "inputs": [],
780
+ "name": "WIRE_NoYield",
781
+ "type": "error"
782
+ },
783
+ {
784
+ "inputs": [
785
+ {
786
+ "internalType": "address",
787
+ "name": "actor",
788
+ "type": "address"
789
+ },
790
+ {
791
+ "internalType": "address",
792
+ "name": "owner",
793
+ "type": "address"
794
+ },
795
+ {
796
+ "internalType": "address",
797
+ "name": "caller",
798
+ "type": "address"
799
+ }
800
+ ],
801
+ "name": "WIRE_NotBondOwner",
802
+ "type": "error"
803
+ },
804
+ {
805
+ "inputs": [
806
+ {
807
+ "internalType": "uint256",
808
+ "name": "receiptId",
809
+ "type": "uint256"
810
+ },
811
+ {
812
+ "internalType": "address",
813
+ "name": "owner",
814
+ "type": "address"
815
+ },
816
+ {
817
+ "internalType": "address",
818
+ "name": "caller",
819
+ "type": "address"
820
+ }
821
+ ],
822
+ "name": "WIRE_NotReceiptOwner",
823
+ "type": "error"
824
+ },
825
+ {
826
+ "inputs": [
827
+ {
828
+ "internalType": "uint256",
829
+ "name": "price",
830
+ "type": "uint256"
831
+ },
832
+ {
833
+ "internalType": "uint256",
834
+ "name": "minPrice",
835
+ "type": "uint256"
836
+ },
837
+ {
838
+ "internalType": "uint256",
839
+ "name": "maxPrice",
840
+ "type": "uint256"
841
+ }
842
+ ],
843
+ "name": "WIRE_PriceOutOfBounds",
844
+ "type": "error"
845
+ },
846
+ {
847
+ "inputs": [
848
+ {
849
+ "internalType": "uint256",
850
+ "name": "receiptId",
851
+ "type": "uint256"
852
+ }
853
+ ],
854
+ "name": "WIRE_ReceiptNotWithdrawable",
855
+ "type": "error"
856
+ },
857
+ {
858
+ "inputs": [],
859
+ "name": "WIRE_RefundingInProgress",
860
+ "type": "error"
861
+ },
862
+ {
863
+ "inputs": [],
864
+ "name": "WIRE_RefundingOnly",
865
+ "type": "error"
866
+ },
867
+ {
868
+ "inputs": [],
869
+ "name": "WIRE_TooManyTranches",
870
+ "type": "error"
871
+ },
872
+ {
873
+ "inputs": [
874
+ {
875
+ "internalType": "string",
876
+ "name": "reason",
877
+ "type": "string"
878
+ }
879
+ ],
880
+ "name": "WIRE_UnexpectedError",
881
+ "type": "error"
882
+ },
883
+ {
884
+ "inputs": [],
885
+ "name": "WIRE_ZeroAmount",
886
+ "type": "error"
887
+ },
888
+ {
889
+ "inputs": [],
890
+ "name": "WIRE_ZeroPretokensBought",
891
+ "type": "error"
892
+ },
893
+ {
894
+ "inputs": [],
895
+ "name": "WIRE_ZeroShares",
896
+ "type": "error"
897
+ },
898
+ {
899
+ "anonymous": false,
900
+ "inputs": [
901
+ {
902
+ "indexed": true,
903
+ "internalType": "address",
904
+ "name": "adapter",
905
+ "type": "address"
906
+ }
907
+ ],
908
+ "name": "AdapterUpdated",
909
+ "type": "event"
910
+ },
911
+ {
912
+ "anonymous": false,
913
+ "inputs": [
914
+ {
915
+ "indexed": true,
916
+ "internalType": "address",
917
+ "name": "owner",
918
+ "type": "address"
919
+ },
920
+ {
921
+ "indexed": true,
922
+ "internalType": "address",
923
+ "name": "spender",
924
+ "type": "address"
925
+ },
926
+ {
927
+ "indexed": false,
928
+ "internalType": "uint256",
929
+ "name": "value",
930
+ "type": "uint256"
931
+ }
932
+ ],
933
+ "name": "Approval",
934
+ "type": "event"
935
+ },
936
+ {
937
+ "anonymous": false,
938
+ "inputs": [
939
+ {
940
+ "indexed": false,
941
+ "internalType": "address",
942
+ "name": "authority",
943
+ "type": "address"
944
+ }
945
+ ],
946
+ "name": "AuthorityUpdated",
947
+ "type": "event"
948
+ },
949
+ {
950
+ "anonymous": false,
951
+ "inputs": [
952
+ {
953
+ "indexed": false,
954
+ "internalType": "uint64",
955
+ "name": "version",
956
+ "type": "uint64"
957
+ }
958
+ ],
959
+ "name": "Initialized",
960
+ "type": "event"
961
+ },
962
+ {
963
+ "anonymous": false,
964
+ "inputs": [
965
+ {
966
+ "indexed": false,
967
+ "internalType": "address",
968
+ "name": "account",
969
+ "type": "address"
970
+ }
971
+ ],
972
+ "name": "Paused",
973
+ "type": "event"
974
+ },
975
+ {
976
+ "anonymous": false,
977
+ "inputs": [
978
+ {
979
+ "indexed": true,
980
+ "internalType": "uint256",
981
+ "name": "trancheNumber",
982
+ "type": "uint256"
983
+ },
984
+ {
985
+ "indexed": false,
986
+ "internalType": "uint256",
987
+ "name": "fullSupply",
988
+ "type": "uint256"
989
+ },
990
+ {
991
+ "indexed": false,
992
+ "internalType": "uint256",
993
+ "name": "priceUsd",
994
+ "type": "uint256"
995
+ }
996
+ ],
997
+ "name": "TrancheAdvanced",
998
+ "type": "event"
999
+ },
1000
+ {
1001
+ "anonymous": false,
1002
+ "inputs": [
1003
+ {
1004
+ "indexed": true,
1005
+ "internalType": "address",
1006
+ "name": "from",
1007
+ "type": "address"
1008
+ },
1009
+ {
1010
+ "indexed": true,
1011
+ "internalType": "address",
1012
+ "name": "to",
1013
+ "type": "address"
1014
+ },
1015
+ {
1016
+ "indexed": false,
1017
+ "internalType": "uint256",
1018
+ "name": "value",
1019
+ "type": "uint256"
1020
+ }
1021
+ ],
1022
+ "name": "Transfer",
1023
+ "type": "event"
1024
+ },
1025
+ {
1026
+ "anonymous": false,
1027
+ "inputs": [
1028
+ {
1029
+ "indexed": false,
1030
+ "internalType": "address",
1031
+ "name": "account",
1032
+ "type": "address"
1033
+ }
1034
+ ],
1035
+ "name": "Unpaused",
1036
+ "type": "event"
1037
+ },
1038
+ {
1039
+ "anonymous": false,
1040
+ "inputs": [
1041
+ {
1042
+ "indexed": true,
1043
+ "internalType": "address",
1044
+ "name": "implementation",
1045
+ "type": "address"
1046
+ }
1047
+ ],
1048
+ "name": "Upgraded",
1049
+ "type": "event"
1050
+ },
1051
+ {
1052
+ "inputs": [],
1053
+ "name": "UNUSED",
1054
+ "outputs": [
1055
+ {
1056
+ "internalType": "uint256",
1057
+ "name": "",
1058
+ "type": "uint256"
1059
+ }
1060
+ ],
1061
+ "stateMutability": "view",
1062
+ "type": "function"
1063
+ },
1064
+ {
1065
+ "inputs": [],
1066
+ "name": "UPGRADE_INTERFACE_VERSION",
1067
+ "outputs": [
1068
+ {
1069
+ "internalType": "string",
1070
+ "name": "",
1071
+ "type": "string"
1072
+ }
1073
+ ],
1074
+ "stateMutability": "view",
1075
+ "type": "function"
1076
+ },
1077
+ {
1078
+ "inputs": [
1079
+ {
1080
+ "internalType": "address",
1081
+ "name": "owner",
1082
+ "type": "address"
1083
+ }
1084
+ ],
1085
+ "name": "__OPPEndpointManaged_init",
1086
+ "outputs": [],
1087
+ "stateMutability": "nonpayable",
1088
+ "type": "function"
1089
+ },
1090
+ {
1091
+ "inputs": [
1092
+ {
1093
+ "internalType": "address",
1094
+ "name": "owner",
1095
+ "type": "address"
1096
+ },
1097
+ {
1098
+ "internalType": "address",
1099
+ "name": "spender",
1100
+ "type": "address"
1101
+ }
1102
+ ],
1103
+ "name": "allowance",
1104
+ "outputs": [
1105
+ {
1106
+ "internalType": "uint256",
1107
+ "name": "",
1108
+ "type": "uint256"
1109
+ }
1110
+ ],
1111
+ "stateMutability": "view",
1112
+ "type": "function"
1113
+ },
1114
+ {
1115
+ "inputs": [
1116
+ {
1117
+ "internalType": "address",
1118
+ "name": "spender",
1119
+ "type": "address"
1120
+ },
1121
+ {
1122
+ "internalType": "uint256",
1123
+ "name": "value",
1124
+ "type": "uint256"
1125
+ }
1126
+ ],
1127
+ "name": "approve",
1128
+ "outputs": [
1129
+ {
1130
+ "internalType": "bool",
1131
+ "name": "",
1132
+ "type": "bool"
1133
+ }
1134
+ ],
1135
+ "stateMutability": "nonpayable",
1136
+ "type": "function"
1137
+ },
1138
+ {
1139
+ "inputs": [],
1140
+ "name": "authority",
1141
+ "outputs": [
1142
+ {
1143
+ "internalType": "address",
1144
+ "name": "",
1145
+ "type": "address"
1146
+ }
1147
+ ],
1148
+ "stateMutability": "view",
1149
+ "type": "function"
1150
+ },
1151
+ {
1152
+ "inputs": [
1153
+ {
1154
+ "internalType": "address",
1155
+ "name": "account",
1156
+ "type": "address"
1157
+ }
1158
+ ],
1159
+ "name": "balanceOf",
1160
+ "outputs": [
1161
+ {
1162
+ "internalType": "uint256",
1163
+ "name": "",
1164
+ "type": "uint256"
1165
+ }
1166
+ ],
1167
+ "stateMutability": "view",
1168
+ "type": "function"
1169
+ },
1170
+ {
1171
+ "inputs": [],
1172
+ "name": "decimals",
1173
+ "outputs": [
1174
+ {
1175
+ "internalType": "uint8",
1176
+ "name": "",
1177
+ "type": "uint8"
1178
+ }
1179
+ ],
1180
+ "stateMutability": "view",
1181
+ "type": "function"
1182
+ },
1183
+ {
1184
+ "inputs": [],
1185
+ "name": "getSummaryAssertions",
1186
+ "outputs": [
1187
+ {
1188
+ "components": [
1189
+ {
1190
+ "internalType": "uint16",
1191
+ "name": "assertionType",
1192
+ "type": "uint16"
1193
+ },
1194
+ {
1195
+ "internalType": "bytes",
1196
+ "name": "assertion",
1197
+ "type": "bytes"
1198
+ }
1199
+ ],
1200
+ "internalType": "struct OPPAssertion[]",
1201
+ "name": "",
1202
+ "type": "tuple[]"
1203
+ }
1204
+ ],
1205
+ "stateMutability": "nonpayable",
1206
+ "type": "function"
1207
+ },
1208
+ {
1209
+ "inputs": [
1210
+ {
1211
+ "internalType": "address",
1212
+ "name": "_owner",
1213
+ "type": "address"
1214
+ },
1215
+ {
1216
+ "internalType": "address",
1217
+ "name": "_priceConsumer",
1218
+ "type": "address"
1219
+ },
1220
+ {
1221
+ "internalType": "uint256",
1222
+ "name": "startSupply",
1223
+ "type": "uint256"
1224
+ },
1225
+ {
1226
+ "internalType": "uint256",
1227
+ "name": "startPriceUsd",
1228
+ "type": "uint256"
1229
+ },
1230
+ {
1231
+ "internalType": "uint256",
1232
+ "name": "_supplyGrowthBps",
1233
+ "type": "uint256"
1234
+ },
1235
+ {
1236
+ "internalType": "uint256",
1237
+ "name": "_priceIncrementUsd",
1238
+ "type": "uint256"
1239
+ }
1240
+ ],
1241
+ "name": "initialize",
1242
+ "outputs": [],
1243
+ "stateMutability": "nonpayable",
1244
+ "type": "function"
1245
+ },
1246
+ {
1247
+ "inputs": [],
1248
+ "name": "initializeV2",
1249
+ "outputs": [],
1250
+ "stateMutability": "nonpayable",
1251
+ "type": "function"
1252
+ },
1253
+ {
1254
+ "inputs": [],
1255
+ "name": "isConsumingScheduledOp",
1256
+ "outputs": [
1257
+ {
1258
+ "internalType": "bytes4",
1259
+ "name": "",
1260
+ "type": "bytes4"
1261
+ }
1262
+ ],
1263
+ "stateMutability": "view",
1264
+ "type": "function"
1265
+ },
1266
+ {
1267
+ "inputs": [],
1268
+ "name": "name",
1269
+ "outputs": [
1270
+ {
1271
+ "internalType": "string",
1272
+ "name": "",
1273
+ "type": "string"
1274
+ }
1275
+ ],
1276
+ "stateMutability": "view",
1277
+ "type": "function"
1278
+ },
1279
+ {
1280
+ "inputs": [],
1281
+ "name": "oppAddress",
1282
+ "outputs": [
1283
+ {
1284
+ "internalType": "address",
1285
+ "name": "",
1286
+ "type": "address"
1287
+ }
1288
+ ],
1289
+ "stateMutability": "view",
1290
+ "type": "function"
1291
+ },
1292
+ {
1293
+ "inputs": [],
1294
+ "name": "oppInboundAddress",
1295
+ "outputs": [
1296
+ {
1297
+ "internalType": "address",
1298
+ "name": "",
1299
+ "type": "address"
1300
+ }
1301
+ ],
1302
+ "stateMutability": "view",
1303
+ "type": "function"
1304
+ },
1305
+ {
1306
+ "inputs": [],
1307
+ "name": "pause",
1308
+ "outputs": [],
1309
+ "stateMutability": "nonpayable",
1310
+ "type": "function"
1311
+ },
1312
+ {
1313
+ "inputs": [],
1314
+ "name": "paused",
1315
+ "outputs": [
1316
+ {
1317
+ "internalType": "bool",
1318
+ "name": "",
1319
+ "type": "bool"
1320
+ }
1321
+ ],
1322
+ "stateMutability": "view",
1323
+ "type": "function"
1324
+ },
1325
+ {
1326
+ "inputs": [],
1327
+ "name": "priceConsumer",
1328
+ "outputs": [
1329
+ {
1330
+ "internalType": "contract EthUsdPriceConsumer",
1331
+ "name": "",
1332
+ "type": "address"
1333
+ }
1334
+ ],
1335
+ "stateMutability": "view",
1336
+ "type": "function"
1337
+ },
1338
+ {
1339
+ "inputs": [],
1340
+ "name": "priceIncrementUsd",
1341
+ "outputs": [
1342
+ {
1343
+ "internalType": "uint256",
1344
+ "name": "",
1345
+ "type": "uint256"
1346
+ }
1347
+ ],
1348
+ "stateMutability": "view",
1349
+ "type": "function"
1350
+ },
1351
+ {
1352
+ "inputs": [],
1353
+ "name": "proxiableUUID",
1354
+ "outputs": [
1355
+ {
1356
+ "internalType": "bytes32",
1357
+ "name": "",
1358
+ "type": "bytes32"
1359
+ }
1360
+ ],
1361
+ "stateMutability": "view",
1362
+ "type": "function"
1363
+ },
1364
+ {
1365
+ "inputs": [
1366
+ {
1367
+ "internalType": "address",
1368
+ "name": "buyer",
1369
+ "type": "address"
1370
+ },
1371
+ {
1372
+ "internalType": "uint256",
1373
+ "name": "ethAmountWei",
1374
+ "type": "uint256"
1375
+ }
1376
+ ],
1377
+ "name": "purchase",
1378
+ "outputs": [],
1379
+ "stateMutability": "nonpayable",
1380
+ "type": "function"
1381
+ },
1382
+ {
1383
+ "inputs": [
1384
+ {
1385
+ "internalType": "address",
1386
+ "name": "",
1387
+ "type": "address"
1388
+ }
1389
+ ],
1390
+ "name": "purchaserPretokens",
1391
+ "outputs": [
1392
+ {
1393
+ "internalType": "uint256",
1394
+ "name": "",
1395
+ "type": "uint256"
1396
+ }
1397
+ ],
1398
+ "stateMutability": "view",
1399
+ "type": "function"
1400
+ },
1401
+ {
1402
+ "inputs": [
1403
+ {
1404
+ "internalType": "address",
1405
+ "name": "",
1406
+ "type": "address"
1407
+ }
1408
+ ],
1409
+ "name": "purchaserPrincipalWei",
1410
+ "outputs": [
1411
+ {
1412
+ "internalType": "uint256",
1413
+ "name": "",
1414
+ "type": "uint256"
1415
+ }
1416
+ ],
1417
+ "stateMutability": "view",
1418
+ "type": "function"
1419
+ },
1420
+ {
1421
+ "inputs": [
1422
+ {
1423
+ "internalType": "address",
1424
+ "name": "newAuthority",
1425
+ "type": "address"
1426
+ }
1427
+ ],
1428
+ "name": "setAuthority",
1429
+ "outputs": [],
1430
+ "stateMutability": "nonpayable",
1431
+ "type": "function"
1432
+ },
1433
+ {
1434
+ "inputs": [
1435
+ {
1436
+ "internalType": "uint256",
1437
+ "name": "_supplyGrowthBps",
1438
+ "type": "uint256"
1439
+ },
1440
+ {
1441
+ "internalType": "uint256",
1442
+ "name": "_priceIncrementUsd",
1443
+ "type": "uint256"
1444
+ }
1445
+ ],
1446
+ "name": "setGrowthBps",
1447
+ "outputs": [],
1448
+ "stateMutability": "nonpayable",
1449
+ "type": "function"
1450
+ },
1451
+ {
1452
+ "inputs": [
1453
+ {
1454
+ "internalType": "address",
1455
+ "name": "_oppAddress",
1456
+ "type": "address"
1457
+ },
1458
+ {
1459
+ "internalType": "address",
1460
+ "name": "_oppInboundAddress",
1461
+ "type": "address"
1462
+ }
1463
+ ],
1464
+ "name": "setOPPAddresses",
1465
+ "outputs": [],
1466
+ "stateMutability": "nonpayable",
1467
+ "type": "function"
1468
+ },
1469
+ {
1470
+ "inputs": [
1471
+ {
1472
+ "internalType": "address",
1473
+ "name": "_consumer",
1474
+ "type": "address"
1475
+ }
1476
+ ],
1477
+ "name": "setPriceConsumer",
1478
+ "outputs": [],
1479
+ "stateMutability": "nonpayable",
1480
+ "type": "function"
1481
+ },
1482
+ {
1483
+ "inputs": [],
1484
+ "name": "supplyGrowthBps",
1485
+ "outputs": [
1486
+ {
1487
+ "internalType": "uint256",
1488
+ "name": "",
1489
+ "type": "uint256"
1490
+ }
1491
+ ],
1492
+ "stateMutability": "view",
1493
+ "type": "function"
1494
+ },
1495
+ {
1496
+ "inputs": [],
1497
+ "name": "symbol",
1498
+ "outputs": [
1499
+ {
1500
+ "internalType": "string",
1501
+ "name": "",
1502
+ "type": "string"
1503
+ }
1504
+ ],
1505
+ "stateMutability": "view",
1506
+ "type": "function"
1507
+ },
1508
+ {
1509
+ "inputs": [],
1510
+ "name": "totalSupply",
1511
+ "outputs": [
1512
+ {
1513
+ "internalType": "uint256",
1514
+ "name": "",
1515
+ "type": "uint256"
1516
+ }
1517
+ ],
1518
+ "stateMutability": "view",
1519
+ "type": "function"
1520
+ },
1521
+ {
1522
+ "inputs": [],
1523
+ "name": "trancheFullSupply",
1524
+ "outputs": [
1525
+ {
1526
+ "internalType": "uint256",
1527
+ "name": "",
1528
+ "type": "uint256"
1529
+ }
1530
+ ],
1531
+ "stateMutability": "view",
1532
+ "type": "function"
1533
+ },
1534
+ {
1535
+ "inputs": [],
1536
+ "name": "trancheNumber",
1537
+ "outputs": [
1538
+ {
1539
+ "internalType": "uint256",
1540
+ "name": "",
1541
+ "type": "uint256"
1542
+ }
1543
+ ],
1544
+ "stateMutability": "view",
1545
+ "type": "function"
1546
+ },
1547
+ {
1548
+ "inputs": [],
1549
+ "name": "tranchePriceUsd",
1550
+ "outputs": [
1551
+ {
1552
+ "internalType": "uint256",
1553
+ "name": "",
1554
+ "type": "uint256"
1555
+ }
1556
+ ],
1557
+ "stateMutability": "view",
1558
+ "type": "function"
1559
+ },
1560
+ {
1561
+ "inputs": [],
1562
+ "name": "trancheSupply",
1563
+ "outputs": [
1564
+ {
1565
+ "internalType": "uint256",
1566
+ "name": "",
1567
+ "type": "uint256"
1568
+ }
1569
+ ],
1570
+ "stateMutability": "view",
1571
+ "type": "function"
1572
+ },
1573
+ {
1574
+ "inputs": [
1575
+ {
1576
+ "internalType": "address",
1577
+ "name": "to",
1578
+ "type": "address"
1579
+ },
1580
+ {
1581
+ "internalType": "uint256",
1582
+ "name": "value",
1583
+ "type": "uint256"
1584
+ }
1585
+ ],
1586
+ "name": "transfer",
1587
+ "outputs": [
1588
+ {
1589
+ "internalType": "bool",
1590
+ "name": "",
1591
+ "type": "bool"
1592
+ }
1593
+ ],
1594
+ "stateMutability": "nonpayable",
1595
+ "type": "function"
1596
+ },
1597
+ {
1598
+ "inputs": [
1599
+ {
1600
+ "internalType": "address",
1601
+ "name": "from",
1602
+ "type": "address"
1603
+ },
1604
+ {
1605
+ "internalType": "address",
1606
+ "name": "to",
1607
+ "type": "address"
1608
+ },
1609
+ {
1610
+ "internalType": "uint256",
1611
+ "name": "value",
1612
+ "type": "uint256"
1613
+ }
1614
+ ],
1615
+ "name": "transferFrom",
1616
+ "outputs": [
1617
+ {
1618
+ "internalType": "bool",
1619
+ "name": "",
1620
+ "type": "bool"
1621
+ }
1622
+ ],
1623
+ "stateMutability": "nonpayable",
1624
+ "type": "function"
1625
+ },
1626
+ {
1627
+ "inputs": [],
1628
+ "name": "unpause",
1629
+ "outputs": [],
1630
+ "stateMutability": "nonpayable",
1631
+ "type": "function"
1632
+ },
1633
+ {
1634
+ "inputs": [
1635
+ {
1636
+ "internalType": "address",
1637
+ "name": "newImplementation",
1638
+ "type": "address"
1639
+ },
1640
+ {
1641
+ "internalType": "bytes",
1642
+ "name": "data",
1643
+ "type": "bytes"
1644
+ }
1645
+ ],
1646
+ "name": "upgradeToAndCall",
1647
+ "outputs": [],
1648
+ "stateMutability": "payable",
1649
+ "type": "function"
1650
+ },
1651
+ {
1652
+ "inputs": [],
1653
+ "name": "version",
1654
+ "outputs": [
1655
+ {
1656
+ "internalType": "string",
1657
+ "name": "",
1658
+ "type": "string"
1659
+ }
1660
+ ],
1661
+ "stateMutability": "pure",
1662
+ "type": "function"
1663
+ }
1664
+ ],
1665
+ "bytecode": "0x60a0806040523460295730608052612628908161002f823960805181818161185401526123de0152f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c90816306fdde0314611eae57508063095ea7b314611e7b5780630d4ac80214611e4257806318160ddd14611e0557806320b5596314611de757806322d7123714611dc957806323b872dd14611c9f578063313ce56714611c835780633d08889614611c2f5780633f4ba83a14611bb5578063461a758c14611b8e5780634ac53f1d14611b705780634dc530ff14611acf5780634f1ef286146118be57806352d1902d1461184157806353fd0c0d1461180857806354fd4d50146117c55780635c975abb146117955780635cd8a76b1461171f57806370a08231146116c7578063712c27821461163c5780637a9e5e4b146115bc5780638456cb591461155257806386489ba914610ee657806386e76f7314610e585780638de93222146106955780638fb360371461064257806395d89b4114610560578063a9059cbb146104e8578063ad3cb1cc1461049e578063b2a5f2b714610480578063bf7e214f1461044a578063c360b5e914610327578063ca34df47146102f1578063cde78421146102a9578063d2b7605b1461028b578063dd62ed3e1461020c578063eb58eaf1146101ee5763edab2cae146101ce57600080fd5b346101eb57806003193601126101eb576020600454604051908152f35b80fd5b50346101eb57806003193601126101eb576020600554604051908152f35b50346101eb5760403660031901126101eb57610226611fbf565b61026c610231611fda565b6001600160a01b0390921660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020526040902090565b9060018060a01b03166000526020526020604060002054604051908152f35b50346101eb57806003193601126101eb576020600354604051908152f35b50346101eb57806003193601126101eb577f706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd9546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb57600080516020612573833981519152546040516001600160a01b039091168152602090f35b50346101eb5760203660031901126101eb57610341611fbf565b6000805160206125d383398151915290815460ff8160401c1615916001600160401b03821680159081610442575b6001149081610438575b15908161042f575b5061041d5767ffffffffffffffff19821660011784556103b791836103fe575b506103aa612440565b6103b2612440565b6122a0565b6103bf612440565b6103c7612440565b6103cf612440565b6103d7575080f35b60ff60401b198154169055600080516020612553833981519152602060405160018152a180f35b68ffffffffffffffffff191668010000000000000001178455386103a1565b60405163f92ee8a960e01b8152600490fd5b90501538610381565b303b159150610379565b84915061036f565b50346101eb57806003193601126101eb576000805160206124f3833981519152546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb576020600154604051908152f35b50346101eb57806003193601126101eb576104e46040516104be81612019565b60058152640352e302e360dc1b6020820152604051918291602083526020830190611f9a565b0390f35b50346101eb5760403660031901126101eb57610502611fbf565b3315610547576001600160a01b03161561052e57604051634b637e8f60e11b8152336004820152602490fd5b60405163ec442f0560e01b815260006004820152602490fd5b604051634b637e8f60e11b815260006004820152602490fd5b50346101eb57806003193601126101eb5760405190808260008051602061253383398151915292835461059281612070565b938484526020956001928760018216918260001461061e5750506001146105d7575b5050506105c392500383612034565b6104e4604051928284938452830190611f9a565b8152859250906000805160206125b38339815191525b8583106106065750506105c393508201013880806105b4565b805483890185015287945086939092019181016105ed565b9350945050506105c394915060ff191682840152151560051b8201013880806105b4565b50346101eb57806003193601126101eb576000805160206124f38339815191525460a01c60ff161561068d57506020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60209061067a565b50346101eb5760403660031901126101eb576106af611fbf565b6106b76122f9565b6106c13633612124565b600080516020612573833981519152546001600160a01b03168015610c20575a813b15610e54576040516327e935a160e01b815260048101829052848160248183875af18015610b8357610e41575b5060243515610e2f5783546040516333022ec560e01b815290602090829060049082906001600160a01b03165afa908115610b83578591610dfb575b50610762670de0b6b3a7640000916024356120e1565b049284908482815b610c5d5750508115610c4b576001600160a01b0316938415610c32577f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace026107b283825461210a565b9055846000527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0060205260406000208281540190558460007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020604051868152a384865260076020526040862061082d602435825461210a565b905584865260086020526040862061084683825461210a565b9055600080516020612573833981519152547f7a7ef2e786f2e2e26f0a8d1c18e1ce8d0e9a183cd1289abd7052371335196d43805496909390916001600160a01b03168015610c20576020600491604051928380926372277dad60e11b82525afa908115610c15578991610bd6575b5015610bc457600196871b87178455604051635ca2159160e11b81528892838260048173__$871508ae888325252fdba23f15f3f16064$__5af4918215610b5e578492610ba8575b508361094373__$46bbbc6398365a8909166570292cf8d34e$__936040519384928392631f21838760e01b84526040600485015251602060448501526064840190611f9a565b9060248301520381855af4908115610b5e578491610b8e575b5060405184818061097f63fb70775b60e01b9586835260243590600484016123b1565b0381865af4958615610b83576109ad9686928391610b69575b506040519788928392868452600484016123b1565b0381855af4908115610b5e576109da958592610b42575b50604051958694859384938452600484016123b1565b03915af4908115610b37578691610b15575b50815485811615610afd57600119168255600080516020612573833981519152548691906001600160a01b0316803b15610af957610a5c83929183926040519485809481936327710fa960e11b8352610bbd60048401526040602484015251602060448401526064830190611f9a565b03925af18015610ac057610ae1575b505080548480821614610acf5785941c9055813b15610acb57829160248392604051948593849263f5786b4b60e01b845260048401525af18015610ac057610ab05750f35b610ab990611ff0565b6101eb5780f35b6040513d84823e3d90fd5b5050fd5b6040516383db270d60e01b8152600490fd5b610aea90611ff0565b610af5578438610a6b565b8480fd5b8280fd5b60249060405190633b48047760e01b82526004820152fd5b610b3191503d8088833e610b298183612034565b810190612324565b386109ec565b6040513d88823e3d90fd5b610b579192503d8087833e610b298183612034565b90386109c4565b6040513d86823e3d90fd5b610b7d91503d8085833e610b298183612034565b38610998565b6040513d87823e3d90fd5b610ba291503d8086833e610b298183612034565b3861095c565b610bbd9192503d8086833e610b298183612034565b90386108fd565b60405163738c481160e01b8152600490fd5b90506020813d602011610c0d575b81610bf160209383612034565b81010312610c0957518015158103610c0957386108b5565b8880fd5b3d9150610be4565b6040513d8b823e3d90fd5b604051632ea0fec960e11b8152600490fd5b60405163ec442f0560e01b815260048101879052602490fd5b60405163cd4e820960e01b8152600490fd5b90926000198214610de75760018092019060648211610dd55760029081549060045491670de0b6b3a7640000610c9384836120e1565b0492838910610d6557505090610cae610cb49284549061210a565b96612117565b9280548181018111610d51578181018255600354600554806127100161271011610d3d57927f97a3695ca1edb46ed7238bb77b851023242f614e974852c26e8a2fe120b68fa292612710610d0f6040948a98978301906120e1565b049485610d216004546006549061210a565b91816003555580600455835195865260208601520192a261076a565b634e487b7160e01b8d52601160045260248dfd5b634e487b7160e01b8b52601160045260248bfd5b9192509692939450670de0b6b3a76400008302928304670de0b6b3a764000003610d51578015610dbf57610dad920490868211610db7575b81610da79161210a565b95612117565b905586908161076a565b869150610d9d565b634e487b7160e01b600052601260045260246000fd5b6040516301f6367360e71b8152600490fd5b634e487b7160e01b88526011600452602488fd5b90506020813d602011610e27575b81610e1660209383612034565b81010312610af5575161076261074c565b3d9150610e09565b604051634143610760e01b8152600490fd5b610e4d90949194611ff0565b9238610710565b8380fd5b50346101eb5760203660031901126101eb57610e72611fbf565b610e7c3633612124565b6001600160a01b038116908115610ec5575081546001600160a01b031916811782557fe0f844393110e68237572819538a8c2bc270b13eac280c04079392bfb615b30b8280a280f35b604051632215fb1f60e11b8152908190610ee290600483016120aa565b0390fd5b50346101eb5760c03660031901126101eb57610f00611fbf565b90610f09611fda565b906000805160206125d383398151915254926001600160401b03841680159081611542575b6001149081611538575b15908161152f575b5061041d576001600160401b03196001818616176000805160206125d38339815191525560ff8560401c1615611502575b610f79612440565b610f81612440565b6000805160206125d3833981519152549160ff8360401c1615926001600160401b038116801590816114fa575b60011490816114f0575b1590816114e7575b5061041d57836001610fec948316176000805160206125d3833981519152556114ba57506103aa612440565b610ff4612440565b610ffc612440565b611004612440565b611475575b611011612440565b600160801b7f7a7ef2e786f2e2e26f0a8d1c18e1ce8d0e9a183cd1289abd7052371335196d4355611040612440565b6040519261104d84612019565b600d84526c2bb4b93290283932ba37b5b2b760991b60208501526040519361107485612019565b600385526215d41560ea1b602086015261108c612440565b611094612440565b8051906001600160401b0382116114615781906110bf60008051602061251383398151915254612070565b601f81116113e2575b50602090601f8311600114611352578592611347575b50508160011b916000199060031b1c191617600080516020612513833981519152555b83516001600160401b0381116113335761112960008051602061253383398151915254612070565b601f81116112bb575b50602094601f8211600114611231579483949582939492611226575b50508160011b916000199060031b1c191617600080516020612533833981519152555b611179612440565b6001600160a01b038316801561120b5782546001600160a01b0319161782556001829055604435600281905560035560643560045560843560055560a43560065560401c60ff16156111c85780f35b60ff60401b196000805160206125d383398151915254166000805160206125d383398151915255600080516020612553833981519152602060405160018152a180f35b604051632215fb1f60e11b815280610ee286600483016120aa565b01519050388061114e565b6000805160206125338339815191528452601f198216956000805160206125b383398151915291855b8881106112a35750836001959697981061128a575b505050811b0160008051602061253383398151915255611171565b015160001960f88460031b161c1916905538808061126f565b9192602060018192868501518155019401920161125a565b6000805160206125338339815191528452601f820160051c6000805160206125b383398151915201906020831061131d575b601f0160051c6000805160206125b383398151915201905b8181106113125750611132565b848155600101611305565b6000805160206125b383398151915291506112ed565b634e487b7160e01b83526041600452602483fd5b0151905038806110de565b925060008051602061251383398151915285526000805160206124d38339815191529085935b601f19841685106113c7576001945083601f198116106113ae575b505050811b0160008051602061251383398151915255611101565b015160001960f88460031b161c19169055388080611393565b81810151835560209485019460019093019290910190611378565b9091506000805160206125138339815191528552601f830160051c6000805160206124d3833981519152016020841061144c575b908392915b601f820160051c6000805160206124d383398151915201811061143e57506110c8565b86815584935060010161141b565b506000805160206124d3833981519152611416565b634e487b7160e01b84526041600452602484fd5b60ff60401b196000805160206125d383398151915254166000805160206125d383398151915255600080516020612553833981519152602060405160018152a1611009565b68ffffffffffffffffff191668010000000000000001176000805160206125d383398151915255386103a1565b90501538610fc0565b303b159150610fb8565b859150610fae565b68ffffffffffffffffff19851668010000000000000001176000805160206125d383398151915255610f71565b90501538610f40565b303b159150610f38565b604086901c60ff16159150610f2e565b50346101eb57806003193601126101eb5761156d3633612124565b6115756122f9565b600080516020612593833981519152600160ff198254161790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a180f35b50346101eb5760203660031901126101eb576115d6611fbf565b6000805160206124f3833981519152546001600160a01b03908116330361162557813b1561160b5750611608906122a0565b80f35b6040516361798f2f60e11b81529116600482015260249150fd5b60405162d1953b60e31b8152336004820152602490fd5b50346101eb5760403660031901126101eb57611656611fbf565b61165e611fda565b906116693633612124565b60018060a01b036bffffffffffffffffffffffff60a01b91816000805160206125738339815191529116838254161790557f706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd992169082541617905580f35b50346101eb5760203660031901126101eb576020906040906001600160a01b036116ef611fbf565b1681527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0083522054604051908152f35b50346101eb57806003193601126101eb576000805160206125d3833981519152805460ff8160401c168015611781575b61041d5760039068ffffffffffffffffff1916179055600080516020612553833981519152602060405160038152a180f35b5060036001600160401b038216101561174f565b50346101eb57806003193601126101eb57602060ff60008051602061259383398151915254166040519015158152f35b50346101eb57806003193601126101eb576104e46040516117e581612019565b60028152613b1960f11b6020820152604051918291602083526020830190611f9a565b50346101eb5760203660031901126101eb576020906040906001600160a01b03611830611fbf565b168152600783522054604051908152f35b50346101eb57806003193601126101eb577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036118ac5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b5060403660031901126101eb576118d3611fbf565b60249182356001600160401b038111611acb5736602382011215611acb5780600401356118ff81612055565b9361190d6040519586612034565b8185526020918286019336888383010111611ac757818692898693018737870101526119376123d4565b6119413633612124565b6119496123d4565b6040516352d1902d60e01b81526001600160a01b038216959083816004818a5afa869181611a94575b5061198f57604051634c9c8ce360e01b8152600481018890528890fd5b8690887f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91828103611a7f5750843b15611a69575080546001600160a01b031916821790556040518692917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a2815115611a4b5750611a3e9482915190845af4903d15611a42573d611a2281612055565b90611a306040519283612034565b81528581943d92013e61246f565b5080f35b6060925061246f565b94505050505034611a5a575080f35b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101849052fd5b60405190632a87526960e21b82526004820152fd5b9091508481813d8311611ac0575b611aac8183612034565b81010312611abc57519038611972565b8680fd5b503d611aa2565b8580fd5b5080fd5b50346101eb57806003193601126101eb57604051602090818101908082106001600160401b03831117611461576040828152848252805184815291518285018190529193600583901b8501820193929185015b828710611b2f5785850386f35b909192938280611b60600193603f198a82030186526040838a5161ffff815116845201519181858201520190611f9a565b9601920196019592919092611b22565b50346101eb57806003193601126101eb576020600954604051908152f35b50346101eb57806003193601126101eb57546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb57611bd03633612124565b600080516020612593833981519152805460ff811615611c1d5760ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a180f35b604051638dfc202b60e01b8152600490fd5b50346101eb5760403660031901126101eb57600435611c4e3633612124565b612710808211611c65575060055560243560065580f35b6044925060405191631dda818b60e21b835260048301526024820152fd5b50346101eb57806003193601126101eb57602060405160128152f35b50346101eb5760603660031901126101eb57611cb9611fbf565b90611cc2611fda565b90604435611d018460018060a01b03166000527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01602052604060002090565b3383526020526040822054906000198210611d7a57506024936001600160a01b03908116939091508315611d62571615611d4b575060405190634b637e8f60e11b82526004820152fd5b90506040519063ec442f0560e01b82526004820152fd5b604051634b637e8f60e11b8152600481018490528590fd5b849250808210611da55760405163e602df0560e01b81526001600160a01b0384166004820152602490fd5b6064925060405191637dc7a0d960e11b835233600484015260248301526044820152fd5b50346101eb57806003193601126101eb576020600654604051908152f35b50346101eb57806003193601126101eb576020600254604051908152f35b50346101eb57806003193601126101eb5760207f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0254604051908152f35b50346101eb5760203660031901126101eb576020906040906001600160a01b03611e6a611fbf565b168152600883522054604051908152f35b50346101eb5760403660031901126101eb57611e95611fbf565b5060405163e602df0560e01b8152336004820152602490fd5b82346101eb57806003193601126101eb578082600080516020612513833981519152928354611edc81612070565b9384845260209560019287600182169182600014611f53575050600114611f0c575050506105c392500383612034565b8152859250906000805160206124d38339815191525b858310611f3b5750506105c393508201018580806105b4565b80548389018501528794508693909201918101611f22565b9350945050506105c394915060ff191682840152151560051b8201018580806105b4565b60005b838110611f8a5750506000910152565b8181015183820152602001611f7a565b90602091611fb381518092818552858086019101611f77565b601f01601f1916010190565b600435906001600160a01b0382168203611fd557565b600080fd5b602435906001600160a01b0382168203611fd557565b6001600160401b03811161200357604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761200357604052565b90601f801991011681019081106001600160401b0382111761200357604052565b6001600160401b03811161200357601f01601f191660200190565b90600182811c921680156120a0575b602083101461208a57565b634e487b7160e01b600052602260045260246000fd5b91607f169161207f565b6040808252600d908201526c283934b1b2a1b7b739bab6b2b960991b60608201526001600160a01b03909116602082015260800190565b818102929181159184041417156120f457565b634e487b7160e01b600052601160045260246000fd5b919082018092116120f457565b919082039182116120f457565b6000805160206124f38339815191528054909290916001600160a01b038084169260048110611fd557600080604094855194602086019163b700961360e01b8352169485602482015230604482015263ffffffff60e01b84351660648201526064815260a081018181106001600160401b0382111761228c5791849188938452828052826020525190895afa61227b575b156121c4575b50505050505050565b63ffffffff16156122655760ff60a01b19948516600160a01b178655833b15611fd557606493600092838551968780958194634a63ebf760e11b835260048301528860248301528060448301528084848401378181018301849052601f01601f191681010301925af190811561225b575061224c575b508154169055388080808080806121bb565b61225590611ff0565b3861223a565b513d6000823e3d90fd5b50602491519062d1953b60e31b82526004820152fd5b50516020518060201c1502906121b5565b634e487b7160e01b85526041600452602485fd5b6000805160206124f383398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60ff600080516020612593833981519152541661231257565b60405163d93c066560e01b8152600490fd5b9060208083830312611fd55782516001600160401b0393848211611fd55701928184840312611fd5576040519382850185811083821117612003576040528051918211611fd5570182601f82011215611fd55780519061238382612055565b936123916040519586612034565b828552838383010111611fd557826123ac9385019101611f77565b815290565b9291906123cf60209160408652518260408701526060860190611f9a565b930152565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612412575b50506118ac57565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541614159050388061240a565b60ff6000805160206125d38339815191525460401c161561245d57565b604051631afcd79f60e31b8152600490fd5b90612496575080511561248457602081519101fd5b60405163d6bda27560e01b8152600490fd5b815115806124c9575b6124a7575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561249f56fe2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0052c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0352c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04c7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd8cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330046a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aaf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220858432f69fd2be47919f3ce5cb5744c34dd5cff23ca855d3900c6571f925716164736f6c63430008190033",
1666
+ "deployedBytecode": "0x608080604052600436101561001357600080fd5b600090813560e01c90816306fdde0314611eae57508063095ea7b314611e7b5780630d4ac80214611e4257806318160ddd14611e0557806320b5596314611de757806322d7123714611dc957806323b872dd14611c9f578063313ce56714611c835780633d08889614611c2f5780633f4ba83a14611bb5578063461a758c14611b8e5780634ac53f1d14611b705780634dc530ff14611acf5780634f1ef286146118be57806352d1902d1461184157806353fd0c0d1461180857806354fd4d50146117c55780635c975abb146117955780635cd8a76b1461171f57806370a08231146116c7578063712c27821461163c5780637a9e5e4b146115bc5780638456cb591461155257806386489ba914610ee657806386e76f7314610e585780638de93222146106955780638fb360371461064257806395d89b4114610560578063a9059cbb146104e8578063ad3cb1cc1461049e578063b2a5f2b714610480578063bf7e214f1461044a578063c360b5e914610327578063ca34df47146102f1578063cde78421146102a9578063d2b7605b1461028b578063dd62ed3e1461020c578063eb58eaf1146101ee5763edab2cae146101ce57600080fd5b346101eb57806003193601126101eb576020600454604051908152f35b80fd5b50346101eb57806003193601126101eb576020600554604051908152f35b50346101eb5760403660031901126101eb57610226611fbf565b61026c610231611fda565b6001600160a01b0390921660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020526040902090565b9060018060a01b03166000526020526020604060002054604051908152f35b50346101eb57806003193601126101eb576020600354604051908152f35b50346101eb57806003193601126101eb577f706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd9546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb57600080516020612573833981519152546040516001600160a01b039091168152602090f35b50346101eb5760203660031901126101eb57610341611fbf565b6000805160206125d383398151915290815460ff8160401c1615916001600160401b03821680159081610442575b6001149081610438575b15908161042f575b5061041d5767ffffffffffffffff19821660011784556103b791836103fe575b506103aa612440565b6103b2612440565b6122a0565b6103bf612440565b6103c7612440565b6103cf612440565b6103d7575080f35b60ff60401b198154169055600080516020612553833981519152602060405160018152a180f35b68ffffffffffffffffff191668010000000000000001178455386103a1565b60405163f92ee8a960e01b8152600490fd5b90501538610381565b303b159150610379565b84915061036f565b50346101eb57806003193601126101eb576000805160206124f3833981519152546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb576020600154604051908152f35b50346101eb57806003193601126101eb576104e46040516104be81612019565b60058152640352e302e360dc1b6020820152604051918291602083526020830190611f9a565b0390f35b50346101eb5760403660031901126101eb57610502611fbf565b3315610547576001600160a01b03161561052e57604051634b637e8f60e11b8152336004820152602490fd5b60405163ec442f0560e01b815260006004820152602490fd5b604051634b637e8f60e11b815260006004820152602490fd5b50346101eb57806003193601126101eb5760405190808260008051602061253383398151915292835461059281612070565b938484526020956001928760018216918260001461061e5750506001146105d7575b5050506105c392500383612034565b6104e4604051928284938452830190611f9a565b8152859250906000805160206125b38339815191525b8583106106065750506105c393508201013880806105b4565b805483890185015287945086939092019181016105ed565b9350945050506105c394915060ff191682840152151560051b8201013880806105b4565b50346101eb57806003193601126101eb576000805160206124f38339815191525460a01c60ff161561068d57506020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60209061067a565b50346101eb5760403660031901126101eb576106af611fbf565b6106b76122f9565b6106c13633612124565b600080516020612573833981519152546001600160a01b03168015610c20575a813b15610e54576040516327e935a160e01b815260048101829052848160248183875af18015610b8357610e41575b5060243515610e2f5783546040516333022ec560e01b815290602090829060049082906001600160a01b03165afa908115610b83578591610dfb575b50610762670de0b6b3a7640000916024356120e1565b049284908482815b610c5d5750508115610c4b576001600160a01b0316938415610c32577f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace026107b283825461210a565b9055846000527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0060205260406000208281540190558460007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6020604051868152a384865260076020526040862061082d602435825461210a565b905584865260086020526040862061084683825461210a565b9055600080516020612573833981519152547f7a7ef2e786f2e2e26f0a8d1c18e1ce8d0e9a183cd1289abd7052371335196d43805496909390916001600160a01b03168015610c20576020600491604051928380926372277dad60e11b82525afa908115610c15578991610bd6575b5015610bc457600196871b87178455604051635ca2159160e11b81528892838260048173__$871508ae888325252fdba23f15f3f16064$__5af4918215610b5e578492610ba8575b508361094373__$46bbbc6398365a8909166570292cf8d34e$__936040519384928392631f21838760e01b84526040600485015251602060448501526064840190611f9a565b9060248301520381855af4908115610b5e578491610b8e575b5060405184818061097f63fb70775b60e01b9586835260243590600484016123b1565b0381865af4958615610b83576109ad9686928391610b69575b506040519788928392868452600484016123b1565b0381855af4908115610b5e576109da958592610b42575b50604051958694859384938452600484016123b1565b03915af4908115610b37578691610b15575b50815485811615610afd57600119168255600080516020612573833981519152548691906001600160a01b0316803b15610af957610a5c83929183926040519485809481936327710fa960e11b8352610bbd60048401526040602484015251602060448401526064830190611f9a565b03925af18015610ac057610ae1575b505080548480821614610acf5785941c9055813b15610acb57829160248392604051948593849263f5786b4b60e01b845260048401525af18015610ac057610ab05750f35b610ab990611ff0565b6101eb5780f35b6040513d84823e3d90fd5b5050fd5b6040516383db270d60e01b8152600490fd5b610aea90611ff0565b610af5578438610a6b565b8480fd5b8280fd5b60249060405190633b48047760e01b82526004820152fd5b610b3191503d8088833e610b298183612034565b810190612324565b386109ec565b6040513d88823e3d90fd5b610b579192503d8087833e610b298183612034565b90386109c4565b6040513d86823e3d90fd5b610b7d91503d8085833e610b298183612034565b38610998565b6040513d87823e3d90fd5b610ba291503d8086833e610b298183612034565b3861095c565b610bbd9192503d8086833e610b298183612034565b90386108fd565b60405163738c481160e01b8152600490fd5b90506020813d602011610c0d575b81610bf160209383612034565b81010312610c0957518015158103610c0957386108b5565b8880fd5b3d9150610be4565b6040513d8b823e3d90fd5b604051632ea0fec960e11b8152600490fd5b60405163ec442f0560e01b815260048101879052602490fd5b60405163cd4e820960e01b8152600490fd5b90926000198214610de75760018092019060648211610dd55760029081549060045491670de0b6b3a7640000610c9384836120e1565b0492838910610d6557505090610cae610cb49284549061210a565b96612117565b9280548181018111610d51578181018255600354600554806127100161271011610d3d57927f97a3695ca1edb46ed7238bb77b851023242f614e974852c26e8a2fe120b68fa292612710610d0f6040948a98978301906120e1565b049485610d216004546006549061210a565b91816003555580600455835195865260208601520192a261076a565b634e487b7160e01b8d52601160045260248dfd5b634e487b7160e01b8b52601160045260248bfd5b9192509692939450670de0b6b3a76400008302928304670de0b6b3a764000003610d51578015610dbf57610dad920490868211610db7575b81610da79161210a565b95612117565b905586908161076a565b869150610d9d565b634e487b7160e01b600052601260045260246000fd5b6040516301f6367360e71b8152600490fd5b634e487b7160e01b88526011600452602488fd5b90506020813d602011610e27575b81610e1660209383612034565b81010312610af5575161076261074c565b3d9150610e09565b604051634143610760e01b8152600490fd5b610e4d90949194611ff0565b9238610710565b8380fd5b50346101eb5760203660031901126101eb57610e72611fbf565b610e7c3633612124565b6001600160a01b038116908115610ec5575081546001600160a01b031916811782557fe0f844393110e68237572819538a8c2bc270b13eac280c04079392bfb615b30b8280a280f35b604051632215fb1f60e11b8152908190610ee290600483016120aa565b0390fd5b50346101eb5760c03660031901126101eb57610f00611fbf565b90610f09611fda565b906000805160206125d383398151915254926001600160401b03841680159081611542575b6001149081611538575b15908161152f575b5061041d576001600160401b03196001818616176000805160206125d38339815191525560ff8560401c1615611502575b610f79612440565b610f81612440565b6000805160206125d3833981519152549160ff8360401c1615926001600160401b038116801590816114fa575b60011490816114f0575b1590816114e7575b5061041d57836001610fec948316176000805160206125d3833981519152556114ba57506103aa612440565b610ff4612440565b610ffc612440565b611004612440565b611475575b611011612440565b600160801b7f7a7ef2e786f2e2e26f0a8d1c18e1ce8d0e9a183cd1289abd7052371335196d4355611040612440565b6040519261104d84612019565b600d84526c2bb4b93290283932ba37b5b2b760991b60208501526040519361107485612019565b600385526215d41560ea1b602086015261108c612440565b611094612440565b8051906001600160401b0382116114615781906110bf60008051602061251383398151915254612070565b601f81116113e2575b50602090601f8311600114611352578592611347575b50508160011b916000199060031b1c191617600080516020612513833981519152555b83516001600160401b0381116113335761112960008051602061253383398151915254612070565b601f81116112bb575b50602094601f8211600114611231579483949582939492611226575b50508160011b916000199060031b1c191617600080516020612533833981519152555b611179612440565b6001600160a01b038316801561120b5782546001600160a01b0319161782556001829055604435600281905560035560643560045560843560055560a43560065560401c60ff16156111c85780f35b60ff60401b196000805160206125d383398151915254166000805160206125d383398151915255600080516020612553833981519152602060405160018152a180f35b604051632215fb1f60e11b815280610ee286600483016120aa565b01519050388061114e565b6000805160206125338339815191528452601f198216956000805160206125b383398151915291855b8881106112a35750836001959697981061128a575b505050811b0160008051602061253383398151915255611171565b015160001960f88460031b161c1916905538808061126f565b9192602060018192868501518155019401920161125a565b6000805160206125338339815191528452601f820160051c6000805160206125b383398151915201906020831061131d575b601f0160051c6000805160206125b383398151915201905b8181106113125750611132565b848155600101611305565b6000805160206125b383398151915291506112ed565b634e487b7160e01b83526041600452602483fd5b0151905038806110de565b925060008051602061251383398151915285526000805160206124d38339815191529085935b601f19841685106113c7576001945083601f198116106113ae575b505050811b0160008051602061251383398151915255611101565b015160001960f88460031b161c19169055388080611393565b81810151835560209485019460019093019290910190611378565b9091506000805160206125138339815191528552601f830160051c6000805160206124d3833981519152016020841061144c575b908392915b601f820160051c6000805160206124d383398151915201811061143e57506110c8565b86815584935060010161141b565b506000805160206124d3833981519152611416565b634e487b7160e01b84526041600452602484fd5b60ff60401b196000805160206125d383398151915254166000805160206125d383398151915255600080516020612553833981519152602060405160018152a1611009565b68ffffffffffffffffff191668010000000000000001176000805160206125d383398151915255386103a1565b90501538610fc0565b303b159150610fb8565b859150610fae565b68ffffffffffffffffff19851668010000000000000001176000805160206125d383398151915255610f71565b90501538610f40565b303b159150610f38565b604086901c60ff16159150610f2e565b50346101eb57806003193601126101eb5761156d3633612124565b6115756122f9565b600080516020612593833981519152600160ff198254161790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586020604051338152a180f35b50346101eb5760203660031901126101eb576115d6611fbf565b6000805160206124f3833981519152546001600160a01b03908116330361162557813b1561160b5750611608906122a0565b80f35b6040516361798f2f60e11b81529116600482015260249150fd5b60405162d1953b60e31b8152336004820152602490fd5b50346101eb5760403660031901126101eb57611656611fbf565b61165e611fda565b906116693633612124565b60018060a01b036bffffffffffffffffffffffff60a01b91816000805160206125738339815191529116838254161790557f706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd992169082541617905580f35b50346101eb5760203660031901126101eb576020906040906001600160a01b036116ef611fbf565b1681527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0083522054604051908152f35b50346101eb57806003193601126101eb576000805160206125d3833981519152805460ff8160401c168015611781575b61041d5760039068ffffffffffffffffff1916179055600080516020612553833981519152602060405160038152a180f35b5060036001600160401b038216101561174f565b50346101eb57806003193601126101eb57602060ff60008051602061259383398151915254166040519015158152f35b50346101eb57806003193601126101eb576104e46040516117e581612019565b60028152613b1960f11b6020820152604051918291602083526020830190611f9a565b50346101eb5760203660031901126101eb576020906040906001600160a01b03611830611fbf565b168152600783522054604051908152f35b50346101eb57806003193601126101eb577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036118ac5760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b60405163703e46dd60e11b8152600490fd5b5060403660031901126101eb576118d3611fbf565b60249182356001600160401b038111611acb5736602382011215611acb5780600401356118ff81612055565b9361190d6040519586612034565b8185526020918286019336888383010111611ac757818692898693018737870101526119376123d4565b6119413633612124565b6119496123d4565b6040516352d1902d60e01b81526001600160a01b038216959083816004818a5afa869181611a94575b5061198f57604051634c9c8ce360e01b8152600481018890528890fd5b8690887f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc91828103611a7f5750843b15611a69575080546001600160a01b031916821790556040518692917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a2815115611a4b5750611a3e9482915190845af4903d15611a42573d611a2281612055565b90611a306040519283612034565b81528581943d92013e61246f565b5080f35b6060925061246f565b94505050505034611a5a575080f35b63b398979f60e01b8152600490fd5b604051634c9c8ce360e01b815260048101849052fd5b60405190632a87526960e21b82526004820152fd5b9091508481813d8311611ac0575b611aac8183612034565b81010312611abc57519038611972565b8680fd5b503d611aa2565b8580fd5b5080fd5b50346101eb57806003193601126101eb57604051602090818101908082106001600160401b03831117611461576040828152848252805184815291518285018190529193600583901b8501820193929185015b828710611b2f5785850386f35b909192938280611b60600193603f198a82030186526040838a5161ffff815116845201519181858201520190611f9a565b9601920196019592919092611b22565b50346101eb57806003193601126101eb576020600954604051908152f35b50346101eb57806003193601126101eb57546040516001600160a01b039091168152602090f35b50346101eb57806003193601126101eb57611bd03633612124565b600080516020612593833981519152805460ff811615611c1d5760ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6020604051338152a180f35b604051638dfc202b60e01b8152600490fd5b50346101eb5760403660031901126101eb57600435611c4e3633612124565b612710808211611c65575060055560243560065580f35b6044925060405191631dda818b60e21b835260048301526024820152fd5b50346101eb57806003193601126101eb57602060405160128152f35b50346101eb5760603660031901126101eb57611cb9611fbf565b90611cc2611fda565b90604435611d018460018060a01b03166000527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace01602052604060002090565b3383526020526040822054906000198210611d7a57506024936001600160a01b03908116939091508315611d62571615611d4b575060405190634b637e8f60e11b82526004820152fd5b90506040519063ec442f0560e01b82526004820152fd5b604051634b637e8f60e11b8152600481018490528590fd5b849250808210611da55760405163e602df0560e01b81526001600160a01b0384166004820152602490fd5b6064925060405191637dc7a0d960e11b835233600484015260248301526044820152fd5b50346101eb57806003193601126101eb576020600654604051908152f35b50346101eb57806003193601126101eb576020600254604051908152f35b50346101eb57806003193601126101eb5760207f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0254604051908152f35b50346101eb5760203660031901126101eb576020906040906001600160a01b03611e6a611fbf565b168152600883522054604051908152f35b50346101eb5760403660031901126101eb57611e95611fbf565b5060405163e602df0560e01b8152336004820152602490fd5b82346101eb57806003193601126101eb578082600080516020612513833981519152928354611edc81612070565b9384845260209560019287600182169182600014611f53575050600114611f0c575050506105c392500383612034565b8152859250906000805160206124d38339815191525b858310611f3b5750506105c393508201018580806105b4565b80548389018501528794508693909201918101611f22565b9350945050506105c394915060ff191682840152151560051b8201018580806105b4565b60005b838110611f8a5750506000910152565b8181015183820152602001611f7a565b90602091611fb381518092818552858086019101611f77565b601f01601f1916010190565b600435906001600160a01b0382168203611fd557565b600080fd5b602435906001600160a01b0382168203611fd557565b6001600160401b03811161200357604052565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761200357604052565b90601f801991011681019081106001600160401b0382111761200357604052565b6001600160401b03811161200357601f01601f191660200190565b90600182811c921680156120a0575b602083101461208a57565b634e487b7160e01b600052602260045260246000fd5b91607f169161207f565b6040808252600d908201526c283934b1b2a1b7b739bab6b2b960991b60608201526001600160a01b03909116602082015260800190565b818102929181159184041417156120f457565b634e487b7160e01b600052601160045260246000fd5b919082018092116120f457565b919082039182116120f457565b6000805160206124f38339815191528054909290916001600160a01b038084169260048110611fd557600080604094855194602086019163b700961360e01b8352169485602482015230604482015263ffffffff60e01b84351660648201526064815260a081018181106001600160401b0382111761228c5791849188938452828052826020525190895afa61227b575b156121c4575b50505050505050565b63ffffffff16156122655760ff60a01b19948516600160a01b178655833b15611fd557606493600092838551968780958194634a63ebf760e11b835260048301528860248301528060448301528084848401378181018301849052601f01601f191681010301925af190811561225b575061224c575b508154169055388080808080806121bb565b61225590611ff0565b3861223a565b513d6000823e3d90fd5b50602491519062d1953b60e31b82526004820152fd5b50516020518060201c1502906121b5565b634e487b7160e01b85526041600452602485fd5b6000805160206124f383398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60ff600080516020612593833981519152541661231257565b60405163d93c066560e01b8152600490fd5b9060208083830312611fd55782516001600160401b0393848211611fd55701928184840312611fd5576040519382850185811083821117612003576040528051918211611fd5570182601f82011215611fd55780519061238382612055565b936123916040519586612034565b828552838383010111611fd557826123ac9385019101611f77565b815290565b9291906123cf60209160408652518260408701526060860190611f9a565b930152565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612412575b50506118ac57565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc541614159050388061240a565b60ff6000805160206125d38339815191525460401c161561245d57565b604051631afcd79f60e31b8152600490fd5b90612496575080511561248457602081519101fd5b60405163d6bda27560e01b8152600490fd5b815115806124c9575b6124a7575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561249f56fe2ae08a8e29253f69ac5d979a101956ab8f8d9d7ded63fa7a83b16fc47648eab0f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0052c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0352c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace04c7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2706675a12eeff0661731f01589a945c9c5e9663916191034a16d20b6fcc93dd8cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330046a2803e59a4de4e7a4c574b1243f25977ac4c77d5a1a4a609b5394cebb4a2aaf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220858432f69fd2be47919f3ce5cb5744c34dd5cff23ca855d3900c6571f925716164736f6c63430008190033",
1667
+ "linkReferences": {
1668
+ "contracts/common/iodata.sol": {
1669
+ "iodata": [
1670
+ {
1671
+ "length": 20,
1672
+ "start": 2313
1673
+ }
1674
+ ]
1675
+ },
1676
+ "contracts/common/sysio_write.sol": {
1677
+ "sysio_write": [
1678
+ {
1679
+ "length": 20,
1680
+ "start": 2355
1681
+ }
1682
+ ]
1683
+ }
1684
+ },
1685
+ "deployedLinkReferences": {
1686
+ "contracts/common/iodata.sol": {
1687
+ "iodata": [
1688
+ {
1689
+ "length": 20,
1690
+ "start": 2266
1691
+ }
1692
+ ]
1693
+ },
1694
+ "contracts/common/sysio_write.sol": {
1695
+ "sysio_write": [
1696
+ {
1697
+ "length": 20,
1698
+ "start": 2308
1699
+ }
1700
+ ]
1701
+ }
1702
+ }
1703
+ }