@wireio/stake 2.7.4 → 3.0.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 (470) hide show
  1. package/README.md +34 -15
  2. package/lib/stake.browser.js +50561 -13484
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +564 -15719
  5. package/lib/stake.js +47546 -10288
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +50561 -13484
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/assets/evm/hoodi/.gitkeep +1 -0
  11. package/src/assets/evm/monad-testnet/.gitkeep +0 -0
  12. package/src/assets/evm/polygon-amoy/.gitkeep +0 -0
  13. package/src/assets/evm/wiredev/common/Base58.sol/Base58.dbg.json +4 -0
  14. package/src/assets/evm/wiredev/common/Base58.sol/Base58.json +164 -0
  15. package/src/assets/evm/wiredev/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  16. package/src/assets/evm/wiredev/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  17. package/src/assets/evm/wiredev/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  18. package/src/assets/evm/wiredev/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  19. package/src/assets/evm/wiredev/common/iodata.sol/iodata.dbg.json +4 -0
  20. package/src/assets/evm/wiredev/common/iodata.sol/iodata.json +618 -0
  21. package/src/assets/evm/wiredev/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  22. package/src/assets/evm/wiredev/common/iodata_util.sol/iodata_util.json +40 -0
  23. package/src/assets/evm/wiredev/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  24. package/src/assets/evm/wiredev/common/sysio_data.sol/sysio_data.json +10 -0
  25. package/src/assets/evm/wiredev/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  26. package/src/assets/evm/wiredev/common/sysio_errors.sol/sysio_errors.json +10 -0
  27. package/src/assets/evm/wiredev/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  28. package/src/assets/evm/wiredev/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  29. package/src/assets/evm/wiredev/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  30. package/src/assets/evm/wiredev/common/sysio_name.sol/sysio_name.json +49 -0
  31. package/src/assets/evm/wiredev/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  32. package/src/assets/evm/wiredev/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  33. package/src/assets/evm/wiredev/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  34. package/src/assets/evm/wiredev/common/sysio_read.sol/sysio_read.json +1458 -0
  35. package/src/assets/evm/wiredev/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  36. package/src/assets/evm/wiredev/common/sysio_tester.sol/SysioTester.json +1532 -0
  37. package/src/assets/evm/wiredev/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  38. package/src/assets/evm/wiredev/common/sysio_verify.sol/sysio_verify.json +1525 -0
  39. package/src/assets/evm/wiredev/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  40. package/src/assets/evm/wiredev/common/sysio_write.sol/sysio_write.json +1076 -0
  41. package/src/assets/evm/wiredev/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  42. package/src/assets/evm/wiredev/liqEth/BeaconState.sol/BeaconState.json +807 -0
  43. package/src/assets/evm/wiredev/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  44. package/src/assets/evm/wiredev/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
  45. package/src/assets/evm/wiredev/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  46. package/src/assets/evm/wiredev/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  47. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  48. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
  49. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  50. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  51. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  52. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  53. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  54. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  55. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  56. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  57. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  58. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  59. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  60. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IStakingModule.json +344 -0
  61. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  62. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  63. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  64. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  65. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  66. package/src/assets/evm/wiredev/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  67. package/src/assets/evm/wiredev/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  68. package/src/assets/evm/wiredev/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  69. package/src/assets/evm/wiredev/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  70. package/src/assets/evm/wiredev/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  71. package/src/assets/evm/wiredev/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  72. package/src/assets/evm/wiredev/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  73. package/src/assets/evm/wiredev/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  74. package/src/assets/evm/wiredev/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  75. package/src/assets/evm/wiredev/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  76. package/src/assets/evm/wiredev/liqEth/Yield.sol/YieldOracle.json +1376 -0
  77. package/src/assets/evm/wiredev/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  78. package/src/assets/evm/wiredev/liqEth/accounting.sol/AccountingV2.json +629 -0
  79. package/src/assets/evm/wiredev/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  80. package/src/assets/evm/wiredev/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  81. package/src/assets/evm/wiredev/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  82. package/src/assets/evm/wiredev/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  83. package/src/assets/evm/wiredev/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  84. package/src/assets/evm/wiredev/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  85. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  86. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  87. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  88. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  89. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  90. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  91. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  92. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  93. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  94. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  95. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  96. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  97. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  98. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  99. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  100. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  101. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  102. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  103. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  104. package/src/assets/evm/wiredev/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  105. package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  106. package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  107. package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  108. package/src/assets/evm/wiredev/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  109. package/src/assets/evm/wiredev/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  110. package/src/assets/evm/wiredev/liqEth/v1/accounting.sol/Accounting.json +548 -0
  111. package/src/assets/evm/wiredev/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  112. package/src/assets/evm/wiredev/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  113. package/src/assets/evm/wiredev/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  114. package/src/assets/evm/wiredev/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  115. package/src/assets/evm/wiredev/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  116. package/src/assets/evm/wiredev/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  117. package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  118. package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  119. package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  120. package/src/assets/evm/wiredev/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  121. package/src/assets/evm/wiredev/outpost/BAR.sol/BAR.dbg.json +4 -0
  122. package/src/assets/evm/wiredev/outpost/BAR.sol/BAR.json +1154 -0
  123. package/src/assets/evm/wiredev/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  124. package/src/assets/evm/wiredev/outpost/Depositor.sol/Depositor.json +1633 -0
  125. package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  126. package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  127. package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  128. package/src/assets/evm/wiredev/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  129. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  130. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  131. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  132. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  133. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  134. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  135. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.dbg.json +4 -0
  136. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawFailedCodec.json +10 -0
  137. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  138. package/src/assets/evm/wiredev/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  139. package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.dbg.json +4 -0
  140. package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/IDepositorBridgeHooks.json +29 -0
  141. package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  142. package/src/assets/evm/wiredev/outpost/LiqEthBridge.sol/LiqEthBridge.json +1076 -0
  143. package/src/assets/evm/wiredev/outpost/OPP.sol/OPP.dbg.json +4 -0
  144. package/src/assets/evm/wiredev/outpost/OPP.sol/OPP.json +1098 -0
  145. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  146. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPP.json +81 -0
  147. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  148. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  149. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  150. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  151. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  152. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  153. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  154. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  155. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  156. package/src/assets/evm/wiredev/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  157. package/src/assets/evm/wiredev/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  158. package/src/assets/evm/wiredev/outpost/OPPEndpoint.sol/OPPEndpoint.json +337 -0
  159. package/src/assets/evm/wiredev/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  160. package/src/assets/evm/wiredev/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +458 -0
  161. package/src/assets/evm/wiredev/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  162. package/src/assets/evm/wiredev/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +442 -0
  163. package/src/assets/evm/wiredev/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  164. package/src/assets/evm/wiredev/outpost/OPPErrors.sol/OPPErrors.json +288 -0
  165. package/src/assets/evm/wiredev/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  166. package/src/assets/evm/wiredev/outpost/OPPInbound.sol/OPPInbound.json +1298 -0
  167. package/src/assets/evm/wiredev/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  168. package/src/assets/evm/wiredev/outpost/OPPReceiver.sol/OPPReceiver.json +355 -0
  169. package/src/assets/evm/wiredev/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  170. package/src/assets/evm/wiredev/outpost/OPPSender.sol/OPPSender.json +367 -0
  171. package/src/assets/evm/wiredev/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  172. package/src/assets/evm/wiredev/outpost/OperatorRegistry.sol/OperatorRegistry.json +1111 -0
  173. package/src/assets/evm/wiredev/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  174. package/src/assets/evm/wiredev/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  175. package/src/assets/evm/wiredev/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  176. package/src/assets/evm/wiredev/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  177. package/src/assets/evm/wiredev/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  178. package/src/assets/evm/wiredev/outpost/OutpostManager.sol/OutpostManager.json +794 -0
  179. package/src/assets/evm/wiredev/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  180. package/src/assets/evm/wiredev/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  181. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  182. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  183. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  184. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  185. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  186. package/src/assets/evm/wiredev/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  187. package/src/assets/evm/wiredev/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  188. package/src/assets/evm/wiredev/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  189. package/src/assets/evm/wiredev/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  190. package/src/assets/evm/wiredev/outpost/OutpostReserve.sol/OutpostReserve.json +931 -0
  191. package/src/assets/evm/wiredev/outpost/Pool.sol/Pool.dbg.json +4 -0
  192. package/src/assets/evm/wiredev/outpost/Pool.sol/Pool.json +659 -0
  193. package/src/assets/evm/wiredev/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  194. package/src/assets/evm/wiredev/outpost/Pretoken.sol/Pretoken.json +1436 -0
  195. package/src/assets/evm/wiredev/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  196. package/src/assets/evm/wiredev/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  197. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  198. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  199. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  200. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  201. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  202. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  203. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  204. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  205. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  206. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  207. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  208. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  209. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  210. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  211. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  212. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  213. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  214. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  215. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  216. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  217. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  218. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  219. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  220. package/src/assets/evm/wiredev/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  221. package/src/assets/evm/wiredev/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  222. package/src/assets/evm/wiredev/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  223. package/src/assets/evm/wiredev/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  224. package/src/assets/evm/wiredev/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  225. package/src/assets/evm/wiredev/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  226. package/src/assets/evm/wiredev/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  227. package/src/assets/evm/wiredev/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  228. package/src/assets/evm/wiredev/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  229. package/src/assets/evm/wiredev/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  230. package/src/assets/evm/wiredev/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  231. package/src/assets/evm/wiredev/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  232. package/src/assets/evm/wiredev/token/ERC20Token.sol/ERC20Token.json +330 -0
  233. package/src/assets/evm/wiredev/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  234. package/src/assets/evm/wiredev/token/ERC721Token.sol/ERC721Token.json +449 -0
  235. package/src/assets/evm/wiredev/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  236. package/src/assets/evm/wiredev/token/Eman1155.sol/Eman1155.json +560 -0
  237. package/src/assets/evm/wiredev/token/Eman20.sol/Eman20.dbg.json +4 -0
  238. package/src/assets/evm/wiredev/token/Eman20.sol/Eman20.json +460 -0
  239. package/src/assets/evm/wiredev/token/Eman721.sol/Eman721.dbg.json +4 -0
  240. package/src/assets/evm/wiredev/token/Eman721.sol/Eman721.json +624 -0
  241. package/src/assets/solana/mainnet/idl/validator_leaderboard.json.bak +568 -0
  242. package/src/assets/solana/wiredev/idl/liqsol_core.json +8726 -0
  243. package/src/assets/solana/wiredev/idl/liqsol_token.json +217 -0
  244. package/src/assets/solana/wiredev/idl/transfer_hook.json +490 -0
  245. package/src/assets/solana/wiredev/idl/validator_leaderboard.json +735 -0
  246. package/src/assets/solana/wiredev/types/liqsol_core.ts +8732 -0
  247. package/src/assets/solana/wiredev/types/liqsol_token.ts +223 -0
  248. package/src/assets/solana/wiredev/types/transfer_hook.ts +496 -0
  249. package/src/assets/solana/wiredev/types/validator_leaderboard.ts +741 -0
  250. package/src/chains.ts +165 -0
  251. package/src/index.ts +7 -3
  252. package/src/networks/{ethereum → evm}/clients/convert.client.ts +8 -3
  253. package/src/networks/evm/clients/instaswap.client.ts +440 -0
  254. package/src/networks/{ethereum → evm}/clients/opp.client.ts +3 -3
  255. package/src/networks/{ethereum → evm}/clients/pretoken.client.ts +11 -6
  256. package/src/networks/{ethereum → evm}/clients/receipt.client.ts +3 -3
  257. package/src/networks/{ethereum → evm}/clients/stake.client.ts +144 -20
  258. package/src/networks/{ethereum → evm}/clients/validator.client.ts +3 -3
  259. package/src/networks/{ethereum → evm}/contract.ts +207 -116
  260. package/src/networks/{ethereum/ethereum.ts → evm/evm.ts} +214 -68
  261. package/src/networks/{ethereum → evm}/utils.ts +56 -4
  262. package/src/networks/solana/clients/convert.client.ts +47 -11
  263. package/src/networks/solana/clients/distribution.client.ts +17 -13
  264. package/src/networks/solana/clients/instaswap.client.ts +486 -0
  265. package/src/networks/solana/clients/leaderboard.client.ts +4 -5
  266. package/src/networks/solana/clients/outpost.client.ts +110 -47
  267. package/src/networks/solana/clients/token.client.ts +20 -11
  268. package/src/networks/solana/constants.ts +27 -7
  269. package/src/networks/solana/program.ts +104 -19
  270. package/src/networks/solana/solana.ts +145 -15
  271. package/src/networks/solana/types.ts +1 -2
  272. package/src/networks/solana/utils.ts +36 -4
  273. package/src/staker.ts +22 -20
  274. package/src/status.ts +301 -0
  275. package/src/types.ts +6 -11
  276. /package/src/assets/{ethereum → evm}/mainnet/common/Base58.sol/Base58.dbg.json +0 -0
  277. /package/src/assets/{ethereum → evm}/mainnet/common/Base58.sol/Base58.json +0 -0
  278. /package/src/assets/{ethereum → evm}/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +0 -0
  279. /package/src/assets/{ethereum → evm}/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +0 -0
  280. /package/src/assets/{ethereum → evm}/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +0 -0
  281. /package/src/assets/{ethereum → evm}/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +0 -0
  282. /package/src/assets/{ethereum → evm}/mainnet/common/iodata.sol/iodata.dbg.json +0 -0
  283. /package/src/assets/{ethereum → evm}/mainnet/common/iodata.sol/iodata.json +0 -0
  284. /package/src/assets/{ethereum → evm}/mainnet/common/iodata_util.sol/iodata_util.dbg.json +0 -0
  285. /package/src/assets/{ethereum → evm}/mainnet/common/iodata_util.sol/iodata_util.json +0 -0
  286. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_data.sol/sysio_data.dbg.json +0 -0
  287. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_data.sol/sysio_data.json +0 -0
  288. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +0 -0
  289. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_errors.sol/sysio_errors.json +0 -0
  290. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +0 -0
  291. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_merkle.sol/sysio_merkle.json +0 -0
  292. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_name.sol/sysio_name.dbg.json +0 -0
  293. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_name.sol/sysio_name.json +0 -0
  294. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +0 -0
  295. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +0 -0
  296. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_read.sol/sysio_read.dbg.json +0 -0
  297. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_read.sol/sysio_read.json +0 -0
  298. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +0 -0
  299. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_tester.sol/SysioTester.json +0 -0
  300. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +0 -0
  301. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_verify.sol/sysio_verify.json +0 -0
  302. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_write.sol/sysio_write.dbg.json +0 -0
  303. /package/src/assets/{ethereum → evm}/mainnet/common/sysio_write.sol/sysio_write.json +0 -0
  304. /package/src/assets/{ethereum → evm}/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +0 -0
  305. /package/src/assets/{ethereum → evm}/mainnet/liqEth/BeaconState.sol/BeaconState.json +0 -0
  306. /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +0 -0
  307. /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +0 -0
  308. /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +0 -0
  309. /package/src/assets/{ethereum → evm}/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +0 -0
  310. /package/src/assets/{ethereum → evm}/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +0 -0
  311. /package/src/assets/{ethereum → evm}/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +0 -0
  312. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +0 -0
  313. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +0 -0
  314. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -0
  315. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
  316. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -0
  317. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
  318. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +0 -0
  319. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +0 -0
  320. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -0
  321. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
  322. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -0
  323. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +0 -0
  324. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -0
  325. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +0 -0
  326. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -0
  327. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +0 -0
  328. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -0
  329. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
  330. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -0
  331. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
  332. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -0
  333. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +0 -0
  334. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +0 -0
  335. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +0 -0
  336. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +0 -0
  337. /package/src/assets/{ethereum → evm}/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +0 -0
  338. /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +0 -0
  339. /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +0 -0
  340. /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +0 -0
  341. /package/src/assets/{ethereum → evm}/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +0 -0
  342. /package/src/assets/{ethereum → evm}/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +0 -0
  343. /package/src/assets/{ethereum → evm}/mainnet/liqEth/StakingLib.sol/StakingLib.json +0 -0
  344. /package/src/assets/{ethereum → evm}/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +0 -0
  345. /package/src/assets/{ethereum → evm}/mainnet/liqEth/Yield.sol/YieldOracle.json +0 -0
  346. /package/src/assets/{ethereum → evm}/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +0 -0
  347. /package/src/assets/{ethereum → evm}/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +0 -0
  348. /package/src/assets/{ethereum → evm}/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +0 -0
  349. /package/src/assets/{ethereum → evm}/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +0 -0
  350. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +0 -0
  351. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +0 -0
  352. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +0 -0
  353. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +0 -0
  354. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +0 -0
  355. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +0 -0
  356. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +0 -0
  357. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +0 -0
  358. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -0
  359. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
  360. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -0
  361. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +0 -0
  362. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -0
  363. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +0 -0
  364. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +0 -0
  365. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +0 -0
  366. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -0
  367. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
  368. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -0
  369. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
  370. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -0
  371. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +0 -0
  372. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +0 -0
  373. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +0 -0
  374. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +0 -0
  375. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +0 -0
  376. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +0 -0
  377. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/accounting.sol/Accounting.json +0 -0
  378. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +0 -0
  379. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +0 -0
  380. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +0 -0
  381. /package/src/assets/{ethereum → evm}/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +0 -0
  382. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -0
  383. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +0 -0
  384. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -0
  385. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +0 -0
  386. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -0
  387. /package/src/assets/{ethereum → evm}/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +0 -0
  388. /package/src/assets/{ethereum → evm}/mainnet/outpost/BAR.sol/BARV2.dbg.json +0 -0
  389. /package/src/assets/{ethereum → evm}/mainnet/outpost/BAR.sol/BARV2.json +0 -0
  390. /package/src/assets/{ethereum → evm}/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +0 -0
  391. /package/src/assets/{ethereum → evm}/mainnet/outpost/Depositor.sol/DepositorV2.json +0 -0
  392. /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -0
  393. /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
  394. /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -0
  395. /package/src/assets/{ethereum → evm}/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +0 -0
  396. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPP.sol/OPP.dbg.json +0 -0
  397. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPP.sol/OPP.json +0 -0
  398. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +0 -0
  399. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPP.json +0 -0
  400. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -0
  401. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
  402. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -0
  403. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
  404. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -0
  405. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
  406. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -0
  407. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/IOPPSender.json +0 -0
  408. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -0
  409. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPCommon.sol/OPPCommon.json +0 -0
  410. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -0
  411. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
  412. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -0
  413. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
  414. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -0
  415. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
  416. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -0
  417. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPErrors.sol/OPPErrors.json +0 -0
  418. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -0
  419. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPInbound.sol/OPPInbound.json +0 -0
  420. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -0
  421. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
  422. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +0 -0
  423. /package/src/assets/{ethereum → evm}/mainnet/outpost/OPPSender.sol/OPPSender.json +0 -0
  424. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -0
  425. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostErrors.sol/OutpostErrors.json +0 -0
  426. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -0
  427. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
  428. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +0 -0
  429. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +0 -0
  430. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -0
  431. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
  432. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -0
  433. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
  434. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -0
  435. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
  436. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -0
  437. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
  438. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -0
  439. /package/src/assets/{ethereum → evm}/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
  440. /package/src/assets/{ethereum → evm}/mainnet/outpost/Pool.sol/PoolV2.dbg.json +0 -0
  441. /package/src/assets/{ethereum → evm}/mainnet/outpost/Pool.sol/PoolV2.json +0 -0
  442. /package/src/assets/{ethereum → evm}/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +0 -0
  443. /package/src/assets/{ethereum → evm}/mainnet/outpost/Pretoken.sol/PretokenV2.json +0 -0
  444. /package/src/assets/{ethereum → evm}/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -0
  445. /package/src/assets/{ethereum → evm}/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.json +0 -0
  446. /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +0 -0
  447. /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +0 -0
  448. /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -0
  449. /package/src/assets/{ethereum → evm}/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
  450. /package/src/assets/{ethereum → evm}/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -0
  451. /package/src/assets/{ethereum → evm}/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
  452. /package/src/assets/{ethereum → evm}/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -0
  453. /package/src/assets/{ethereum → evm}/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
  454. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +0 -0
  455. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/BAR.sol/BAR.json +0 -0
  456. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +0 -0
  457. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Depositor.sol/Depositor.json +0 -0
  458. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +0 -0
  459. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.json +0 -0
  460. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +0 -0
  461. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pool.sol/Pool.json +0 -0
  462. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +0 -0
  463. /package/src/assets/{ethereum → evm}/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +0 -0
  464. /package/src/assets/{ethereum → evm}/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -0
  465. /package/src/assets/{ethereum → evm}/mainnet/token/ERC1155Token.sol/ERC1155Token.json +0 -0
  466. /package/src/assets/{ethereum → evm}/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +0 -0
  467. /package/src/assets/{ethereum → evm}/mainnet/token/ERC20Token.sol/ERC20Token.json +0 -0
  468. /package/src/assets/{ethereum → evm}/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +0 -0
  469. /package/src/assets/{ethereum → evm}/mainnet/token/ERC721Token.sol/ERC721Token.json +0 -0
  470. /package/src/networks/{ethereum → evm}/types.ts +0 -0
@@ -0,0 +1,1298 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "OPPInbound",
4
+ "sourceName": "contracts/outpost/OPPInbound.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
+ "name": "FailedCall",
74
+ "type": "error"
75
+ },
76
+ {
77
+ "inputs": [],
78
+ "name": "InvalidInitialization",
79
+ "type": "error"
80
+ },
81
+ {
82
+ "inputs": [],
83
+ "name": "NotInitializing",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [
88
+ {
89
+ "internalType": "address",
90
+ "name": "signer",
91
+ "type": "address"
92
+ }
93
+ ],
94
+ "name": "OPP_DuplicateSignature",
95
+ "type": "error"
96
+ },
97
+ {
98
+ "inputs": [
99
+ {
100
+ "internalType": "bytes32",
101
+ "name": "expected",
102
+ "type": "bytes32"
103
+ },
104
+ {
105
+ "internalType": "bytes32",
106
+ "name": "actual",
107
+ "type": "bytes32"
108
+ }
109
+ ],
110
+ "name": "OPP_EpochHashMismatch",
111
+ "type": "error"
112
+ },
113
+ {
114
+ "inputs": [
115
+ {
116
+ "internalType": "uint256",
117
+ "name": "required",
118
+ "type": "uint256"
119
+ },
120
+ {
121
+ "internalType": "uint256",
122
+ "name": "provided",
123
+ "type": "uint256"
124
+ }
125
+ ],
126
+ "name": "OPP_InsufficientSignatureWeight",
127
+ "type": "error"
128
+ },
129
+ {
130
+ "inputs": [
131
+ {
132
+ "internalType": "address",
133
+ "name": "caller",
134
+ "type": "address"
135
+ },
136
+ {
137
+ "internalType": "address",
138
+ "name": "expected",
139
+ "type": "address"
140
+ }
141
+ ],
142
+ "name": "OPP_InvalidOPPAddress",
143
+ "type": "error"
144
+ },
145
+ {
146
+ "inputs": [
147
+ {
148
+ "internalType": "uint256",
149
+ "name": "index",
150
+ "type": "uint256"
151
+ }
152
+ ],
153
+ "name": "OPP_InvalidSignatureMetadata",
154
+ "type": "error"
155
+ },
156
+ {
157
+ "inputs": [
158
+ {
159
+ "internalType": "bytes",
160
+ "name": "expected",
161
+ "type": "bytes"
162
+ },
163
+ {
164
+ "internalType": "bytes",
165
+ "name": "actual",
166
+ "type": "bytes"
167
+ }
168
+ ],
169
+ "name": "OPP_MessageIDMismatch",
170
+ "type": "error"
171
+ },
172
+ {
173
+ "inputs": [],
174
+ "name": "OPP_NoAttestationsSent",
175
+ "type": "error"
176
+ },
177
+ {
178
+ "inputs": [],
179
+ "name": "OPP_NoPendingAttestations",
180
+ "type": "error"
181
+ },
182
+ {
183
+ "inputs": [
184
+ {
185
+ "internalType": "uint32",
186
+ "name": "expected",
187
+ "type": "uint32"
188
+ },
189
+ {
190
+ "internalType": "uint32",
191
+ "name": "actual",
192
+ "type": "uint32"
193
+ }
194
+ ],
195
+ "name": "OPP_NonSequentialEpoch",
196
+ "type": "error"
197
+ },
198
+ {
199
+ "inputs": [],
200
+ "name": "OPP_NotSending",
201
+ "type": "error"
202
+ },
203
+ {
204
+ "inputs": [],
205
+ "name": "OPP_OPPAddressNotSet",
206
+ "type": "error"
207
+ },
208
+ {
209
+ "inputs": [],
210
+ "name": "OPP_OperatorRegistryNotSet",
211
+ "type": "error"
212
+ },
213
+ {
214
+ "inputs": [
215
+ {
216
+ "internalType": "bytes32",
217
+ "name": "expected",
218
+ "type": "bytes32"
219
+ },
220
+ {
221
+ "internalType": "bytes32",
222
+ "name": "actual",
223
+ "type": "bytes32"
224
+ }
225
+ ],
226
+ "name": "OPP_PayloadChecksumMismatch",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "uint32",
233
+ "name": "epochIndex",
234
+ "type": "uint32"
235
+ },
236
+ {
237
+ "internalType": "uint256",
238
+ "name": "messageCount",
239
+ "type": "uint256"
240
+ }
241
+ ],
242
+ "name": "OPP_PreviousEpochPendingMessages",
243
+ "type": "error"
244
+ },
245
+ {
246
+ "inputs": [
247
+ {
248
+ "internalType": "uint32",
249
+ "name": "epochIndex",
250
+ "type": "uint32"
251
+ }
252
+ ],
253
+ "name": "OPP_PreviousEpochSent",
254
+ "type": "error"
255
+ },
256
+ {
257
+ "inputs": [
258
+ {
259
+ "internalType": "uint32",
260
+ "name": "epochIndex",
261
+ "type": "uint32"
262
+ }
263
+ ],
264
+ "name": "OPP_PreviousEpochUnsent",
265
+ "type": "error"
266
+ },
267
+ {
268
+ "inputs": [
269
+ {
270
+ "internalType": "bytes",
271
+ "name": "expected",
272
+ "type": "bytes"
273
+ },
274
+ {
275
+ "internalType": "bytes",
276
+ "name": "actual",
277
+ "type": "bytes"
278
+ }
279
+ ],
280
+ "name": "OPP_PreviousMessageIDMismatch",
281
+ "type": "error"
282
+ },
283
+ {
284
+ "inputs": [
285
+ {
286
+ "internalType": "uint256",
287
+ "name": "stack",
288
+ "type": "uint256"
289
+ }
290
+ ],
291
+ "name": "OPP_SendStackError",
292
+ "type": "error"
293
+ },
294
+ {
295
+ "inputs": [
296
+ {
297
+ "internalType": "uint256",
298
+ "name": "expectedMaxAttestations",
299
+ "type": "uint256"
300
+ },
301
+ {
302
+ "internalType": "uint256",
303
+ "name": "actualAttestations",
304
+ "type": "uint256"
305
+ }
306
+ ],
307
+ "name": "OPP_TooManyAttestations",
308
+ "type": "error"
309
+ },
310
+ {
311
+ "inputs": [
312
+ {
313
+ "internalType": "uint256",
314
+ "name": "expectedMaxMessages",
315
+ "type": "uint256"
316
+ },
317
+ {
318
+ "internalType": "uint256",
319
+ "name": "actualMessages",
320
+ "type": "uint256"
321
+ }
322
+ ],
323
+ "name": "OPP_TooManyMessages",
324
+ "type": "error"
325
+ },
326
+ {
327
+ "inputs": [
328
+ {
329
+ "internalType": "address",
330
+ "name": "sender",
331
+ "type": "address"
332
+ },
333
+ {
334
+ "internalType": "AttestationType",
335
+ "name": "attestationType",
336
+ "type": "uint16"
337
+ }
338
+ ],
339
+ "name": "OPP_UnauthorizedAttestationType",
340
+ "type": "error"
341
+ },
342
+ {
343
+ "inputs": [
344
+ {
345
+ "internalType": "AttestationType",
346
+ "name": "attestationType",
347
+ "type": "uint16"
348
+ }
349
+ ],
350
+ "name": "OPP_UnhandledAttestationType",
351
+ "type": "error"
352
+ },
353
+ {
354
+ "inputs": [],
355
+ "name": "OPP_ZeroMaxAttestations",
356
+ "type": "error"
357
+ },
358
+ {
359
+ "inputs": [],
360
+ "name": "OPP_ZeroTag",
361
+ "type": "error"
362
+ },
363
+ {
364
+ "inputs": [],
365
+ "name": "UUPSUnauthorizedCallContext",
366
+ "type": "error"
367
+ },
368
+ {
369
+ "inputs": [
370
+ {
371
+ "internalType": "bytes32",
372
+ "name": "slot",
373
+ "type": "bytes32"
374
+ }
375
+ ],
376
+ "name": "UUPSUnsupportedProxiableUUID",
377
+ "type": "error"
378
+ },
379
+ {
380
+ "anonymous": false,
381
+ "inputs": [
382
+ {
383
+ "indexed": false,
384
+ "internalType": "bytes",
385
+ "name": "messageID",
386
+ "type": "bytes"
387
+ },
388
+ {
389
+ "indexed": false,
390
+ "internalType": "AttestationType",
391
+ "name": "attestationType",
392
+ "type": "uint16"
393
+ },
394
+ {
395
+ "indexed": false,
396
+ "internalType": "uint64",
397
+ "name": "sequenceNumber",
398
+ "type": "uint64"
399
+ }
400
+ ],
401
+ "name": "AttestationBlackholed",
402
+ "type": "event"
403
+ },
404
+ {
405
+ "anonymous": false,
406
+ "inputs": [
407
+ {
408
+ "indexed": true,
409
+ "internalType": "address",
410
+ "name": "handler",
411
+ "type": "address"
412
+ },
413
+ {
414
+ "indexed": false,
415
+ "internalType": "bytes",
416
+ "name": "messageID",
417
+ "type": "bytes"
418
+ },
419
+ {
420
+ "indexed": false,
421
+ "internalType": "AttestationType",
422
+ "name": "attestationType",
423
+ "type": "uint16"
424
+ },
425
+ {
426
+ "indexed": false,
427
+ "internalType": "uint64",
428
+ "name": "sequenceNumber",
429
+ "type": "uint64"
430
+ }
431
+ ],
432
+ "name": "AttestationDelivered",
433
+ "type": "event"
434
+ },
435
+ {
436
+ "anonymous": false,
437
+ "inputs": [
438
+ {
439
+ "indexed": true,
440
+ "internalType": "AttestationType",
441
+ "name": "attestationType",
442
+ "type": "uint16"
443
+ },
444
+ {
445
+ "indexed": false,
446
+ "internalType": "address",
447
+ "name": "handler",
448
+ "type": "address"
449
+ },
450
+ {
451
+ "indexed": false,
452
+ "internalType": "address",
453
+ "name": "oldHandler",
454
+ "type": "address"
455
+ }
456
+ ],
457
+ "name": "AttestationHandlerSet",
458
+ "type": "event"
459
+ },
460
+ {
461
+ "anonymous": false,
462
+ "inputs": [
463
+ {
464
+ "indexed": false,
465
+ "internalType": "address",
466
+ "name": "authority",
467
+ "type": "address"
468
+ }
469
+ ],
470
+ "name": "AuthorityUpdated",
471
+ "type": "event"
472
+ },
473
+ {
474
+ "anonymous": false,
475
+ "inputs": [
476
+ {
477
+ "indexed": false,
478
+ "internalType": "uint32",
479
+ "name": "epochIndex",
480
+ "type": "uint32"
481
+ }
482
+ ],
483
+ "name": "EpochComplete",
484
+ "type": "event"
485
+ },
486
+ {
487
+ "anonymous": false,
488
+ "inputs": [
489
+ {
490
+ "indexed": false,
491
+ "internalType": "uint32",
492
+ "name": "epochIndex",
493
+ "type": "uint32"
494
+ },
495
+ {
496
+ "indexed": false,
497
+ "internalType": "bytes32",
498
+ "name": "epochHash",
499
+ "type": "bytes32"
500
+ },
501
+ {
502
+ "indexed": false,
503
+ "internalType": "uint256",
504
+ "name": "messageCount",
505
+ "type": "uint256"
506
+ }
507
+ ],
508
+ "name": "EpochReceived",
509
+ "type": "event"
510
+ },
511
+ {
512
+ "anonymous": false,
513
+ "inputs": [
514
+ {
515
+ "indexed": false,
516
+ "internalType": "uint64",
517
+ "name": "version",
518
+ "type": "uint64"
519
+ }
520
+ ],
521
+ "name": "Initialized",
522
+ "type": "event"
523
+ },
524
+ {
525
+ "anonymous": false,
526
+ "inputs": [
527
+ {
528
+ "indexed": false,
529
+ "internalType": "bytes",
530
+ "name": "messageID",
531
+ "type": "bytes"
532
+ },
533
+ {
534
+ "indexed": false,
535
+ "internalType": "uint64",
536
+ "name": "attestationCount",
537
+ "type": "uint64"
538
+ }
539
+ ],
540
+ "name": "MessageProcessed",
541
+ "type": "event"
542
+ },
543
+ {
544
+ "anonymous": false,
545
+ "inputs": [
546
+ {
547
+ "indexed": false,
548
+ "internalType": "uint32",
549
+ "name": "epochIndex",
550
+ "type": "uint32"
551
+ },
552
+ {
553
+ "indexed": false,
554
+ "internalType": "bytes",
555
+ "name": "firstMessageID",
556
+ "type": "bytes"
557
+ },
558
+ {
559
+ "indexed": false,
560
+ "internalType": "bytes",
561
+ "name": "lastMessageID",
562
+ "type": "bytes"
563
+ }
564
+ ],
565
+ "name": "MessagesReceived",
566
+ "type": "event"
567
+ },
568
+ {
569
+ "anonymous": false,
570
+ "inputs": [
571
+ {
572
+ "indexed": false,
573
+ "internalType": "address",
574
+ "name": "registry",
575
+ "type": "address"
576
+ },
577
+ {
578
+ "indexed": false,
579
+ "internalType": "address",
580
+ "name": "oldRegistry",
581
+ "type": "address"
582
+ }
583
+ ],
584
+ "name": "OperatorRegistrySet",
585
+ "type": "event"
586
+ },
587
+ {
588
+ "anonymous": false,
589
+ "inputs": [
590
+ {
591
+ "indexed": false,
592
+ "internalType": "uint256",
593
+ "name": "requiredWeight",
594
+ "type": "uint256"
595
+ },
596
+ {
597
+ "indexed": false,
598
+ "internalType": "uint256",
599
+ "name": "oldRequiredWeight",
600
+ "type": "uint256"
601
+ }
602
+ ],
603
+ "name": "RequiredSignatureWeightSet",
604
+ "type": "event"
605
+ },
606
+ {
607
+ "anonymous": false,
608
+ "inputs": [
609
+ {
610
+ "indexed": true,
611
+ "internalType": "address",
612
+ "name": "implementation",
613
+ "type": "address"
614
+ }
615
+ ],
616
+ "name": "Upgraded",
617
+ "type": "event"
618
+ },
619
+ {
620
+ "inputs": [],
621
+ "name": "UPGRADE_INTERFACE_VERSION",
622
+ "outputs": [
623
+ {
624
+ "internalType": "string",
625
+ "name": "",
626
+ "type": "string"
627
+ }
628
+ ],
629
+ "stateMutability": "view",
630
+ "type": "function"
631
+ },
632
+ {
633
+ "inputs": [
634
+ {
635
+ "internalType": "AttestationType",
636
+ "name": "",
637
+ "type": "uint16"
638
+ }
639
+ ],
640
+ "name": "attestationHandlers",
641
+ "outputs": [
642
+ {
643
+ "internalType": "contract IOPPReceiver",
644
+ "name": "",
645
+ "type": "address"
646
+ }
647
+ ],
648
+ "stateMutability": "view",
649
+ "type": "function"
650
+ },
651
+ {
652
+ "inputs": [],
653
+ "name": "authority",
654
+ "outputs": [
655
+ {
656
+ "internalType": "address",
657
+ "name": "",
658
+ "type": "address"
659
+ }
660
+ ],
661
+ "stateMutability": "view",
662
+ "type": "function"
663
+ },
664
+ {
665
+ "inputs": [
666
+ {
667
+ "components": [
668
+ {
669
+ "internalType": "bytes",
670
+ "name": "envelopeHash",
671
+ "type": "bytes"
672
+ },
673
+ {
674
+ "components": [
675
+ {
676
+ "components": [
677
+ {
678
+ "internalType": "ChainKind",
679
+ "name": "kind",
680
+ "type": "uint8"
681
+ },
682
+ {
683
+ "internalType": "uint32",
684
+ "name": "id",
685
+ "type": "uint32"
686
+ }
687
+ ],
688
+ "internalType": "struct ChainId",
689
+ "name": "start",
690
+ "type": "tuple"
691
+ },
692
+ {
693
+ "components": [
694
+ {
695
+ "internalType": "ChainKind",
696
+ "name": "kind",
697
+ "type": "uint8"
698
+ },
699
+ {
700
+ "internalType": "uint32",
701
+ "name": "id",
702
+ "type": "uint32"
703
+ }
704
+ ],
705
+ "internalType": "struct ChainId",
706
+ "name": "end",
707
+ "type": "tuple"
708
+ }
709
+ ],
710
+ "internalType": "struct Endpoints",
711
+ "name": "endpoints",
712
+ "type": "tuple"
713
+ },
714
+ {
715
+ "internalType": "uint64",
716
+ "name": "epochTimestamp",
717
+ "type": "uint64"
718
+ },
719
+ {
720
+ "internalType": "uint32",
721
+ "name": "epochIndex",
722
+ "type": "uint32"
723
+ },
724
+ {
725
+ "internalType": "uint32",
726
+ "name": "epochEnvelopeIndex",
727
+ "type": "uint32"
728
+ },
729
+ {
730
+ "internalType": "bytes",
731
+ "name": "merkle",
732
+ "type": "bytes"
733
+ },
734
+ {
735
+ "internalType": "bytes",
736
+ "name": "previousEnvelopeHash",
737
+ "type": "bytes"
738
+ },
739
+ {
740
+ "internalType": "bytes",
741
+ "name": "startMessageId",
742
+ "type": "bytes"
743
+ },
744
+ {
745
+ "internalType": "bytes",
746
+ "name": "endMessageId",
747
+ "type": "bytes"
748
+ },
749
+ {
750
+ "components": [
751
+ {
752
+ "components": [
753
+ {
754
+ "internalType": "ChainKind",
755
+ "name": "kind",
756
+ "type": "uint8"
757
+ },
758
+ {
759
+ "internalType": "bytes",
760
+ "name": "address_",
761
+ "type": "bytes"
762
+ }
763
+ ],
764
+ "internalType": "struct ChainAddress",
765
+ "name": "actor",
766
+ "type": "tuple"
767
+ },
768
+ {
769
+ "internalType": "ChainKeyType",
770
+ "name": "keyType",
771
+ "type": "uint8"
772
+ },
773
+ {
774
+ "internalType": "bytes",
775
+ "name": "signature",
776
+ "type": "bytes"
777
+ }
778
+ ],
779
+ "internalType": "struct ChainSignature[]",
780
+ "name": "signatures",
781
+ "type": "tuple[]"
782
+ }
783
+ ],
784
+ "internalType": "struct Envelope",
785
+ "name": "envelope",
786
+ "type": "tuple"
787
+ }
788
+ ],
789
+ "name": "epochIn",
790
+ "outputs": [],
791
+ "stateMutability": "nonpayable",
792
+ "type": "function"
793
+ },
794
+ {
795
+ "inputs": [
796
+ {
797
+ "internalType": "address",
798
+ "name": "oppManager",
799
+ "type": "address"
800
+ }
801
+ ],
802
+ "name": "initialize",
803
+ "outputs": [],
804
+ "stateMutability": "nonpayable",
805
+ "type": "function"
806
+ },
807
+ {
808
+ "inputs": [],
809
+ "name": "isConsumingScheduledOp",
810
+ "outputs": [
811
+ {
812
+ "internalType": "bytes4",
813
+ "name": "",
814
+ "type": "bytes4"
815
+ }
816
+ ],
817
+ "stateMutability": "view",
818
+ "type": "function"
819
+ },
820
+ {
821
+ "inputs": [],
822
+ "name": "lastMessageID",
823
+ "outputs": [
824
+ {
825
+ "internalType": "bytes32",
826
+ "name": "",
827
+ "type": "bytes32"
828
+ }
829
+ ],
830
+ "stateMutability": "view",
831
+ "type": "function"
832
+ },
833
+ {
834
+ "inputs": [
835
+ {
836
+ "components": [
837
+ {
838
+ "components": [
839
+ {
840
+ "components": [
841
+ {
842
+ "components": [
843
+ {
844
+ "internalType": "ChainKind",
845
+ "name": "kind",
846
+ "type": "uint8"
847
+ },
848
+ {
849
+ "internalType": "uint32",
850
+ "name": "id",
851
+ "type": "uint32"
852
+ }
853
+ ],
854
+ "internalType": "struct ChainId",
855
+ "name": "start",
856
+ "type": "tuple"
857
+ },
858
+ {
859
+ "components": [
860
+ {
861
+ "internalType": "ChainKind",
862
+ "name": "kind",
863
+ "type": "uint8"
864
+ },
865
+ {
866
+ "internalType": "uint32",
867
+ "name": "id",
868
+ "type": "uint32"
869
+ }
870
+ ],
871
+ "internalType": "struct ChainId",
872
+ "name": "end",
873
+ "type": "tuple"
874
+ }
875
+ ],
876
+ "internalType": "struct Endpoints",
877
+ "name": "endpoints",
878
+ "type": "tuple"
879
+ },
880
+ {
881
+ "internalType": "bytes",
882
+ "name": "messageId",
883
+ "type": "bytes"
884
+ },
885
+ {
886
+ "internalType": "bytes",
887
+ "name": "previousMessageId",
888
+ "type": "bytes"
889
+ },
890
+ {
891
+ "components": [
892
+ {
893
+ "internalType": "Endianness",
894
+ "name": "endianness",
895
+ "type": "uint8"
896
+ },
897
+ {
898
+ "internalType": "HashAlgorithm",
899
+ "name": "hashAlgorithm",
900
+ "type": "uint8"
901
+ },
902
+ {
903
+ "internalType": "LengthEncoding",
904
+ "name": "lengthEncoding",
905
+ "type": "uint8"
906
+ }
907
+ ],
908
+ "internalType": "struct EncodingFlags",
909
+ "name": "encodingFlags",
910
+ "type": "tuple"
911
+ },
912
+ {
913
+ "internalType": "uint32",
914
+ "name": "payloadSize",
915
+ "type": "uint32"
916
+ },
917
+ {
918
+ "internalType": "bytes",
919
+ "name": "payloadChecksum",
920
+ "type": "bytes"
921
+ },
922
+ {
923
+ "internalType": "uint64",
924
+ "name": "timestamp",
925
+ "type": "uint64"
926
+ },
927
+ {
928
+ "internalType": "bytes",
929
+ "name": "headerChecksum",
930
+ "type": "bytes"
931
+ }
932
+ ],
933
+ "internalType": "struct MessageHeader",
934
+ "name": "header",
935
+ "type": "tuple"
936
+ },
937
+ {
938
+ "components": [
939
+ {
940
+ "internalType": "uint32",
941
+ "name": "version",
942
+ "type": "uint32"
943
+ },
944
+ {
945
+ "components": [
946
+ {
947
+ "internalType": "AttestationType",
948
+ "name": "type_",
949
+ "type": "uint16"
950
+ },
951
+ {
952
+ "internalType": "uint32",
953
+ "name": "dataSize",
954
+ "type": "uint32"
955
+ },
956
+ {
957
+ "internalType": "bytes",
958
+ "name": "data",
959
+ "type": "bytes"
960
+ }
961
+ ],
962
+ "internalType": "struct AttestationEntry[]",
963
+ "name": "attestations",
964
+ "type": "tuple[]"
965
+ }
966
+ ],
967
+ "internalType": "struct MessagePayload",
968
+ "name": "payload",
969
+ "type": "tuple"
970
+ }
971
+ ],
972
+ "internalType": "struct Message[]",
973
+ "name": "messages",
974
+ "type": "tuple[]"
975
+ },
976
+ {
977
+ "components": [
978
+ {
979
+ "internalType": "bytes32[]",
980
+ "name": "proof",
981
+ "type": "bytes32[]"
982
+ },
983
+ {
984
+ "internalType": "uint8[]",
985
+ "name": "ops",
986
+ "type": "uint8[]"
987
+ },
988
+ {
989
+ "internalType": "uint256",
990
+ "name": "maxStack",
991
+ "type": "uint256"
992
+ }
993
+ ],
994
+ "internalType": "struct MerkleProof",
995
+ "name": "merkleProof",
996
+ "type": "tuple"
997
+ }
998
+ ],
999
+ "name": "messagesIn",
1000
+ "outputs": [],
1001
+ "stateMutability": "nonpayable",
1002
+ "type": "function"
1003
+ },
1004
+ {
1005
+ "inputs": [],
1006
+ "name": "nextEpochIndex",
1007
+ "outputs": [
1008
+ {
1009
+ "internalType": "uint32",
1010
+ "name": "",
1011
+ "type": "uint32"
1012
+ }
1013
+ ],
1014
+ "stateMutability": "view",
1015
+ "type": "function"
1016
+ },
1017
+ {
1018
+ "inputs": [],
1019
+ "name": "operatorRegistry",
1020
+ "outputs": [
1021
+ {
1022
+ "internalType": "contract OperatorRegistry",
1023
+ "name": "",
1024
+ "type": "address"
1025
+ }
1026
+ ],
1027
+ "stateMutability": "view",
1028
+ "type": "function"
1029
+ },
1030
+ {
1031
+ "inputs": [],
1032
+ "name": "pendingEpoch",
1033
+ "outputs": [
1034
+ {
1035
+ "internalType": "bytes",
1036
+ "name": "envelopeHash",
1037
+ "type": "bytes"
1038
+ },
1039
+ {
1040
+ "components": [
1041
+ {
1042
+ "components": [
1043
+ {
1044
+ "internalType": "ChainKind",
1045
+ "name": "kind",
1046
+ "type": "uint8"
1047
+ },
1048
+ {
1049
+ "internalType": "uint32",
1050
+ "name": "id",
1051
+ "type": "uint32"
1052
+ }
1053
+ ],
1054
+ "internalType": "struct ChainId",
1055
+ "name": "start",
1056
+ "type": "tuple"
1057
+ },
1058
+ {
1059
+ "components": [
1060
+ {
1061
+ "internalType": "ChainKind",
1062
+ "name": "kind",
1063
+ "type": "uint8"
1064
+ },
1065
+ {
1066
+ "internalType": "uint32",
1067
+ "name": "id",
1068
+ "type": "uint32"
1069
+ }
1070
+ ],
1071
+ "internalType": "struct ChainId",
1072
+ "name": "end",
1073
+ "type": "tuple"
1074
+ }
1075
+ ],
1076
+ "internalType": "struct Endpoints",
1077
+ "name": "endpoints",
1078
+ "type": "tuple"
1079
+ },
1080
+ {
1081
+ "internalType": "uint64",
1082
+ "name": "epochTimestamp",
1083
+ "type": "uint64"
1084
+ },
1085
+ {
1086
+ "internalType": "uint32",
1087
+ "name": "epochIndex",
1088
+ "type": "uint32"
1089
+ },
1090
+ {
1091
+ "internalType": "uint32",
1092
+ "name": "epochEnvelopeIndex",
1093
+ "type": "uint32"
1094
+ },
1095
+ {
1096
+ "internalType": "bytes",
1097
+ "name": "merkle",
1098
+ "type": "bytes"
1099
+ },
1100
+ {
1101
+ "internalType": "bytes",
1102
+ "name": "previousEnvelopeHash",
1103
+ "type": "bytes"
1104
+ },
1105
+ {
1106
+ "internalType": "bytes",
1107
+ "name": "startMessageId",
1108
+ "type": "bytes"
1109
+ },
1110
+ {
1111
+ "internalType": "bytes",
1112
+ "name": "endMessageId",
1113
+ "type": "bytes"
1114
+ }
1115
+ ],
1116
+ "stateMutability": "view",
1117
+ "type": "function"
1118
+ },
1119
+ {
1120
+ "inputs": [],
1121
+ "name": "pendingEpochHash",
1122
+ "outputs": [
1123
+ {
1124
+ "internalType": "bytes32",
1125
+ "name": "",
1126
+ "type": "bytes32"
1127
+ }
1128
+ ],
1129
+ "stateMutability": "view",
1130
+ "type": "function"
1131
+ },
1132
+ {
1133
+ "inputs": [],
1134
+ "name": "pendingMessageCount",
1135
+ "outputs": [
1136
+ {
1137
+ "internalType": "uint256",
1138
+ "name": "",
1139
+ "type": "uint256"
1140
+ }
1141
+ ],
1142
+ "stateMutability": "view",
1143
+ "type": "function"
1144
+ },
1145
+ {
1146
+ "inputs": [],
1147
+ "name": "previousEpochHash",
1148
+ "outputs": [
1149
+ {
1150
+ "internalType": "bytes32",
1151
+ "name": "",
1152
+ "type": "bytes32"
1153
+ }
1154
+ ],
1155
+ "stateMutability": "view",
1156
+ "type": "function"
1157
+ },
1158
+ {
1159
+ "inputs": [],
1160
+ "name": "proxiableUUID",
1161
+ "outputs": [
1162
+ {
1163
+ "internalType": "bytes32",
1164
+ "name": "",
1165
+ "type": "bytes32"
1166
+ }
1167
+ ],
1168
+ "stateMutability": "view",
1169
+ "type": "function"
1170
+ },
1171
+ {
1172
+ "inputs": [],
1173
+ "name": "requiredSignatureWeight",
1174
+ "outputs": [
1175
+ {
1176
+ "internalType": "uint256",
1177
+ "name": "",
1178
+ "type": "uint256"
1179
+ }
1180
+ ],
1181
+ "stateMutability": "view",
1182
+ "type": "function"
1183
+ },
1184
+ {
1185
+ "inputs": [
1186
+ {
1187
+ "internalType": "AttestationType",
1188
+ "name": "attestationType",
1189
+ "type": "uint16"
1190
+ },
1191
+ {
1192
+ "internalType": "address",
1193
+ "name": "handler",
1194
+ "type": "address"
1195
+ }
1196
+ ],
1197
+ "name": "setAttestationHandler",
1198
+ "outputs": [],
1199
+ "stateMutability": "nonpayable",
1200
+ "type": "function"
1201
+ },
1202
+ {
1203
+ "inputs": [
1204
+ {
1205
+ "internalType": "address",
1206
+ "name": "newAuthority",
1207
+ "type": "address"
1208
+ }
1209
+ ],
1210
+ "name": "setAuthority",
1211
+ "outputs": [],
1212
+ "stateMutability": "nonpayable",
1213
+ "type": "function"
1214
+ },
1215
+ {
1216
+ "inputs": [
1217
+ {
1218
+ "internalType": "address",
1219
+ "name": "registry",
1220
+ "type": "address"
1221
+ }
1222
+ ],
1223
+ "name": "setOperatorRegistry",
1224
+ "outputs": [],
1225
+ "stateMutability": "nonpayable",
1226
+ "type": "function"
1227
+ },
1228
+ {
1229
+ "inputs": [
1230
+ {
1231
+ "internalType": "uint256",
1232
+ "name": "requiredWeight",
1233
+ "type": "uint256"
1234
+ }
1235
+ ],
1236
+ "name": "setRequiredSignatureWeight",
1237
+ "outputs": [],
1238
+ "stateMutability": "nonpayable",
1239
+ "type": "function"
1240
+ },
1241
+ {
1242
+ "inputs": [
1243
+ {
1244
+ "internalType": "address",
1245
+ "name": "newImplementation",
1246
+ "type": "address"
1247
+ },
1248
+ {
1249
+ "internalType": "bytes",
1250
+ "name": "data",
1251
+ "type": "bytes"
1252
+ }
1253
+ ],
1254
+ "name": "upgradeToAndCall",
1255
+ "outputs": [],
1256
+ "stateMutability": "payable",
1257
+ "type": "function"
1258
+ }
1259
+ ],
1260
+ "bytecode": "0x60a08060405234603957306080526000805463ffffffff191681556010556145d5908161003f823960805181818161087f0152613be50152f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c8063162eb13f1461016757806320857e6514610162578063239e1d671461015d5780632c92892f146101585780633213eeed146101535780634f1ef2861461014e57806352d1902d1461014957806358c2225b146101445780635982ba7f1461013f5780635d4e25ce1461013a578063621fbd59146101355780637a9e5e4b146101305780638d9f616b1461012b5780638fb36037146101265780639d28fb8614610121578063ad3cb1cc1461011c578063bf7e214f14610117578063c4d66de814610112578063d4ef77651461010d578063e3dff2af146101085763f552501a1461010357600080fd5b611541565b611128565b610f53565b610bb9565b610b83565b610b39565b610a65565b610a12565b6109d5565b61095a565b61093c565b61091e565b610900565b6108d7565b61086c565b610761565b610709565b6106eb565b6106c7565b61060a565b610485565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761019d57604052565b61016c565b606081019081106001600160401b0382111761019d57604052565b6001600160401b03811161019d57604052565b602081019081106001600160401b0382111761019d57604052565b90601f801991011681019081106001600160401b0382111761019d57604052565b6040519061014082018281106001600160401b0382111761019d57604052565b6040519061010082018281106001600160401b0382111761019d57604052565b6001600160401b03811161019d57601f01601f191660200190565b81601f820112156102ae5780359061027e8261024c565b9261028c60405194856101eb565b828452602083830101116102ae57816000926020809301838601378301015290565b600080fd5b60ff8116036102ae57565b35906102c9826102b3565b565b359063ffffffff821682036102ae57565b91908260409103126102ae576040516102f481610182565b602061030f8183958035610307816102b3565b8552016102cb565b910152565b91906080838203126102ae57602061030f6040519261033284610182565b6040849661034083826102dc565b8652016102dc565b35906001600160401b03821682036102ae57565b6001600160401b03811161019d5760051b60200190565b81601f820112156102ae5780359160209161038d8461035c565b9360409261039d845196876101eb565b818652848087019260051b840101938185116102ae57858401925b8584106103c9575050505050505090565b6001600160401b0384358181116102ae57860191601f196060848703820181136102ae578551916103f9836101a2565b8b8601358581116102ae578790870191828a0301126102ae5786519061041e82610182565b8c81013561042b816102b3565b8252878101358681116102ae578d8a91610446930101610267565b8c82015282526104578686016102be565b8b8301528401359283116102ae57610476868b80969581960101610267565b858201528152019301926103b8565b346102ae576003196020368201126102ae576004908135906001600160401b03908183116102ae576101a09083360301126102ae576104c261020c565b91808401358281116102ae576104dd90853691840101610267565b83526104ec3660248301610314565b60208401526104fd60a48201610348565b604084015261050e60c482016102cb565b606084015261051f60e482016102cb565b60808401526101048101358281116102ae5761054090853691840101610267565b60a08401526101248101358281116102ae5761056190853691840101610267565b60c08401526101448101358281116102ae5761058290853691840101610267565b60e08401526101648101358281116102ae576105a390853691840101610267565b6101008401526101848101359182116102ae576105d2936105c79236920101610373565b610120820152611689565b005b6004359061ffff821682036102ae57565b359061ffff821682036102ae57565b600435906001600160a01b03821682036102ae57565b346102ae5760403660031901126102ae576106236105d4565b6001600160a01b039060243582811691908281036102ae5761ffff7f46d568db0216a0215fe7f56360f9fa1a002c4bf0773add9cd62cd06eff1601899261066a36336130c3565b1660008181526005602090815260408083205481516001600160a01b03968716815298169094169087015294909283929091a2825260056020526040822080546001600160a01b031916909117905580f35b60009103126102ae57565b346102ae5760003660031901126102ae57602063ffffffff60005416604051908152f35b346102ae5760003660031901126102ae576020601054604051908152f35b346102ae5760203660031901126102ae5760043561072736336130c3565b6003546040805183815260208101929092527f46b6c71912c48a832d1998e99ff4da93ecb8ca3bdde42ce65e7b8c5912fb9b9d91a1600355005b60403660031901126102ae576107756105f4565b6024356001600160401b0381116102ae57610794903690600401610267565b9061079d613bdb565b6107a736336130c3565b6107af613bdb565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa6000938161083b575b5061080257604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206145608339815191528303610822576105d292506142af565b604051632a87526960e21b815260048101849052602490fd5b61085e91945060203d602011610865575b61085681836101eb565b810190612cec565b92386107d8565b503d61084c565b346102ae5760003660031901126102ae577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c55760206040516000805160206145608339815191528152f35b60405163703e46dd60e11b8152600490fd5b346102ae5760003660031901126102ae576004546040516001600160a01b039091168152602090f35b346102ae5760003660031901126102ae576020600354604051908152f35b346102ae5760003660031901126102ae576020600254604051908152f35b346102ae5760003660031901126102ae576020600154604051908152f35b346102ae5760203660031901126102ae576109736105f4565b600080516020614540833981519152546001600160a01b039190821633036109be57803b156109a5576105d2906137c0565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346102ae5760203660031901126102ae5761ffff6109f16105d4565b166000526005602052602060018060a01b0360406000205416604051908152f35b346102ae5760003660031901126102ae576000805160206145408339815191525460a01c60ff1615610a5c576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610a49565b346102ae5760203660031901126102ae57610a7e6105f4565b610a8836336130c3565b600454604080516001600160a01b03848116825280841660208301529293917fb8dc9a4955b4c0b7ffd2e6fdd0b78da8af0f9de93a0effca582b9f4e3fef459191a16001600160a01b0319909216911617600455005b60405190610aeb826101d0565b60008252565b60005b838110610b045750506000910152565b8181015183820152602001610af4565b90602091610b2d81518092818552858086019101610af1565b601f01601f1916010190565b346102ae5760003660031901126102ae57610b7f604051610b5981610182565b60058152640352e302e360dc1b6020820152604051918291602083526020830190610b14565b0390f35b346102ae5760003660031901126102ae57600080516020614540833981519152546040516001600160a01b039091168152602090f35b346102ae5760203660031901126102ae57610bd26105f4565b60008051602061458083398151915254906001600160401b0360ff8360401c1615921680159081610cdd575b6001149081610cd3575b159081610cca575b50610cb857600080516020614580833981519152805467ffffffffffffffff19166001179055610c449082610c9357613819565b610c4a57005b600080516020614580833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b600080516020614580833981519152805460ff60401b1916600160401b179055613819565b60405163f92ee8a960e01b8152600490fd5b90501538610c10565b303b159150610c08565b839150610bfe565b91908260609103126102ae57604051610cfd816101a2565b60408082948035610d0d816102b3565b84526020810135610d1d816102b3565b6020850152013591610d2e836102b3565b0152565b91909160409081818503126102ae578151610d4c81610182565b8094610d57836102cb565b8252602092838101356001600160401b03918282116102ae57019180601f840112156102ae57823590610d898261035c565b96610d96815198896101eb565b828852868089019360051b860101948286116102ae57878101935b868510610dc357505050505050500152565b84358681116102ae5782019060609081601f1984880301126102ae57845191610deb836101a2565b610df68c85016105e5565b8352610e038685016102cb565b8c840152830135918883116102ae57610e23878d80969581960101610267565b86820152815201940193610db1565b9080601f830112156102ae576020908235610e4c8161035c565b93610e5a60405195866101eb565b81855260208086019260051b8201019283116102ae57602001905b828210610e83575050505090565b8380918335610e91816102b3565b815201910190610e75565b9190916060818403126102ae5760405190610eb6826101a2565b81938135916001600160401b03928381116102ae57810182601f820112156102ae578035602091610ee68261035c565b91610ef460405193846101eb565b808352838084019160051b830101918683116102ae5784809101915b838310610f4357505050508552808201359384116102ae57610f386040949385948401610e32565b908501520135910152565b8235815291810191859101610f10565b346102ae576040806003193601126102ae576001600160401b03906004358281116102ae57366023820112156102ae57806004013591602491610f958461035c565b93610fa360405195866101eb565b80855260209284602087019260051b840101923684116102ae57858101925b848410610fea578635888a82116102ae57610fe46105d2923690600401610e9c565b90612747565b83358981116102ae57820160231991848383360301126102ae5784519261101084610182565b898301358c81116102ae576101a09084019182360301126102ae5761103361022c565b90611040368c8301610314565b825260a48101358d81116102ae5761105d908c3691840101610267565b8a83015260c48101358d81116102ae5761107c908c3691840101610267565b8783015261108d3660e48301610ce5565b606083015261109f61014482016102cb565b60808301526101648101358d81116102ae576110c0908c3691840101610267565b60a08301526110d26101848201610348565b60c08301526101a4810135908d82116102ae578b6110f39236920101610267565b60e082015283526044820135928b84116102ae576111198994938b869536920101610d32565b83820152815201930192610fc2565b346102ae5760003660031901126102ae576020600f54604051908152f35b90600182811c92168015611176575b602083101461116057565b634e487b7160e01b600052602260045260246000fd5b91607f1691611155565b60405190600082600a549161119483611146565b8083529260209060019081811690811561122057506001146111bf575b50506102c9925003836101eb565b915092600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8936000925b82841061120857506102c994505050810160200138806111b1565b855488850183015294850194879450928101926111ed565b915050602092506102c994915060ff191682840152151560051b82010138806111b1565b60405190600082600b549161125883611146565b8083529260209060019081811690811561122057506001146112825750506102c9925003836101eb565b915092600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9936000925b8284106112cb57506102c994505050810160200138806111b1565b855488850183015294850194879450928101926112b0565b60405190600082600c54916112f783611146565b8083529260209060019081811690811561122057506001146113215750506102c9925003836101eb565b915092600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c7936000925b82841061136a57506102c994505050810160200138806111b1565b8554888501830152948501948794509281019261134f565b60405190600082600d549161139683611146565b8083529260209060019081811690811561122057506001146113c05750506102c9925003836101eb565b915092600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5936000925b82841061140957506102c994505050810160200138806111b1565b855488850183015294850194879450928101926113ee565b6040519061142e82610182565b60075460ff8116835260081c63ffffffff166020830152565b6040519061145482610182565b81602063ffffffff60085460ff8116845260081c16910152565b97949561150361152f9763ffffffff611520978c60a061153e9f9d996001600160401b03906114ec60206114ae6115119d9c610180808952880190610b14565b9b6114cf828801825163ffffffff6020809260ff8151168552015116910152565b0151805160ff1660608701526020015163ffffffff166080860152565b169101521660c08c015263ffffffff1660e08b0152565b8882036101008a0152610b14565b90868203610120880152610b14565b90848203610140860152610b14565b91610160818403910152610b14565b90565b346102ae57600080600319360112611686576040519080826006549161156683611146565b928383526020946001918660018216918260001461166457505060011461160a575b5050611596925003836101eb565b604051906115a382610182565b6115ab611421565b82526115b5611447565b90820152610b7f60095463ffffffff6115cc611180565b6115d4611244565b906115dd6112e3565b926115e6611382565b946040519889986001600160401b03848460601c16948460401c169316918a61146e565b90859250600682527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b85831061164c57505061159693508201013880611588565b80548389018501528794508693909201918101611634565b925093505061159694915060ff191682840152151560051b8201013880611588565b80fd5b61169336336130c3565b60608181015160005463ffffffff9182169116808203611b1257505060105480611ade575060c082016116c681516131de565b80611aa957506116d76002546131f2565b90525b6116e382613208565b9282518051611a78575b506000936003548015801590611a69575b611a3c575b61171261012086015151611b38565b926000965b6101208701518051891015611921578861173091611b92565b51600261174c611746611746845160ff90511690565b60ff1690565b0361190857602060036117686117466117468486015160ff1690565b036118ac576014818351015151036118ac57604082015160418151036118ef576000829182810151908b6040820151910151831a90601b82106118da575b604080518c815260ff9093166020840152820192909252606081019190915280608081015b838052039060015afa156118d557600051915101516020015160601c6001600160a01b03908282161590829082156118c5575b50506118ac57899060005b82811061184c5750509161183e826118396118449461182a6001978c611b92565b6001600160a01b039091169052565b613745565b90611bdf565b970196611717565b90809250831661187b61186f611862848c611b92565b516001600160a01b031690565b6001600160a01b031690565b1461188b57600101908a91611809565b60405163691ffb8960e11b81526001600160a01b0384166004820152602490fd5b60405163834019ad60e01b8152600481018b9052602490fd5b90915016818316141581386117fe565b611bd3565b906118e76117cb91611bbc565b9190506117a6565b60405163834019ad60e01b8152600481018c9052602490fd5b60405163834019ad60e01b8152600481018a9052602490fd5b509350955090939250808210611a1a575050906119ec6060836119647f92755d6396624ba7d332fd47df31ce92c55ea403dff51b832270c53ea4e38078956124da565b6119a76119a261199661199161197e6101008601516137b1565b61198b60e08701516137b1565b90612701565b61271a565b6001600160401b031690565b601055565b6119b084600f55565b6119e16119cb6119c68484015163ffffffff1690565b612732565b63ffffffff1663ffffffff196000541617600055565b015163ffffffff1690565b611a156010546040519384938460409194939263ffffffff606083019616825260208201520152565b0390a1565b604051631254a68960e21b815260048101919091526024810191909152604490fd5b6004546001600160a01b0390611a5390821661186f565b1661170357604051625bb93d60e71b8152600490fd5b506101208501515115156116fe565b611a81906131de565b8085146116ed57604051631d734b9160e01b8152600481018690526024810191909152604490fd5b9050600254808203611abc5750506116da565b604051631d734b9160e01b815260048101919091526024810191909152604490fd5b60095460401c63ffffffff1660405163172cc05360e31b815263ffffffff9190911660048201526024810191909152604490fd5b6040516307d3e83d60e51b815263ffffffff918216600482015291166024820152604490fd5b90611b428261035c565b611b4f60405191826101eb565b8281528092611b60601f199161035c565b0190602036910137565b634e487b7160e01b600052603260045260246000fd5b805115611b8d5760200190565b611b6a565b8051821015611b8d5760209160051b010190565b634e487b7160e01b600052601160045260246000fd5b60ff601b9116019060ff8211611bce57565b611ba6565b6040513d6000823e3d90fd5b91908201809211611bce57565b818110611bf7575050565b60008155600101611bec565b90601f8211611c10575050565b6102c991600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8906020601f840160051c83019310611c5a575b601f0160051c0190611bec565b9091508190611c4d565b90601f8211611c71575050565b6102c991600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611cc7575050565b6102c991600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c7906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611d1d575050565b6102c991600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611d73575050565b6102c99160066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f906020601f840160051c83019310611c5a57601f0160051c0190611bec565b9190601f8111611dcb57505050565b6102c9926000526020600020906020601f840160051c83019310611c5a57601f0160051c0190611bec565b9081516001600160401b03811161019d57611e1b81611e16600a54611146565b611c03565b602080601f8311600114611e5e57508190611e4e9394600092611e53575b50508160011b916000199060031b1c19161790565b600a55565b015190503880611e39565b90601f19831694611e91600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a890565b926000905b878210611ece575050836001959610611eb5575b505050811b01600a55565b015160001960f88460031b161c19169055388080611eaa565b80600185968294968601518155019501930190611e96565b9081516001600160401b03811161019d57611f0b81611f06600b54611146565b611c64565b602080601f8311600114611f4257508190611f3d9394600092611e535750508160011b916000199060031b1c19161790565b600b55565b90601f19831694611f75600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db990565b926000905b878210611fb2575050836001959610611f99575b505050811b01600b55565b015160001960f88460031b161c19169055388080611f8e565b80600185968294968601518155019501930190611f7a565b9081516001600160401b03811161019d57611fef81611fea600c54611146565b611cba565b602080601f8311600114612026575081906120219394600092611e535750508160011b916000199060031b1c19161790565b600c55565b90601f19831694612059600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c790565b926000905b87821061209657505083600195961061207d575b505050811b01600c55565b015160001960f88460031b161c19169055388080612072565b8060018596829496860151815501950193019061205e565b9081516001600160401b03811161019d576120d3816120ce600d54611146565b611d10565b602080601f831160011461210a575081906121059394600092611e535750508160011b916000199060031b1c19161790565b600d55565b90601f1983169461213d600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb590565b926000905b87821061217a575050836001959610612161575b505050811b01600d55565b015160001960f88460031b161c19169055388080612156565b80600185968294968601518155019501930190612142565b91909182516001600160401b03811161019d576121b9816121b38454611146565b84611dbc565b602080601f83116001146121f0575081906121ec939495600092611e535750508160011b916000199060031b1c19161790565b9055565b90601f1983169561220685600052602060002090565b926000905b8882106122435750508360019596971061222a575b505050811b019055565b015160001960f88460031b161c19169055388080612220565b8060018596829496860151815501950193019061220b565b6122658154611146565b908161226f575050565b81601f60009311600114612281575055565b9080839182526122a0601f60208420940160051c840160018501611bec565b5555565b9080516122bf60ff825116849060ff1660ff19825416179055565b6001808401916020809101518051926001600160401b03841161019d576122f0846122ea8754611146565b87611dbc565b602092601f851160011461235d5750509261232d836040946102c9989794600397600092611e535750508160011b916000199060031b1c19161790565b90555b612354612341602083015160ff1690565b600286019060ff1660ff19825416179055565b01519101612192565b929190601f1985169061237587600052602060002090565b946000915b8383106123c157505050936102c99796936003969360019383604098106123a9575b505050811b019055612330565b015160001983891b60f8161c1916905538808061239c565b84860151875595860195948101949181019161237a565b805190600160401b821161019d57600e5482600e55808310612451575b50600e6000526020908101907fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd6000925b848410612434575050505050565b6004838261244560019451866122a4565b01920193019290612426565b60026001600160fe1b038281168303611bce5784168403611bce57600090600e6000527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd9260021b8301928560021b015b8381106124b1575050506123f5565b8083600492556124c36001820161225b565b83838201556124d46003820161225b565b016124a2565b80518051906001600160401b03821161019d57612501826124fc600654611146565b611d66565b602090816001601f851114612672575082610120936102c9959361253b93600092611e535750508160011b916000199060031b1c19161790565b6006555b61259560208201516020908181519160ff8351166007549064ffffffff00958695015164ffffffffff1996879160081b169216171760075501519160ff83511691602060085494015160081b1692161717600855565b6125c86125ac60408301516001600160401b031690565b6001600160401b03166001600160401b03196009541617600955565b6125fd6125dc606083015163ffffffff1690565b63ffffffff60401b6009549160401b169063ffffffff60401b191617600955565b612636612611608083015163ffffffff1690565b6009805463ffffffff60601b191660609290921b63ffffffff60601b16919091179055565b61264360a0820151611df6565b61265060c0820151611ee6565b61265d60e0820151611fca565b61266b6101008201516120ae565b01516123d8565b60066000529190601f1984167ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f936000905b8282106126e9575050926001928592610120966102c99896106126d0575b505050811b0160065561253f565b015160001960f88460031b161c191690553880806126c2565b806001869782949787015181550196019401906126a4565b6001600160401b039182169082160391908211611bce57565b9060016001600160401b0380931601918211611bce57565b90600163ffffffff80931601918211611bce57565b9061275236336130c3565b601054825190818110612ca557505061276b8251611b38565b6001908160015460009073__$b91d2ad766fd07dc99f56c1a0b020615bb$__925b6129b5575b5050506127a461279f611180565b6131de565b73__$398d4f030862acab53d338aebf0b4256d7$__91823b156102ae576127e89260009260409660405195869485938493633723f9ef60e21b855260048501612f4a565b03915af480156118d55761299c575b5060095460401c63ffffffff16917f2cae74b52637f741120c3765ff52d7cc2c0d635ecd2dfe33e3d51d77542d105d6020938461283387611b80565b515101519061285f8661284f6128498a51612fdb565b8a611b92565b5151015160405193849384612ff7565b0390a16000825b61290c575b5050508161289d6128986119a29361288f6128896128a69751612fdb565b85611b92565b515101516131de565b600155565b51601054612fea565b601054156128b057565b7fe784b22f2061de501b77364cab02ee109528afe4ddc8d423d076f6b49021b58e6128fe6128e760095463ffffffff9060401c1690565b60405163ffffffff90911681529081906020820190565b0390a16102c9600f54600255565b84518110156129975790828261292c612926839589611b92565b516139cf565b7f92a2f43bb4dec6ecbf6961abb1cfddfdb3469fce3826df9af188c3d4f44ec97b86612958838a611b92565b5151015161297d888061296b868d611b92565b5101510151516001600160401b031690565b9061298c865192839283613028565b0390a1019091612866565b61286b565b806129a96129af926101bd565b806106bc565b386127f7565b8651821015612ca057604090806129d08361288f868c611b92565b03612c6c5750602090816129e4848a611b92565b510151815163765809ab60e11b8152838180612a04600495868301612cfb565b0381895af49081156118d557600091612c4f575b5083858b60a080612a298484611b92565b5151015151612c0e57612a6792612a719492612a5f92612a4b612a8b986131f2565b90612a568484611b92565b51510152611b92565b510151613859565b5163ffffffff1690565b6080612a7d878d611b92565b5151019063ffffffff169052565b612ab36000612a9a868c611b92565b515184518093819262409a0960e81b8352868301612e49565b0381895af49081156118d557600091612bed575b508984612ad48783611b92565b5151015151612b93579184939184612af188612b19999896611b92565b51510152612aff858c611b92565b5151915163b93612a760e01b815295869283928301612e49565b0381875af49081156118d557612b3c612b57928895600091612b76575b506131f2565b60e0612b48858c611b92565b515101525b61288f838a611b92565b612b618286611b92565b5281612b6d8286611b92565b5191019161278c565b612b8d9150833d85116108655761085681836101eb565b38612b36565b612ba1868692959395611b92565b5151015184815191012083518585012003612bc45750505090612b578592612b4d565b6107fe9084612bd3878d611b92565b515101519051630ca2e06d60e11b81529384938401612cc7565b612c08913d8091833e612c0081836101eb565b810190612da7565b38612ac7565b91612c1d935061288f91611b92565b818103612c2b575050612a8b565b9251631d97afef60e31b815291820190815260208101929092529081906040010390fd5b612c669150843d86116108655761085681836101eb565b38612a18565b6107fe82612c8485612c7e8c956131f2565b94611b92565b515101519251635d90b51d60e01b815292839260048401612cc7565b612791565b604051630daf4bc160e01b815260048101919091526024810191909152604490fd5b9091612cde61153e93604084526040840190610b14565b916020818403910152610b14565b908160209103126102ae575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b868510612d505750505050505050505090565b909192939495969799988680612d92600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a8201520190610b14565b9b9c9a01989796919091019401929190612d3d565b6020818303126102ae578051906001600160401b0382116102ae570181601f820112156102ae578051612dd98161024c565b92612de760405194856101eb565b818452602082840101116102ae5761153e9160208085019101610af1565b90604060206102c993612e2c84825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b9061153e9160208152612e60602082018351612e05565b602082015190612e7e6101a0928360a08401526101c0830190610b14565b9160e0612ef2612ea0604087015195601f1996878783030160c0880152610b14565b612ecc60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a08701518686830301610160870152610b14565b60c08601516001600160401b03166101808501529401519282850301910152610b14565b90815180825260208080930193019160005b828110612f36575050505090565b835185529381019392810192600101612f28565b9392909160808552612f6883516060608088015260e0870190612f16565b602080850151878303607f190160a089015280518084529282019591929083019060005b818110612fc45750505092612fbc926102c995926040606096015160c08a01528801528682036040880152612f16565b930160029052565b825160ff1688529684019691840191600101612f8c565b600019810191908211611bce57565b91908203918211611bce57565b9161301a9063ffffffff61153e9593168452606060208501526060840190610b14565b916040818403910152610b14565b906001600160401b03613048602092959495604085526040850190610b14565b9416910152565b6004116102ae57600090600490565b6001600160e01b0319903581811693926004811061307b57505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b60008051602061454083398151915280546130fc906001600160a01b03166130f36130ed8661304f565b9061305e565b90843091613b4c565b9015613109575b50505050565b63ffffffff16156131be57600080516020614540833981519152805460ff60a01b1916600160a01b17905561314c9061186f9081905b546001600160a01b031690565b91823b156102ae576131789260009283604051809681958294634a63ebf760e11b84526004840161308a565b03925af180156118d5576131ab575b50600080516020614540833981519152805460ff60a01b1916905538808080613103565b806129a96131b8926101bd565b38613187565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b8051156131ec576020015190565b50600090565b6040519060208201526020815261153e81610182565b8051906101208101928351936040908151613222816101d0565b6000815284528151613233816101d0565b600081528152613241610ade565b9261324a613cc2565b948351809660209687830161325e91613842565b61326791613842565b0395601f1996878101825261327c90826101eb565b815161328790613f72565b90855191829188830161329991613842565b6132a291613842565b0387810182526132b290826101eb565b6132ba613caf565b9085519182918883016132cc91613842565b6132d591613842565b0387810182526132e590826101eb565b858201516132f290613fc2565b908151613305906001600160401b031690565b61330e90613dec565b90865191829189830161332091613842565b61332991613842565b03888101825261333990826101eb565b855191829188830161334a91613842565b61335391613842565b03878101825261336390826101eb565b61336b613cd5565b90855191829188830161337d91613842565b61338691613842565b03878101825261339690826101eb565b818501516001600160401b03166133ac90613dec565b9085519182918883016133be91613842565b6133c791613842565b0387810182526133d790826101eb565b6133df613ce8565b9085519182918883016133f191613842565b6133fa91613842565b03878101825261340a90826101eb565b606082015161341e9063ffffffff16613dec565b90855191829188830161343091613842565b61343991613842565b03878101825261344990826101eb565b613451613cfb565b90855191829188830161346391613842565b61346c91613842565b03878101825261347c90826101eb565b60808201516134909063ffffffff16613dec565b9085519182918883016134a291613842565b6134ab91613842565b0387810182526134bb90826101eb565b6134c3613d0e565b9085519182918883016134d591613842565b6134de91613842565b0387810182526134ee90826101eb565b60a08201516134fc90613f72565b90855191829188830161350e91613842565b61351791613842565b03878101825261352790826101eb565b61352f613d21565b90855191829188830161354191613842565b61354a91613842565b03878101825261355a90826101eb565b60c082015161356890613f72565b90855191829188830161357a91613842565b61358391613842565b03878101825261359390826101eb565b61359b613d67565b9085519182918883016135ad91613842565b6135b691613842565b0387810182526135c690826101eb565b60e08201516135d490613f72565b9085519182918883016135e691613842565b6135ef91613842565b0387810182526135ff90826101eb565b613607613d86565b90855191829188830161361991613842565b61362291613842565b03878101825261363290826101eb565b61010082015161364190613f72565b90855191829188830161365391613842565b61365c91613842565b03878101825261366c90826101eb565b976000985b8451518a1015613730576136ba6137286136ba61371c8961370e8f8d8f916136d86136d28f92613702936136cc60019e6136c06136ac613da5565b8c519e8f938b850190613842565b90613842565b038881018d528c6101eb565b51611b92565b51614131565b946136ba6136f56136f088516001600160401b031690565b613dec565b9151988994850190613842565b039081018552846101eb565b8a519485938d850190613842565b038a81018352826101eb565b990198613671565b93959298509550959250815191012093525290565b602060018060a01b0360248160045416936040519485938492632e52a97360e11b84521660048301525afa9081156118d557600091613782575090565b90506020813d6020116137a9575b8161379d602093836101eb565b810103126102ae575190565b3d9150613790565b6137ba906131de565b60c01c90565b60008051602061454083398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b61383a90613825613c35565b61382d613c35565b613835613c35565b6137c0565b6102c9613c35565b9061385560209282815194859201610af1565b0190565b61388c91613865610ade565b9061386e613c98565b6136ba6138db6040926040519788916136ba60209889850190613842565b03966138a0601f19988981018352826101eb565b6138cf6138c06136f06138b78a5163ffffffff1690565b63ffffffff1690565b60405194859389850190613842565b038781018352826101eb565b916000925b84860180515185101561397a576136ba6139706136ba61371c89956139628d61393c6139368d60019a6136cc8f61392a8f916136ba61391d613caf565b91519b8c94850190613842565b038681018952886101eb565b51613e6d565b926137026139546136f086516001600160401b031690565b8d519788938d850190613842565b885194859388850190613842565b94019390506138e0565b5095509350505050565b9193926001600160401b039061ffff6139a7604094606087526060870190610b14565b9616602085015216910152565b60409061ffff61153e94931681528160208201520190610b14565b9060005b602090818085015101518051821015613b4557816139f091611b92565b51805161ffff1690613a1661186f61313f8461ffff166000526005602052604060002090565b6001600160a01b038116929091908315613b275761dead8414613ad75760408092015192803b156102ae578251633bbe5e5b60e21b8152936000918591829084908290613a679088600484016139b4565b03925af180156118d5576001967f6615e715ef29da98af4d4b50f6beb57ec1a6a61bb207b117e5fb58632755e93794613aba92613ac4575b508951015192519283926001600160401b0388169184613984565b0390a25b016139d3565b806129a9613ad1926101bd565b38613a9f565b9150507f06a84e8c796b3ecc778e5832b8ba6869cc1bf4822409bfd7f852021f87256d0c91506001938651015190613b1f6040519283926001600160401b0387169184613984565b0390a1613abe565b6040516333342afb60e01b815261ffff919091166004820152602490fd5b5050509050565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761019d57604093859385528380528360205251915afa613bc95750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215613c19575b50506108c557565b6000805160206145608339815191525416141590503880613c11565b60ff6000805160206145808339815191525460401c1615613c5257565b604051631afcd79f60e31b8152600490fd5b60405190613c7182610182565b6001825260203681840137565b60405190613c8b82610182565b600a825260203681840137565b613ca0613c64565b6008613cab82611b80565b5390565b613cb7613c64565b6012613cab82611b80565b613cca613c64565b600a613cab82611b80565b613cdd613c64565b6028613cab82611b80565b613cf0613c64565b6030613cab82611b80565b613d03613c64565b6038613cab82611b80565b613d16613c64565b607a613cab82611b80565b613d29613c7e565b60a260005b607f80831115613d535790608060019284161760208286010153019060071c90613d2e565b50607f600192166020828501015301815290565b613d6f613c7e565b60f260016000826020850153019060071c90613d2e565b613d8e613c7e565b60fa60016000826020850153019060071c90613d2e565b613dad613c7e565b6101926001600060926020850153019060071c90613d2e565b613dce613c64565b6010613cab82611b80565b613de1613c64565b601a613cab82611b80565b9060809160806001600160401b03821610613e4857613e09613c7e565b60005b607f80841115613e3057908560019285161760208285010153019160071c91613e0c565b5090929350607f600192166020828501015301815290565b909150613e53613c64565b9060f81b6001600160f81b03191660001a613cab82611b80565b61153e613eae6136ba92613f66613f526136ba613f59613e8b610ade565b94613e94613c98565b9060409485928351998a916136ba60209b8c850190613842565b0398613ec2601f199a8b81018352826101eb565b613f0189613ef5613ee56136f0613ede613ede895161ffff1690565b61ffff1690565b6136ba8851958694850190613842565b038b81018352826101eb565b613f1089613ef5613ee5613dc6565b613f2d89613ef5613ee56136f06138b78489015163ffffffff1690565b613f46613f38613dd9565b85519d8e938c850190613842565b038981018c528b6101eb565b0151613f72565b9151968794850190613842565b039081018352826101eb565b61153e6020613f8a6001600160401b03845116613dec565b6040519381613fa28693518092868087019101610af1565b8201613fb682518093868085019101610af1565b010380845201826101eb565b613fca610ade565b90613fd3613cc2565b6040805193846020938492838301613fea91613842565b613ff391613842565b0393601f1994858101875261400890876101eb565b805161401390614356565b958651614026906001600160401b031690565b61402f90613dec565b90845191829185830161404191613842565b61404a91613842565b03868101825261405a90826101eb565b835196879184830161406b91613842565b61407491613842565b03858101875261408490876101eb565b61408c613caf565b95835196879184830161409e91613842565b6140a791613842565b0385810187526140b790876101eb565b01516140c290614356565b9081516140d5906001600160401b031690565b6140de90613dec565b9481519586918583016140f091613842565b6140f991613842565b03848101865261410990866101eb565b51938492830161411891613842565b61412191613842565b03908101825261153e90826101eb565b614139610ade565b90614142613cc2565b916040808051809560209485830161415991613842565b61416291613842565b0393601f1994858101875261417790876101eb565b8051614182906143fd565b958651614195906001600160401b031690565b61419e90613dec565b9083519182918783016141b091613842565b6141b991613842565b0386810182526141c990826101eb565b82519687918683016141da91613842565b6141e391613842565b0385810187526141f390876101eb565b6141fb613dc6565b95825196879186830161420d91613842565b61421691613842565b03858101875261422690876101eb565b838101516142369060ff16613dec565b95825196879186830161424891613842565b61425191613842565b03858101875261426190876101eb565b614269613dd9565b95825196879186830161427b91613842565b61428491613842565b03858101875261429490876101eb565b015161429f90613f72565b9051938492830161411891613842565b90813b156143355760008051602061456083398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a280511561431a576143179161449a565b50565b50503461432357565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b61153e6136ba6136ba613f666143ed6136f06138b760206136ba986119e16136ba6143c7614382610ade565b61439c61438d613c98565b6040519d8e9389850190613842565b039a6143b0601f199c8d81018352826101eb565b613ef56138c06136f0611746611746895160ff1690565b6143e16143d2613dc6565b6040519a8b9387850190613842565b038981018952886101eb565b6040519586936020850190613842565b61153e6136ba6136ba613f666143ed60206136ba96613f526136ba614474614423610ade565b61443d61442e613c98565b6040519b8c9389850190613842565b0398614451601f199a8b81018352826101eb565b6144686138c06136f0611746611746895160ff1690565b038981018352826101eb565b61448e61447f613caf565b60405198899387850190613842565b038781018752866101eb565b60008061153e93602081519101845af43d156144d8573d916144bb8361024c565b926144c960405194856101eb565b83523d6000602085013e6144dc565b6060915b9061450357508051156144f157602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614536575b614514575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561450c56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212208753cb1f63906494a52fddfb6c239f63e3a761e1255c0dc2b892df08f3e85d3864736f6c63430008190033",
1261
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c8063162eb13f1461016757806320857e6514610162578063239e1d671461015d5780632c92892f146101585780633213eeed146101535780634f1ef2861461014e57806352d1902d1461014957806358c2225b146101445780635982ba7f1461013f5780635d4e25ce1461013a578063621fbd59146101355780637a9e5e4b146101305780638d9f616b1461012b5780638fb36037146101265780639d28fb8614610121578063ad3cb1cc1461011c578063bf7e214f14610117578063c4d66de814610112578063d4ef77651461010d578063e3dff2af146101085763f552501a1461010357600080fd5b611541565b611128565b610f53565b610bb9565b610b83565b610b39565b610a65565b610a12565b6109d5565b61095a565b61093c565b61091e565b610900565b6108d7565b61086c565b610761565b610709565b6106eb565b6106c7565b61060a565b610485565b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761019d57604052565b61016c565b606081019081106001600160401b0382111761019d57604052565b6001600160401b03811161019d57604052565b602081019081106001600160401b0382111761019d57604052565b90601f801991011681019081106001600160401b0382111761019d57604052565b6040519061014082018281106001600160401b0382111761019d57604052565b6040519061010082018281106001600160401b0382111761019d57604052565b6001600160401b03811161019d57601f01601f191660200190565b81601f820112156102ae5780359061027e8261024c565b9261028c60405194856101eb565b828452602083830101116102ae57816000926020809301838601378301015290565b600080fd5b60ff8116036102ae57565b35906102c9826102b3565b565b359063ffffffff821682036102ae57565b91908260409103126102ae576040516102f481610182565b602061030f8183958035610307816102b3565b8552016102cb565b910152565b91906080838203126102ae57602061030f6040519261033284610182565b6040849661034083826102dc565b8652016102dc565b35906001600160401b03821682036102ae57565b6001600160401b03811161019d5760051b60200190565b81601f820112156102ae5780359160209161038d8461035c565b9360409261039d845196876101eb565b818652848087019260051b840101938185116102ae57858401925b8584106103c9575050505050505090565b6001600160401b0384358181116102ae57860191601f196060848703820181136102ae578551916103f9836101a2565b8b8601358581116102ae578790870191828a0301126102ae5786519061041e82610182565b8c81013561042b816102b3565b8252878101358681116102ae578d8a91610446930101610267565b8c82015282526104578686016102be565b8b8301528401359283116102ae57610476868b80969581960101610267565b858201528152019301926103b8565b346102ae576003196020368201126102ae576004908135906001600160401b03908183116102ae576101a09083360301126102ae576104c261020c565b91808401358281116102ae576104dd90853691840101610267565b83526104ec3660248301610314565b60208401526104fd60a48201610348565b604084015261050e60c482016102cb565b606084015261051f60e482016102cb565b60808401526101048101358281116102ae5761054090853691840101610267565b60a08401526101248101358281116102ae5761056190853691840101610267565b60c08401526101448101358281116102ae5761058290853691840101610267565b60e08401526101648101358281116102ae576105a390853691840101610267565b6101008401526101848101359182116102ae576105d2936105c79236920101610373565b610120820152611689565b005b6004359061ffff821682036102ae57565b359061ffff821682036102ae57565b600435906001600160a01b03821682036102ae57565b346102ae5760403660031901126102ae576106236105d4565b6001600160a01b039060243582811691908281036102ae5761ffff7f46d568db0216a0215fe7f56360f9fa1a002c4bf0773add9cd62cd06eff1601899261066a36336130c3565b1660008181526005602090815260408083205481516001600160a01b03968716815298169094169087015294909283929091a2825260056020526040822080546001600160a01b031916909117905580f35b60009103126102ae57565b346102ae5760003660031901126102ae57602063ffffffff60005416604051908152f35b346102ae5760003660031901126102ae576020601054604051908152f35b346102ae5760203660031901126102ae5760043561072736336130c3565b6003546040805183815260208101929092527f46b6c71912c48a832d1998e99ff4da93ecb8ca3bdde42ce65e7b8c5912fb9b9d91a1600355005b60403660031901126102ae576107756105f4565b6024356001600160401b0381116102ae57610794903690600401610267565b9061079d613bdb565b6107a736336130c3565b6107af613bdb565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa6000938161083b575b5061080257604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206145608339815191528303610822576105d292506142af565b604051632a87526960e21b815260048101849052602490fd5b61085e91945060203d602011610865575b61085681836101eb565b810190612cec565b92386107d8565b503d61084c565b346102ae5760003660031901126102ae577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c55760206040516000805160206145608339815191528152f35b60405163703e46dd60e11b8152600490fd5b346102ae5760003660031901126102ae576004546040516001600160a01b039091168152602090f35b346102ae5760003660031901126102ae576020600354604051908152f35b346102ae5760003660031901126102ae576020600254604051908152f35b346102ae5760003660031901126102ae576020600154604051908152f35b346102ae5760203660031901126102ae576109736105f4565b600080516020614540833981519152546001600160a01b039190821633036109be57803b156109a5576105d2906137c0565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346102ae5760203660031901126102ae5761ffff6109f16105d4565b166000526005602052602060018060a01b0360406000205416604051908152f35b346102ae5760003660031901126102ae576000805160206145408339815191525460a01c60ff1615610a5c576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610a49565b346102ae5760203660031901126102ae57610a7e6105f4565b610a8836336130c3565b600454604080516001600160a01b03848116825280841660208301529293917fb8dc9a4955b4c0b7ffd2e6fdd0b78da8af0f9de93a0effca582b9f4e3fef459191a16001600160a01b0319909216911617600455005b60405190610aeb826101d0565b60008252565b60005b838110610b045750506000910152565b8181015183820152602001610af4565b90602091610b2d81518092818552858086019101610af1565b601f01601f1916010190565b346102ae5760003660031901126102ae57610b7f604051610b5981610182565b60058152640352e302e360dc1b6020820152604051918291602083526020830190610b14565b0390f35b346102ae5760003660031901126102ae57600080516020614540833981519152546040516001600160a01b039091168152602090f35b346102ae5760203660031901126102ae57610bd26105f4565b60008051602061458083398151915254906001600160401b0360ff8360401c1615921680159081610cdd575b6001149081610cd3575b159081610cca575b50610cb857600080516020614580833981519152805467ffffffffffffffff19166001179055610c449082610c9357613819565b610c4a57005b600080516020614580833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b600080516020614580833981519152805460ff60401b1916600160401b179055613819565b60405163f92ee8a960e01b8152600490fd5b90501538610c10565b303b159150610c08565b839150610bfe565b91908260609103126102ae57604051610cfd816101a2565b60408082948035610d0d816102b3565b84526020810135610d1d816102b3565b6020850152013591610d2e836102b3565b0152565b91909160409081818503126102ae578151610d4c81610182565b8094610d57836102cb565b8252602092838101356001600160401b03918282116102ae57019180601f840112156102ae57823590610d898261035c565b96610d96815198896101eb565b828852868089019360051b860101948286116102ae57878101935b868510610dc357505050505050500152565b84358681116102ae5782019060609081601f1984880301126102ae57845191610deb836101a2565b610df68c85016105e5565b8352610e038685016102cb565b8c840152830135918883116102ae57610e23878d80969581960101610267565b86820152815201940193610db1565b9080601f830112156102ae576020908235610e4c8161035c565b93610e5a60405195866101eb565b81855260208086019260051b8201019283116102ae57602001905b828210610e83575050505090565b8380918335610e91816102b3565b815201910190610e75565b9190916060818403126102ae5760405190610eb6826101a2565b81938135916001600160401b03928381116102ae57810182601f820112156102ae578035602091610ee68261035c565b91610ef460405193846101eb565b808352838084019160051b830101918683116102ae5784809101915b838310610f4357505050508552808201359384116102ae57610f386040949385948401610e32565b908501520135910152565b8235815291810191859101610f10565b346102ae576040806003193601126102ae576001600160401b03906004358281116102ae57366023820112156102ae57806004013591602491610f958461035c565b93610fa360405195866101eb565b80855260209284602087019260051b840101923684116102ae57858101925b848410610fea578635888a82116102ae57610fe46105d2923690600401610e9c565b90612747565b83358981116102ae57820160231991848383360301126102ae5784519261101084610182565b898301358c81116102ae576101a09084019182360301126102ae5761103361022c565b90611040368c8301610314565b825260a48101358d81116102ae5761105d908c3691840101610267565b8a83015260c48101358d81116102ae5761107c908c3691840101610267565b8783015261108d3660e48301610ce5565b606083015261109f61014482016102cb565b60808301526101648101358d81116102ae576110c0908c3691840101610267565b60a08301526110d26101848201610348565b60c08301526101a4810135908d82116102ae578b6110f39236920101610267565b60e082015283526044820135928b84116102ae576111198994938b869536920101610d32565b83820152815201930192610fc2565b346102ae5760003660031901126102ae576020600f54604051908152f35b90600182811c92168015611176575b602083101461116057565b634e487b7160e01b600052602260045260246000fd5b91607f1691611155565b60405190600082600a549161119483611146565b8083529260209060019081811690811561122057506001146111bf575b50506102c9925003836101eb565b915092600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8936000925b82841061120857506102c994505050810160200138806111b1565b855488850183015294850194879450928101926111ed565b915050602092506102c994915060ff191682840152151560051b82010138806111b1565b60405190600082600b549161125883611146565b8083529260209060019081811690811561122057506001146112825750506102c9925003836101eb565b915092600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9936000925b8284106112cb57506102c994505050810160200138806111b1565b855488850183015294850194879450928101926112b0565b60405190600082600c54916112f783611146565b8083529260209060019081811690811561122057506001146113215750506102c9925003836101eb565b915092600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c7936000925b82841061136a57506102c994505050810160200138806111b1565b8554888501830152948501948794509281019261134f565b60405190600082600d549161139683611146565b8083529260209060019081811690811561122057506001146113c05750506102c9925003836101eb565b915092600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5936000925b82841061140957506102c994505050810160200138806111b1565b855488850183015294850194879450928101926113ee565b6040519061142e82610182565b60075460ff8116835260081c63ffffffff166020830152565b6040519061145482610182565b81602063ffffffff60085460ff8116845260081c16910152565b97949561150361152f9763ffffffff611520978c60a061153e9f9d996001600160401b03906114ec60206114ae6115119d9c610180808952880190610b14565b9b6114cf828801825163ffffffff6020809260ff8151168552015116910152565b0151805160ff1660608701526020015163ffffffff166080860152565b169101521660c08c015263ffffffff1660e08b0152565b8882036101008a0152610b14565b90868203610120880152610b14565b90848203610140860152610b14565b91610160818403910152610b14565b90565b346102ae57600080600319360112611686576040519080826006549161156683611146565b928383526020946001918660018216918260001461166457505060011461160a575b5050611596925003836101eb565b604051906115a382610182565b6115ab611421565b82526115b5611447565b90820152610b7f60095463ffffffff6115cc611180565b6115d4611244565b906115dd6112e3565b926115e6611382565b946040519889986001600160401b03848460601c16948460401c169316918a61146e565b90859250600682527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f5b85831061164c57505061159693508201013880611588565b80548389018501528794508693909201918101611634565b925093505061159694915060ff191682840152151560051b8201013880611588565b80fd5b61169336336130c3565b60608181015160005463ffffffff9182169116808203611b1257505060105480611ade575060c082016116c681516131de565b80611aa957506116d76002546131f2565b90525b6116e382613208565b9282518051611a78575b506000936003548015801590611a69575b611a3c575b61171261012086015151611b38565b926000965b6101208701518051891015611921578861173091611b92565b51600261174c611746611746845160ff90511690565b60ff1690565b0361190857602060036117686117466117468486015160ff1690565b036118ac576014818351015151036118ac57604082015160418151036118ef576000829182810151908b6040820151910151831a90601b82106118da575b604080518c815260ff9093166020840152820192909252606081019190915280608081015b838052039060015afa156118d557600051915101516020015160601c6001600160a01b03908282161590829082156118c5575b50506118ac57899060005b82811061184c5750509161183e826118396118449461182a6001978c611b92565b6001600160a01b039091169052565b613745565b90611bdf565b970196611717565b90809250831661187b61186f611862848c611b92565b516001600160a01b031690565b6001600160a01b031690565b1461188b57600101908a91611809565b60405163691ffb8960e11b81526001600160a01b0384166004820152602490fd5b60405163834019ad60e01b8152600481018b9052602490fd5b90915016818316141581386117fe565b611bd3565b906118e76117cb91611bbc565b9190506117a6565b60405163834019ad60e01b8152600481018c9052602490fd5b60405163834019ad60e01b8152600481018a9052602490fd5b509350955090939250808210611a1a575050906119ec6060836119647f92755d6396624ba7d332fd47df31ce92c55ea403dff51b832270c53ea4e38078956124da565b6119a76119a261199661199161197e6101008601516137b1565b61198b60e08701516137b1565b90612701565b61271a565b6001600160401b031690565b601055565b6119b084600f55565b6119e16119cb6119c68484015163ffffffff1690565b612732565b63ffffffff1663ffffffff196000541617600055565b015163ffffffff1690565b611a156010546040519384938460409194939263ffffffff606083019616825260208201520152565b0390a1565b604051631254a68960e21b815260048101919091526024810191909152604490fd5b6004546001600160a01b0390611a5390821661186f565b1661170357604051625bb93d60e71b8152600490fd5b506101208501515115156116fe565b611a81906131de565b8085146116ed57604051631d734b9160e01b8152600481018690526024810191909152604490fd5b9050600254808203611abc5750506116da565b604051631d734b9160e01b815260048101919091526024810191909152604490fd5b60095460401c63ffffffff1660405163172cc05360e31b815263ffffffff9190911660048201526024810191909152604490fd5b6040516307d3e83d60e51b815263ffffffff918216600482015291166024820152604490fd5b90611b428261035c565b611b4f60405191826101eb565b8281528092611b60601f199161035c565b0190602036910137565b634e487b7160e01b600052603260045260246000fd5b805115611b8d5760200190565b611b6a565b8051821015611b8d5760209160051b010190565b634e487b7160e01b600052601160045260246000fd5b60ff601b9116019060ff8211611bce57565b611ba6565b6040513d6000823e3d90fd5b91908201809211611bce57565b818110611bf7575050565b60008155600101611bec565b90601f8211611c10575050565b6102c991600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8906020601f840160051c83019310611c5a575b601f0160051c0190611bec565b9091508190611c4d565b90601f8211611c71575050565b6102c991600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611cc7575050565b6102c991600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c7906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611d1d575050565b6102c991600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5906020601f840160051c83019310611c5a57601f0160051c0190611bec565b90601f8211611d73575050565b6102c99160066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f906020601f840160051c83019310611c5a57601f0160051c0190611bec565b9190601f8111611dcb57505050565b6102c9926000526020600020906020601f840160051c83019310611c5a57601f0160051c0190611bec565b9081516001600160401b03811161019d57611e1b81611e16600a54611146565b611c03565b602080601f8311600114611e5e57508190611e4e9394600092611e53575b50508160011b916000199060031b1c19161790565b600a55565b015190503880611e39565b90601f19831694611e91600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a890565b926000905b878210611ece575050836001959610611eb5575b505050811b01600a55565b015160001960f88460031b161c19169055388080611eaa565b80600185968294968601518155019501930190611e96565b9081516001600160401b03811161019d57611f0b81611f06600b54611146565b611c64565b602080601f8311600114611f4257508190611f3d9394600092611e535750508160011b916000199060031b1c19161790565b600b55565b90601f19831694611f75600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db990565b926000905b878210611fb2575050836001959610611f99575b505050811b01600b55565b015160001960f88460031b161c19169055388080611f8e565b80600185968294968601518155019501930190611f7a565b9081516001600160401b03811161019d57611fef81611fea600c54611146565b611cba565b602080601f8311600114612026575081906120219394600092611e535750508160011b916000199060031b1c19161790565b600c55565b90601f19831694612059600c6000527fdf6966c971051c3d54ec59162606531493a51404a002842f56009d7e5cf4a8c790565b926000905b87821061209657505083600195961061207d575b505050811b01600c55565b015160001960f88460031b161c19169055388080612072565b8060018596829496860151815501950193019061205e565b9081516001600160401b03811161019d576120d3816120ce600d54611146565b611d10565b602080601f831160011461210a575081906121059394600092611e535750508160011b916000199060031b1c19161790565b600d55565b90601f1983169461213d600d6000527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb590565b926000905b87821061217a575050836001959610612161575b505050811b01600d55565b015160001960f88460031b161c19169055388080612156565b80600185968294968601518155019501930190612142565b91909182516001600160401b03811161019d576121b9816121b38454611146565b84611dbc565b602080601f83116001146121f0575081906121ec939495600092611e535750508160011b916000199060031b1c19161790565b9055565b90601f1983169561220685600052602060002090565b926000905b8882106122435750508360019596971061222a575b505050811b019055565b015160001960f88460031b161c19169055388080612220565b8060018596829496860151815501950193019061220b565b6122658154611146565b908161226f575050565b81601f60009311600114612281575055565b9080839182526122a0601f60208420940160051c840160018501611bec565b5555565b9080516122bf60ff825116849060ff1660ff19825416179055565b6001808401916020809101518051926001600160401b03841161019d576122f0846122ea8754611146565b87611dbc565b602092601f851160011461235d5750509261232d836040946102c9989794600397600092611e535750508160011b916000199060031b1c19161790565b90555b612354612341602083015160ff1690565b600286019060ff1660ff19825416179055565b01519101612192565b929190601f1985169061237587600052602060002090565b946000915b8383106123c157505050936102c99796936003969360019383604098106123a9575b505050811b019055612330565b015160001983891b60f8161c1916905538808061239c565b84860151875595860195948101949181019161237a565b805190600160401b821161019d57600e5482600e55808310612451575b50600e6000526020908101907fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd6000925b848410612434575050505050565b6004838261244560019451866122a4565b01920193019290612426565b60026001600160fe1b038281168303611bce5784168403611bce57600090600e6000527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd9260021b8301928560021b015b8381106124b1575050506123f5565b8083600492556124c36001820161225b565b83838201556124d46003820161225b565b016124a2565b80518051906001600160401b03821161019d57612501826124fc600654611146565b611d66565b602090816001601f851114612672575082610120936102c9959361253b93600092611e535750508160011b916000199060031b1c19161790565b6006555b61259560208201516020908181519160ff8351166007549064ffffffff00958695015164ffffffffff1996879160081b169216171760075501519160ff83511691602060085494015160081b1692161717600855565b6125c86125ac60408301516001600160401b031690565b6001600160401b03166001600160401b03196009541617600955565b6125fd6125dc606083015163ffffffff1690565b63ffffffff60401b6009549160401b169063ffffffff60401b191617600955565b612636612611608083015163ffffffff1690565b6009805463ffffffff60601b191660609290921b63ffffffff60601b16919091179055565b61264360a0820151611df6565b61265060c0820151611ee6565b61265d60e0820151611fca565b61266b6101008201516120ae565b01516123d8565b60066000529190601f1984167ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f936000905b8282106126e9575050926001928592610120966102c99896106126d0575b505050811b0160065561253f565b015160001960f88460031b161c191690553880806126c2565b806001869782949787015181550196019401906126a4565b6001600160401b039182169082160391908211611bce57565b9060016001600160401b0380931601918211611bce57565b90600163ffffffff80931601918211611bce57565b9061275236336130c3565b601054825190818110612ca557505061276b8251611b38565b6001908160015460009073__$b91d2ad766fd07dc99f56c1a0b020615bb$__925b6129b5575b5050506127a461279f611180565b6131de565b73__$398d4f030862acab53d338aebf0b4256d7$__91823b156102ae576127e89260009260409660405195869485938493633723f9ef60e21b855260048501612f4a565b03915af480156118d55761299c575b5060095460401c63ffffffff16917f2cae74b52637f741120c3765ff52d7cc2c0d635ecd2dfe33e3d51d77542d105d6020938461283387611b80565b515101519061285f8661284f6128498a51612fdb565b8a611b92565b5151015160405193849384612ff7565b0390a16000825b61290c575b5050508161289d6128986119a29361288f6128896128a69751612fdb565b85611b92565b515101516131de565b600155565b51601054612fea565b601054156128b057565b7fe784b22f2061de501b77364cab02ee109528afe4ddc8d423d076f6b49021b58e6128fe6128e760095463ffffffff9060401c1690565b60405163ffffffff90911681529081906020820190565b0390a16102c9600f54600255565b84518110156129975790828261292c612926839589611b92565b516139cf565b7f92a2f43bb4dec6ecbf6961abb1cfddfdb3469fce3826df9af188c3d4f44ec97b86612958838a611b92565b5151015161297d888061296b868d611b92565b5101510151516001600160401b031690565b9061298c865192839283613028565b0390a1019091612866565b61286b565b806129a96129af926101bd565b806106bc565b386127f7565b8651821015612ca057604090806129d08361288f868c611b92565b03612c6c5750602090816129e4848a611b92565b510151815163765809ab60e11b8152838180612a04600495868301612cfb565b0381895af49081156118d557600091612c4f575b5083858b60a080612a298484611b92565b5151015151612c0e57612a6792612a719492612a5f92612a4b612a8b986131f2565b90612a568484611b92565b51510152611b92565b510151613859565b5163ffffffff1690565b6080612a7d878d611b92565b5151019063ffffffff169052565b612ab36000612a9a868c611b92565b515184518093819262409a0960e81b8352868301612e49565b0381895af49081156118d557600091612bed575b508984612ad48783611b92565b5151015151612b93579184939184612af188612b19999896611b92565b51510152612aff858c611b92565b5151915163b93612a760e01b815295869283928301612e49565b0381875af49081156118d557612b3c612b57928895600091612b76575b506131f2565b60e0612b48858c611b92565b515101525b61288f838a611b92565b612b618286611b92565b5281612b6d8286611b92565b5191019161278c565b612b8d9150833d85116108655761085681836101eb565b38612b36565b612ba1868692959395611b92565b5151015184815191012083518585012003612bc45750505090612b578592612b4d565b6107fe9084612bd3878d611b92565b515101519051630ca2e06d60e11b81529384938401612cc7565b612c08913d8091833e612c0081836101eb565b810190612da7565b38612ac7565b91612c1d935061288f91611b92565b818103612c2b575050612a8b565b9251631d97afef60e31b815291820190815260208101929092529081906040010390fd5b612c669150843d86116108655761085681836101eb565b38612a18565b6107fe82612c8485612c7e8c956131f2565b94611b92565b515101519251635d90b51d60e01b815292839260048401612cc7565b612791565b604051630daf4bc160e01b815260048101919091526024810191909152604490fd5b9091612cde61153e93604084526040840190610b14565b916020818403910152610b14565b908160209103126102ae575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b868510612d505750505050505050505090565b909192939495969799988680612d92600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a8201520190610b14565b9b9c9a01989796919091019401929190612d3d565b6020818303126102ae578051906001600160401b0382116102ae570181601f820112156102ae578051612dd98161024c565b92612de760405194856101eb565b818452602082840101116102ae5761153e9160208085019101610af1565b90604060206102c993612e2c84825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b9061153e9160208152612e60602082018351612e05565b602082015190612e7e6101a0928360a08401526101c0830190610b14565b9160e0612ef2612ea0604087015195601f1996878783030160c0880152610b14565b612ecc60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a08701518686830301610160870152610b14565b60c08601516001600160401b03166101808501529401519282850301910152610b14565b90815180825260208080930193019160005b828110612f36575050505090565b835185529381019392810192600101612f28565b9392909160808552612f6883516060608088015260e0870190612f16565b602080850151878303607f190160a089015280518084529282019591929083019060005b818110612fc45750505092612fbc926102c995926040606096015160c08a01528801528682036040880152612f16565b930160029052565b825160ff1688529684019691840191600101612f8c565b600019810191908211611bce57565b91908203918211611bce57565b9161301a9063ffffffff61153e9593168452606060208501526060840190610b14565b916040818403910152610b14565b906001600160401b03613048602092959495604085526040850190610b14565b9416910152565b6004116102ae57600090600490565b6001600160e01b0319903581811693926004811061307b57505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b60008051602061454083398151915280546130fc906001600160a01b03166130f36130ed8661304f565b9061305e565b90843091613b4c565b9015613109575b50505050565b63ffffffff16156131be57600080516020614540833981519152805460ff60a01b1916600160a01b17905561314c9061186f9081905b546001600160a01b031690565b91823b156102ae576131789260009283604051809681958294634a63ebf760e11b84526004840161308a565b03925af180156118d5576131ab575b50600080516020614540833981519152805460ff60a01b1916905538808080613103565b806129a96131b8926101bd565b38613187565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b8051156131ec576020015190565b50600090565b6040519060208201526020815261153e81610182565b8051906101208101928351936040908151613222816101d0565b6000815284528151613233816101d0565b600081528152613241610ade565b9261324a613cc2565b948351809660209687830161325e91613842565b61326791613842565b0395601f1996878101825261327c90826101eb565b815161328790613f72565b90855191829188830161329991613842565b6132a291613842565b0387810182526132b290826101eb565b6132ba613caf565b9085519182918883016132cc91613842565b6132d591613842565b0387810182526132e590826101eb565b858201516132f290613fc2565b908151613305906001600160401b031690565b61330e90613dec565b90865191829189830161332091613842565b61332991613842565b03888101825261333990826101eb565b855191829188830161334a91613842565b61335391613842565b03878101825261336390826101eb565b61336b613cd5565b90855191829188830161337d91613842565b61338691613842565b03878101825261339690826101eb565b818501516001600160401b03166133ac90613dec565b9085519182918883016133be91613842565b6133c791613842565b0387810182526133d790826101eb565b6133df613ce8565b9085519182918883016133f191613842565b6133fa91613842565b03878101825261340a90826101eb565b606082015161341e9063ffffffff16613dec565b90855191829188830161343091613842565b61343991613842565b03878101825261344990826101eb565b613451613cfb565b90855191829188830161346391613842565b61346c91613842565b03878101825261347c90826101eb565b60808201516134909063ffffffff16613dec565b9085519182918883016134a291613842565b6134ab91613842565b0387810182526134bb90826101eb565b6134c3613d0e565b9085519182918883016134d591613842565b6134de91613842565b0387810182526134ee90826101eb565b60a08201516134fc90613f72565b90855191829188830161350e91613842565b61351791613842565b03878101825261352790826101eb565b61352f613d21565b90855191829188830161354191613842565b61354a91613842565b03878101825261355a90826101eb565b60c082015161356890613f72565b90855191829188830161357a91613842565b61358391613842565b03878101825261359390826101eb565b61359b613d67565b9085519182918883016135ad91613842565b6135b691613842565b0387810182526135c690826101eb565b60e08201516135d490613f72565b9085519182918883016135e691613842565b6135ef91613842565b0387810182526135ff90826101eb565b613607613d86565b90855191829188830161361991613842565b61362291613842565b03878101825261363290826101eb565b61010082015161364190613f72565b90855191829188830161365391613842565b61365c91613842565b03878101825261366c90826101eb565b976000985b8451518a1015613730576136ba6137286136ba61371c8961370e8f8d8f916136d86136d28f92613702936136cc60019e6136c06136ac613da5565b8c519e8f938b850190613842565b90613842565b038881018d528c6101eb565b51611b92565b51614131565b946136ba6136f56136f088516001600160401b031690565b613dec565b9151988994850190613842565b039081018552846101eb565b8a519485938d850190613842565b038a81018352826101eb565b990198613671565b93959298509550959250815191012093525290565b602060018060a01b0360248160045416936040519485938492632e52a97360e11b84521660048301525afa9081156118d557600091613782575090565b90506020813d6020116137a9575b8161379d602093836101eb565b810103126102ae575190565b3d9150613790565b6137ba906131de565b60c01c90565b60008051602061454083398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b61383a90613825613c35565b61382d613c35565b613835613c35565b6137c0565b6102c9613c35565b9061385560209282815194859201610af1565b0190565b61388c91613865610ade565b9061386e613c98565b6136ba6138db6040926040519788916136ba60209889850190613842565b03966138a0601f19988981018352826101eb565b6138cf6138c06136f06138b78a5163ffffffff1690565b63ffffffff1690565b60405194859389850190613842565b038781018352826101eb565b916000925b84860180515185101561397a576136ba6139706136ba61371c89956139628d61393c6139368d60019a6136cc8f61392a8f916136ba61391d613caf565b91519b8c94850190613842565b038681018952886101eb565b51613e6d565b926137026139546136f086516001600160401b031690565b8d519788938d850190613842565b885194859388850190613842565b94019390506138e0565b5095509350505050565b9193926001600160401b039061ffff6139a7604094606087526060870190610b14565b9616602085015216910152565b60409061ffff61153e94931681528160208201520190610b14565b9060005b602090818085015101518051821015613b4557816139f091611b92565b51805161ffff1690613a1661186f61313f8461ffff166000526005602052604060002090565b6001600160a01b038116929091908315613b275761dead8414613ad75760408092015192803b156102ae578251633bbe5e5b60e21b8152936000918591829084908290613a679088600484016139b4565b03925af180156118d5576001967f6615e715ef29da98af4d4b50f6beb57ec1a6a61bb207b117e5fb58632755e93794613aba92613ac4575b508951015192519283926001600160401b0388169184613984565b0390a25b016139d3565b806129a9613ad1926101bd565b38613a9f565b9150507f06a84e8c796b3ecc778e5832b8ba6869cc1bf4822409bfd7f852021f87256d0c91506001938651015190613b1f6040519283926001600160401b0387169184613984565b0390a1613abe565b6040516333342afb60e01b815261ffff919091166004820152602490fd5b5050509050565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761019d57604093859385528380528360205251915afa613bc95750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215613c19575b50506108c557565b6000805160206145608339815191525416141590503880613c11565b60ff6000805160206145808339815191525460401c1615613c5257565b604051631afcd79f60e31b8152600490fd5b60405190613c7182610182565b6001825260203681840137565b60405190613c8b82610182565b600a825260203681840137565b613ca0613c64565b6008613cab82611b80565b5390565b613cb7613c64565b6012613cab82611b80565b613cca613c64565b600a613cab82611b80565b613cdd613c64565b6028613cab82611b80565b613cf0613c64565b6030613cab82611b80565b613d03613c64565b6038613cab82611b80565b613d16613c64565b607a613cab82611b80565b613d29613c7e565b60a260005b607f80831115613d535790608060019284161760208286010153019060071c90613d2e565b50607f600192166020828501015301815290565b613d6f613c7e565b60f260016000826020850153019060071c90613d2e565b613d8e613c7e565b60fa60016000826020850153019060071c90613d2e565b613dad613c7e565b6101926001600060926020850153019060071c90613d2e565b613dce613c64565b6010613cab82611b80565b613de1613c64565b601a613cab82611b80565b9060809160806001600160401b03821610613e4857613e09613c7e565b60005b607f80841115613e3057908560019285161760208285010153019160071c91613e0c565b5090929350607f600192166020828501015301815290565b909150613e53613c64565b9060f81b6001600160f81b03191660001a613cab82611b80565b61153e613eae6136ba92613f66613f526136ba613f59613e8b610ade565b94613e94613c98565b9060409485928351998a916136ba60209b8c850190613842565b0398613ec2601f199a8b81018352826101eb565b613f0189613ef5613ee56136f0613ede613ede895161ffff1690565b61ffff1690565b6136ba8851958694850190613842565b038b81018352826101eb565b613f1089613ef5613ee5613dc6565b613f2d89613ef5613ee56136f06138b78489015163ffffffff1690565b613f46613f38613dd9565b85519d8e938c850190613842565b038981018c528b6101eb565b0151613f72565b9151968794850190613842565b039081018352826101eb565b61153e6020613f8a6001600160401b03845116613dec565b6040519381613fa28693518092868087019101610af1565b8201613fb682518093868085019101610af1565b010380845201826101eb565b613fca610ade565b90613fd3613cc2565b6040805193846020938492838301613fea91613842565b613ff391613842565b0393601f1994858101875261400890876101eb565b805161401390614356565b958651614026906001600160401b031690565b61402f90613dec565b90845191829185830161404191613842565b61404a91613842565b03868101825261405a90826101eb565b835196879184830161406b91613842565b61407491613842565b03858101875261408490876101eb565b61408c613caf565b95835196879184830161409e91613842565b6140a791613842565b0385810187526140b790876101eb565b01516140c290614356565b9081516140d5906001600160401b031690565b6140de90613dec565b9481519586918583016140f091613842565b6140f991613842565b03848101865261410990866101eb565b51938492830161411891613842565b61412191613842565b03908101825261153e90826101eb565b614139610ade565b90614142613cc2565b916040808051809560209485830161415991613842565b61416291613842565b0393601f1994858101875261417790876101eb565b8051614182906143fd565b958651614195906001600160401b031690565b61419e90613dec565b9083519182918783016141b091613842565b6141b991613842565b0386810182526141c990826101eb565b82519687918683016141da91613842565b6141e391613842565b0385810187526141f390876101eb565b6141fb613dc6565b95825196879186830161420d91613842565b61421691613842565b03858101875261422690876101eb565b838101516142369060ff16613dec565b95825196879186830161424891613842565b61425191613842565b03858101875261426190876101eb565b614269613dd9565b95825196879186830161427b91613842565b61428491613842565b03858101875261429490876101eb565b015161429f90613f72565b9051938492830161411891613842565b90813b156143355760008051602061456083398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a280511561431a576143179161449a565b50565b50503461432357565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b61153e6136ba6136ba613f666143ed6136f06138b760206136ba986119e16136ba6143c7614382610ade565b61439c61438d613c98565b6040519d8e9389850190613842565b039a6143b0601f199c8d81018352826101eb565b613ef56138c06136f0611746611746895160ff1690565b6143e16143d2613dc6565b6040519a8b9387850190613842565b038981018952886101eb565b6040519586936020850190613842565b61153e6136ba6136ba613f666143ed60206136ba96613f526136ba614474614423610ade565b61443d61442e613c98565b6040519b8c9389850190613842565b0398614451601f199a8b81018352826101eb565b6144686138c06136f0611746611746895160ff1690565b038981018352826101eb565b61448e61447f613caf565b60405198899387850190613842565b038781018752866101eb565b60008061153e93602081519101845af43d156144d8573d916144bb8361024c565b926144c960405194856101eb565b83523d6000602085013e6144dc565b6060915b9061450357508051156144f157602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614536575b614514575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561450c56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212208753cb1f63906494a52fddfb6c239f63e3a761e1255c0dc2b892df08f3e85d3864736f6c63430008190033",
1262
+ "linkReferences": {
1263
+ "contracts/common/sysio_merkle.sol": {
1264
+ "sysio_merkle": [
1265
+ {
1266
+ "length": 20,
1267
+ "start": 10213
1268
+ }
1269
+ ]
1270
+ },
1271
+ "contracts/outpost/OPPCommon.sol": {
1272
+ "OPPCommon": [
1273
+ {
1274
+ "length": 20,
1275
+ "start": 10166
1276
+ }
1277
+ ]
1278
+ }
1279
+ },
1280
+ "deployedLinkReferences": {
1281
+ "contracts/common/sysio_merkle.sol": {
1282
+ "sysio_merkle": [
1283
+ {
1284
+ "length": 20,
1285
+ "start": 10150
1286
+ }
1287
+ ]
1288
+ },
1289
+ "contracts/outpost/OPPCommon.sol": {
1290
+ "OPPCommon": [
1291
+ {
1292
+ "length": 20,
1293
+ "start": 10103
1294
+ }
1295
+ ]
1296
+ }
1297
+ }
1298
+ }