@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,1098 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "OPP",
4
+ "sourceName": "contracts/outpost/OPP.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": "address",
385
+ "name": "authority",
386
+ "type": "address"
387
+ }
388
+ ],
389
+ "name": "AuthorityUpdated",
390
+ "type": "event"
391
+ },
392
+ {
393
+ "anonymous": false,
394
+ "inputs": [
395
+ {
396
+ "indexed": false,
397
+ "internalType": "uint64",
398
+ "name": "version",
399
+ "type": "uint64"
400
+ }
401
+ ],
402
+ "name": "Initialized",
403
+ "type": "event"
404
+ },
405
+ {
406
+ "anonymous": false,
407
+ "inputs": [
408
+ {
409
+ "indexed": false,
410
+ "internalType": "bytes",
411
+ "name": "data",
412
+ "type": "bytes"
413
+ }
414
+ ],
415
+ "name": "OPPEpoch",
416
+ "type": "event"
417
+ },
418
+ {
419
+ "anonymous": false,
420
+ "inputs": [
421
+ {
422
+ "indexed": false,
423
+ "internalType": "bytes",
424
+ "name": "data",
425
+ "type": "bytes"
426
+ }
427
+ ],
428
+ "name": "OPPMessage",
429
+ "type": "event"
430
+ },
431
+ {
432
+ "anonymous": false,
433
+ "inputs": [
434
+ {
435
+ "indexed": true,
436
+ "internalType": "address",
437
+ "name": "implementation",
438
+ "type": "address"
439
+ }
440
+ ],
441
+ "name": "Upgraded",
442
+ "type": "event"
443
+ },
444
+ {
445
+ "inputs": [],
446
+ "name": "MESSAGE_EPOCH_MAX_ATTESTATIONS",
447
+ "outputs": [
448
+ {
449
+ "internalType": "uint256",
450
+ "name": "",
451
+ "type": "uint256"
452
+ }
453
+ ],
454
+ "stateMutability": "view",
455
+ "type": "function"
456
+ },
457
+ {
458
+ "inputs": [],
459
+ "name": "MESSAGE_EPOCH_SECS",
460
+ "outputs": [
461
+ {
462
+ "internalType": "uint256",
463
+ "name": "",
464
+ "type": "uint256"
465
+ }
466
+ ],
467
+ "stateMutability": "view",
468
+ "type": "function"
469
+ },
470
+ {
471
+ "inputs": [],
472
+ "name": "UPGRADE_INTERFACE_VERSION",
473
+ "outputs": [
474
+ {
475
+ "internalType": "string",
476
+ "name": "",
477
+ "type": "string"
478
+ }
479
+ ],
480
+ "stateMutability": "view",
481
+ "type": "function"
482
+ },
483
+ {
484
+ "inputs": [],
485
+ "name": "WIRE_NETWORK_ID",
486
+ "outputs": [
487
+ {
488
+ "internalType": "uint32",
489
+ "name": "",
490
+ "type": "uint32"
491
+ }
492
+ ],
493
+ "stateMutability": "view",
494
+ "type": "function"
495
+ },
496
+ {
497
+ "inputs": [
498
+ {
499
+ "internalType": "AttestationType",
500
+ "name": "attestationType",
501
+ "type": "uint16"
502
+ },
503
+ {
504
+ "internalType": "bytes",
505
+ "name": "data",
506
+ "type": "bytes"
507
+ }
508
+ ],
509
+ "name": "addAttestation",
510
+ "outputs": [],
511
+ "stateMutability": "nonpayable",
512
+ "type": "function"
513
+ },
514
+ {
515
+ "inputs": [
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "",
519
+ "type": "uint256"
520
+ }
521
+ ],
522
+ "name": "allAuthorizedSenders",
523
+ "outputs": [
524
+ {
525
+ "internalType": "address",
526
+ "name": "",
527
+ "type": "address"
528
+ }
529
+ ],
530
+ "stateMutability": "view",
531
+ "type": "function"
532
+ },
533
+ {
534
+ "inputs": [],
535
+ "name": "authority",
536
+ "outputs": [
537
+ {
538
+ "internalType": "address",
539
+ "name": "",
540
+ "type": "address"
541
+ }
542
+ ],
543
+ "stateMutability": "view",
544
+ "type": "function"
545
+ },
546
+ {
547
+ "inputs": [
548
+ {
549
+ "internalType": "bytes32",
550
+ "name": "",
551
+ "type": "bytes32"
552
+ }
553
+ ],
554
+ "name": "authorizedSenders",
555
+ "outputs": [
556
+ {
557
+ "internalType": "bool",
558
+ "name": "",
559
+ "type": "bool"
560
+ }
561
+ ],
562
+ "stateMutability": "view",
563
+ "type": "function"
564
+ },
565
+ {
566
+ "inputs": [],
567
+ "name": "canFinalizeEpoch",
568
+ "outputs": [
569
+ {
570
+ "internalType": "bool",
571
+ "name": "",
572
+ "type": "bool"
573
+ }
574
+ ],
575
+ "stateMutability": "view",
576
+ "type": "function"
577
+ },
578
+ {
579
+ "inputs": [
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "tag",
583
+ "type": "uint256"
584
+ }
585
+ ],
586
+ "name": "enterSendMode",
587
+ "outputs": [],
588
+ "stateMutability": "nonpayable",
589
+ "type": "function"
590
+ },
591
+ {
592
+ "inputs": [],
593
+ "name": "epochIndex",
594
+ "outputs": [
595
+ {
596
+ "internalType": "uint32",
597
+ "name": "",
598
+ "type": "uint32"
599
+ }
600
+ ],
601
+ "stateMutability": "view",
602
+ "type": "function"
603
+ },
604
+ {
605
+ "inputs": [
606
+ {
607
+ "internalType": "uint256",
608
+ "name": "tag",
609
+ "type": "uint256"
610
+ }
611
+ ],
612
+ "name": "exitSendMode",
613
+ "outputs": [],
614
+ "stateMutability": "nonpayable",
615
+ "type": "function"
616
+ },
617
+ {
618
+ "inputs": [],
619
+ "name": "finalizeEpoch",
620
+ "outputs": [],
621
+ "stateMutability": "nonpayable",
622
+ "type": "function"
623
+ },
624
+ {
625
+ "inputs": [],
626
+ "name": "inSendMode",
627
+ "outputs": [
628
+ {
629
+ "internalType": "bool",
630
+ "name": "",
631
+ "type": "bool"
632
+ }
633
+ ],
634
+ "stateMutability": "view",
635
+ "type": "function"
636
+ },
637
+ {
638
+ "inputs": [
639
+ {
640
+ "internalType": "address",
641
+ "name": "_authority",
642
+ "type": "address"
643
+ },
644
+ {
645
+ "internalType": "uint256",
646
+ "name": "messageEpochSecs",
647
+ "type": "uint256"
648
+ }
649
+ ],
650
+ "name": "initialize",
651
+ "outputs": [],
652
+ "stateMutability": "nonpayable",
653
+ "type": "function"
654
+ },
655
+ {
656
+ "inputs": [],
657
+ "name": "isConsumingScheduledOp",
658
+ "outputs": [
659
+ {
660
+ "internalType": "bytes4",
661
+ "name": "",
662
+ "type": "bytes4"
663
+ }
664
+ ],
665
+ "stateMutability": "view",
666
+ "type": "function"
667
+ },
668
+ {
669
+ "inputs": [],
670
+ "name": "lastMessageID",
671
+ "outputs": [
672
+ {
673
+ "internalType": "bytes32",
674
+ "name": "",
675
+ "type": "bytes32"
676
+ }
677
+ ],
678
+ "stateMutability": "view",
679
+ "type": "function"
680
+ },
681
+ {
682
+ "inputs": [],
683
+ "name": "lastMessageTimestamp",
684
+ "outputs": [
685
+ {
686
+ "internalType": "uint64",
687
+ "name": "",
688
+ "type": "uint64"
689
+ }
690
+ ],
691
+ "stateMutability": "view",
692
+ "type": "function"
693
+ },
694
+ {
695
+ "inputs": [],
696
+ "name": "pendingAttestationCount",
697
+ "outputs": [
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "",
701
+ "type": "uint256"
702
+ }
703
+ ],
704
+ "stateMutability": "view",
705
+ "type": "function"
706
+ },
707
+ {
708
+ "inputs": [],
709
+ "name": "prevEpochSent",
710
+ "outputs": [
711
+ {
712
+ "internalType": "bool",
713
+ "name": "",
714
+ "type": "bool"
715
+ }
716
+ ],
717
+ "stateMutability": "view",
718
+ "type": "function"
719
+ },
720
+ {
721
+ "inputs": [],
722
+ "name": "proxiableUUID",
723
+ "outputs": [
724
+ {
725
+ "internalType": "bytes32",
726
+ "name": "",
727
+ "type": "bytes32"
728
+ }
729
+ ],
730
+ "stateMutability": "view",
731
+ "type": "function"
732
+ },
733
+ {
734
+ "inputs": [],
735
+ "name": "sendModeTag",
736
+ "outputs": [
737
+ {
738
+ "internalType": "uint256",
739
+ "name": "",
740
+ "type": "uint256"
741
+ }
742
+ ],
743
+ "stateMutability": "view",
744
+ "type": "function"
745
+ },
746
+ {
747
+ "inputs": [
748
+ {
749
+ "components": [
750
+ {
751
+ "components": [
752
+ {
753
+ "components": [
754
+ {
755
+ "internalType": "ChainKind",
756
+ "name": "kind",
757
+ "type": "uint8"
758
+ },
759
+ {
760
+ "internalType": "uint32",
761
+ "name": "id",
762
+ "type": "uint32"
763
+ }
764
+ ],
765
+ "internalType": "struct ChainId",
766
+ "name": "start",
767
+ "type": "tuple"
768
+ },
769
+ {
770
+ "components": [
771
+ {
772
+ "internalType": "ChainKind",
773
+ "name": "kind",
774
+ "type": "uint8"
775
+ },
776
+ {
777
+ "internalType": "uint32",
778
+ "name": "id",
779
+ "type": "uint32"
780
+ }
781
+ ],
782
+ "internalType": "struct ChainId",
783
+ "name": "end",
784
+ "type": "tuple"
785
+ }
786
+ ],
787
+ "internalType": "struct Endpoints",
788
+ "name": "endpoints",
789
+ "type": "tuple"
790
+ },
791
+ {
792
+ "internalType": "bytes",
793
+ "name": "messageId",
794
+ "type": "bytes"
795
+ },
796
+ {
797
+ "internalType": "bytes",
798
+ "name": "previousMessageId",
799
+ "type": "bytes"
800
+ },
801
+ {
802
+ "components": [
803
+ {
804
+ "internalType": "Endianness",
805
+ "name": "endianness",
806
+ "type": "uint8"
807
+ },
808
+ {
809
+ "internalType": "HashAlgorithm",
810
+ "name": "hashAlgorithm",
811
+ "type": "uint8"
812
+ },
813
+ {
814
+ "internalType": "LengthEncoding",
815
+ "name": "lengthEncoding",
816
+ "type": "uint8"
817
+ }
818
+ ],
819
+ "internalType": "struct EncodingFlags",
820
+ "name": "encodingFlags",
821
+ "type": "tuple"
822
+ },
823
+ {
824
+ "internalType": "uint32",
825
+ "name": "payloadSize",
826
+ "type": "uint32"
827
+ },
828
+ {
829
+ "internalType": "bytes",
830
+ "name": "payloadChecksum",
831
+ "type": "bytes"
832
+ },
833
+ {
834
+ "internalType": "uint64",
835
+ "name": "timestamp",
836
+ "type": "uint64"
837
+ },
838
+ {
839
+ "internalType": "bytes",
840
+ "name": "headerChecksum",
841
+ "type": "bytes"
842
+ }
843
+ ],
844
+ "internalType": "struct MessageHeader",
845
+ "name": "header",
846
+ "type": "tuple"
847
+ },
848
+ {
849
+ "components": [
850
+ {
851
+ "internalType": "uint32",
852
+ "name": "version",
853
+ "type": "uint32"
854
+ },
855
+ {
856
+ "components": [
857
+ {
858
+ "internalType": "AttestationType",
859
+ "name": "type_",
860
+ "type": "uint16"
861
+ },
862
+ {
863
+ "internalType": "uint32",
864
+ "name": "dataSize",
865
+ "type": "uint32"
866
+ },
867
+ {
868
+ "internalType": "bytes",
869
+ "name": "data",
870
+ "type": "bytes"
871
+ }
872
+ ],
873
+ "internalType": "struct AttestationEntry[]",
874
+ "name": "attestations",
875
+ "type": "tuple[]"
876
+ }
877
+ ],
878
+ "internalType": "struct MessagePayload",
879
+ "name": "payload",
880
+ "type": "tuple"
881
+ }
882
+ ],
883
+ "name": "serializeMessage",
884
+ "outputs": [
885
+ {
886
+ "components": [
887
+ {
888
+ "components": [
889
+ {
890
+ "components": [
891
+ {
892
+ "internalType": "ChainKind",
893
+ "name": "kind",
894
+ "type": "uint8"
895
+ },
896
+ {
897
+ "internalType": "uint32",
898
+ "name": "id",
899
+ "type": "uint32"
900
+ }
901
+ ],
902
+ "internalType": "struct ChainId",
903
+ "name": "start",
904
+ "type": "tuple"
905
+ },
906
+ {
907
+ "components": [
908
+ {
909
+ "internalType": "ChainKind",
910
+ "name": "kind",
911
+ "type": "uint8"
912
+ },
913
+ {
914
+ "internalType": "uint32",
915
+ "name": "id",
916
+ "type": "uint32"
917
+ }
918
+ ],
919
+ "internalType": "struct ChainId",
920
+ "name": "end",
921
+ "type": "tuple"
922
+ }
923
+ ],
924
+ "internalType": "struct Endpoints",
925
+ "name": "endpoints",
926
+ "type": "tuple"
927
+ },
928
+ {
929
+ "internalType": "bytes",
930
+ "name": "messageId",
931
+ "type": "bytes"
932
+ },
933
+ {
934
+ "internalType": "bytes",
935
+ "name": "previousMessageId",
936
+ "type": "bytes"
937
+ },
938
+ {
939
+ "components": [
940
+ {
941
+ "internalType": "Endianness",
942
+ "name": "endianness",
943
+ "type": "uint8"
944
+ },
945
+ {
946
+ "internalType": "HashAlgorithm",
947
+ "name": "hashAlgorithm",
948
+ "type": "uint8"
949
+ },
950
+ {
951
+ "internalType": "LengthEncoding",
952
+ "name": "lengthEncoding",
953
+ "type": "uint8"
954
+ }
955
+ ],
956
+ "internalType": "struct EncodingFlags",
957
+ "name": "encodingFlags",
958
+ "type": "tuple"
959
+ },
960
+ {
961
+ "internalType": "uint32",
962
+ "name": "payloadSize",
963
+ "type": "uint32"
964
+ },
965
+ {
966
+ "internalType": "bytes",
967
+ "name": "payloadChecksum",
968
+ "type": "bytes"
969
+ },
970
+ {
971
+ "internalType": "uint64",
972
+ "name": "timestamp",
973
+ "type": "uint64"
974
+ },
975
+ {
976
+ "internalType": "bytes",
977
+ "name": "headerChecksum",
978
+ "type": "bytes"
979
+ }
980
+ ],
981
+ "internalType": "struct MessageHeader",
982
+ "name": "",
983
+ "type": "tuple"
984
+ }
985
+ ],
986
+ "stateMutability": "pure",
987
+ "type": "function"
988
+ },
989
+ {
990
+ "inputs": [
991
+ {
992
+ "internalType": "address",
993
+ "name": "newAuthority",
994
+ "type": "address"
995
+ }
996
+ ],
997
+ "name": "setAuthority",
998
+ "outputs": [],
999
+ "stateMutability": "nonpayable",
1000
+ "type": "function"
1001
+ },
1002
+ {
1003
+ "inputs": [
1004
+ {
1005
+ "internalType": "uint256",
1006
+ "name": "maxAttestations",
1007
+ "type": "uint256"
1008
+ }
1009
+ ],
1010
+ "name": "setMessageEpochMaxAttestations",
1011
+ "outputs": [],
1012
+ "stateMutability": "nonpayable",
1013
+ "type": "function"
1014
+ },
1015
+ {
1016
+ "inputs": [
1017
+ {
1018
+ "internalType": "uint256",
1019
+ "name": "secs",
1020
+ "type": "uint256"
1021
+ }
1022
+ ],
1023
+ "name": "setMessageEpochSecs",
1024
+ "outputs": [],
1025
+ "stateMutability": "nonpayable",
1026
+ "type": "function"
1027
+ },
1028
+ {
1029
+ "inputs": [
1030
+ {
1031
+ "internalType": "uint256",
1032
+ "name": "adjustment",
1033
+ "type": "uint256"
1034
+ }
1035
+ ],
1036
+ "name": "testAdvanceEpochClock",
1037
+ "outputs": [],
1038
+ "stateMutability": "nonpayable",
1039
+ "type": "function"
1040
+ },
1041
+ {
1042
+ "inputs": [
1043
+ {
1044
+ "internalType": "address",
1045
+ "name": "newImplementation",
1046
+ "type": "address"
1047
+ },
1048
+ {
1049
+ "internalType": "bytes",
1050
+ "name": "data",
1051
+ "type": "bytes"
1052
+ }
1053
+ ],
1054
+ "name": "upgradeToAndCall",
1055
+ "outputs": [],
1056
+ "stateMutability": "payable",
1057
+ "type": "function"
1058
+ }
1059
+ ],
1060
+ "bytecode": "0x60a0806040523460295730608052614163908161002f8239608051818181610a6a0152612cd90152f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c806306c106f9146101d75780631e1afc48146101d2578063264f195b146101cd57806327e935a1146101c857806347453a2a146101c35780634f1ef286146101be57806352d1902d146101b95780635fd689df146101b4578063621fbd59146101af57806373d335eb146101aa5780637a9e5e4b146101a557806382ae9ef7146101a05780638fb360371461019b5780639039e4951461019657806395fabcf0146101915780639b0715001461018c5780639f065a2514610187578063a9e50c1014610182578063ad3cb1cc1461017d578063bf7e214f14610178578063c94c93e714610173578063cd6dc6871461016e578063da55d96a14610169578063e0c14aa814610164578063e11418b71461015f578063e36f9a071461015a578063e44efb5a146101555763f5786b4b1461015057600080fd5b611094565b611074565b611056565b61100d565b610edf565b610ebc565b610d8b565b610d5a565b610d24565b610cde565b610ca4565b610c86565b610c68565b610c4a565b610c27565b610bd4565b610bbb565b610b40565b610b1b565b610afd565b610ac2565b610a57565b61094a565b6108d9565b61082a565b61080e565b6106d9565b6101ec565b60009103126101e757565b600080fd5b346101e75760003660031901126101e757602063ffffffff60095416604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761024157604052565b610210565b606081019081106001600160401b0382111761024157604052565b6001600160401b03811161024157604052565b602081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b6040519061010082018281106001600160401b0382111761024157604052565b604051906102dd82610246565b565b604051906102dd82610226565b60ff8116036101e757565b63ffffffff8116036101e757565b35906102dd826102f7565b91908260409103126101e75760405161032881610226565b60208082948035610338816102ec565b8452013591610346836102f7565b0152565b91906080838203126101e757602061037e6040519261036884610226565b604084966103768382610310565b865201610310565b910152565b6001600160401b03811161024157601f01601f191660200190565b81601f820112156101e7578035906103b582610383565b926103c3604051948561028f565b828452602083830101116101e757816000926020809301838601378301015290565b91908260609103126101e7576040516103fd81610246565b6040808294803561040d816102ec565b8452602081013561041d816102ec565b6020850152013591610346836102ec565b35906001600160401b03821682036101e757565b6001600160401b0381116102415760051b60200190565b6004359061ffff821682036101e757565b359061ffff821682036101e757565b91909160409081818503126101e757815161049381610226565b809482356104a0816102f7565b8252602092838101356001600160401b03918282116101e757019180601f840112156101e7578235906104d282610442565b966104df8151988961028f565b828852868089019360051b860101948286116101e757878101935b86851061050c57505050505050500152565b84358681116101e75782019060609081601f1984880301126101e75784519161053483610246565b61053f8c850161046a565b83528584013561054e816102f7565b8c840152830135918883116101e75761056e878d8096958196010161039e565b868201528152019401936104fa565b90604060206102dd936105a484825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b60005b8381106105d45750506000910152565b81810151838201526020016105c4565b906020916105fd815180928185528580860191016105c1565b601f01601f1916010190565b906106d6916020815261062060208201835161057d565b60208201519061063e6101a0928360a08401526101c08301906105e4565b9160e06106b2610660604087015195601f1996878783030160c08801526105e4565b61068c60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a087015186868303016101608701526105e4565b60c08601516001600160401b031661018085015294015192828503019101526105e4565b90565b346101e7576003196040368201126101e757600480356001600160401b03928382116101e7576101a09082360301126101e7576107146102b0565b906107213682850161034a565b825260848101358481116101e75761073e9084369184010161039e565b602083015260a48101358481116101e75761075e9084369184010161039e565b60408301526107703660c483016103e5565b60608301526107826101248201610305565b60808301526101448101358481116101e7576107a39084369184010161039e565b60a08301526107b5610164820161042e565b60c0830152610184810135908482116101e757836107d6923692010161039e565b60e08201526024359283116101e7576107f86107fe9261080a94369101610479565b906114a6565b60405191829182610609565b0390f35b346101e75760003660031901126101e757602060405160018152f35b346101e75760203660031901126101e7576004356108483633611b3c565b8015610862576004541561085857005b6004556000600355005b604051636ad43cc360e11b8152600490fd5b634e487b7160e01b600052603260045260246000fd5b6012548110156108af5760126000526000805160206140ae8339815191520190600090565b610874565b6011548110156108af5760116000526000805160206140ce8339815191520190600090565b346101e75760203660031901126101e7576004356006548110156101e75760066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01546040516001600160a01b039091168152602090f35b600435906001600160a01b03821682036101e757565b60403660031901126101e75761095e610934565b6024356001600160401b0381116101e75761097d90369060040161039e565b90610986612ccf565b6109903633611b3c565b610998612ccf565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa60009381610a26575b506109eb57604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206140ee8339815191528303610a0d57610a0b92506138c6565b005b604051632a87526960e21b815260048101849052602490fd5b610a4991945060203d602011610a50575b610a41818361028f565b81019061135c565b92386109c1565b503d610a37565b346101e75760003660031901126101e7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610ab05760206040516000805160206140ee8339815191528152f35b60405163703e46dd60e11b8152600490fd5b346101e75760203660031901126101e757600435610ae03633611b3c565b8015610aeb57600855005b604051630e7a0f8f60e11b8152600490fd5b346101e75760003660031901126101e7576020600054604051908152f35b346101e75760003660031901126101e7576020610b36611690565b6040519015158152f35b346101e75760203660031901126101e757610b59610934565b60008051602061408e833981519152546001600160a01b03919082163303610ba457803b15610b8b57610a0b90611c9e565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346101e75760003660031901126101e757610a0b61174a565b346101e75760003660031901126101e75760008051602061408e8339815191525460a01c60ff1615610c1e576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610c0b565b346101e75760203660031901126101e757610c423633611b3c565b600435600755005b346101e75760003660031901126101e7576020600354604051908152f35b346101e75760003660031901126101e7576020600754604051908152f35b346101e75760003660031901126101e7576020600854604051908152f35b346101e75760003660031901126101e75760206001600160401b0360015416604051908152f35b60405190610cd882610274565b60008252565b346101e75760003660031901126101e75761080a604051610cfe81610226565b60058152640352e302e360dc1b60208201526040519182916020835260208301906105e4565b346101e75760003660031901126101e75760008051602061408e833981519152546040516001600160a01b039091168152602090f35b346101e75760203660031901126101e7576004356000526005602052602060ff604060002054166040519015158152f35b346101e75760403660031901126101e757610da4610934565b60008051602061410e83398151915254906001600160401b0360ff8360401c1615921680159081610eb4575b6001149081610eaa575b159081610ea1575b50610e8f5760008051602061410e833981519152805467ffffffffffffffff19166001179055610e1b9082610e6a575b6024359061240e565b610e2157005b60008051602061410e833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b60008051602061410e833981519152805460ff60401b1916600160401b179055610e12565b60405163f92ee8a960e01b8152600490fd5b90501538610de2565b303b159150610dda565b839150610dd0565b346101e75760003660031901126101e757602060ff601954166040519015158152f35b346101e7576040806003193601126101e757610ef9610459565b6024356001600160401b0381116101e757610f1890369060040161039e565b9160045415610ffd57610f2b3633611b3c565b60008051602061408e83398151915254610f5b90610f4f906001600160a01b031681565b6001600160a01b031690565b81516368fc2b7760e11b815261ffff841662010000176004820152336024820152908290829060449082905afa908115610ff857600091610fca575b5015610fa757610a0b8383612727565b51639a28d60760e01b815233600482015261ffff91909116602482015260449150fd5b610fea9150823d8411610ff1575b610fe2818361028f565b8101906118ce565b5038610f97565b503d610fd8565b611417565b5163738c481160e01b8152600490fd5b346101e75760203660031901126101e75760043561102b3633611b3c565b601354806110475750420342811161104257601355005b61170d565b90810390811161104257601355005b346101e75760003660031901126101e7576020600454604051908152f35b346101e75760003660031901126101e75760206004541515604051908152f35b346101e7576020806003193601126101e7576004908135825415611294576110bc3633611b3c565b8015611283578254146110cb57005b6000825560035491821561127457600854908184116112505750506110ee6112ff565b906110f7611e92565b8252611104600054611926565b91604092604082015261111561364b565b6060820152426001600160401b031660c0820152611131611ee5565b600181529261113f856127c0565b9083850191825260005b8681106111d75750505092826111be926111ab61118a6111ca967fd015d18975fb34c32e4bba198aa3c60e2af0ada80a66615e4d3eac9d6b0e25f4986114a6565b9361119783860151611912565b60c08601516001600160401b031690613675565b6111b36102df565b9283528201526137c6565b60405191829182611739565b0390a1610a0b6000600355565b80611249816111f06111ea60019561254c565b50612828565b886111fd825161ffff1690565b910151611232611211825163ffffffff1690565b61122661121c6102d0565b61ffff9095168552565b63ffffffff16838c0152565b868201528651906112438383611960565b52611960565b5001611149565b60408051630f57b5f560e41b81529182019283526020830185905290918291010390fd5b60405163783bc0f160e11b8152fd5b604051636ad43cc360e11b81528390fd5b60405163738c481160e01b81528390fd5b604051906112b282610226565b60006020838281520152565b604051906112cb82610226565b816112d46112a5565b8152602061037e6112a5565b604051906112ed82610246565b60006040838281528260208201520152565b6040519061010082018281106001600160401b0382111761024157604052606060e08361132a6112be565b81528260208201528260408201526113406112e0565b83820152600060808201528260a0820152600060c08201520152565b908160209103126101e7575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b8685106113c05750505050505050505090565b909192939495969799988680611402600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a82015201906105e4565b9b9c9a019897969190910194019291906113ad565b6040513d6000823e3d90fd5b6020818303126101e7578051906001600160401b0382116101e7570181601f820112156101e757805161145581610383565b92611463604051948561028f565b818452602082840101116101e7576106d691602080850191016105c1565b90916114986106d6936040845260408401906105e4565b9160208184039101526105e4565b906114af6112ff565b5073__$b91d2ad766fd07dc99f56c1a0b020615bb$__60405163765809ab60e11b81526020928382806114e5846004830161136b565b0381865af4918215610ff857600092611671575b5060a0850180518051611634575061152c916115229161151b61153995611926565b9052611974565b5163ffffffff1690565b63ffffffff166080850152565b60405162409a0960e81b8152600081806115568760048301610609565b0381855af4908115610ff857600091611613575b5083830180518051806115dc5750505281604051809263b93612a760e01b825281806115998860048301610609565b03915af4908115610ff8576115b7926000926115bf575b5050611926565b60e082015290565b6115d59250803d10610a5057610a41818361028f565b38806115b0565b9150938092935084012090825190830120036115f757505090565b6109e7604051928392630ca2e06d60e11b845260048401611481565b61162e913d8091833e611626818361028f565b810190611423565b3861156a565b90506116409150611912565b9080820361164f575050611539565b604051631d97afef60e31b815260048101919091526024810191909152604490fd5b611689919250843d8611610a5057610a41818361028f565b90386114f9565b60ff60195416156116a3576106d6611c5c565b600190565b6040519061014082018281106001600160401b03821117610241576040526060808352610120836116d76112be565b602082015260006040820152600083820152600060808201528260a08201528260c08201528260e0820152826101008201520152565b634e487b7160e01b600052601160045260246000fd5b63ffffffff908116600019019190821161104257565b9060206106d69281815201906105e4565b60195460ff166118c1575b60195460ff1661187f577f17c789cd9b6ebb5030c7b906ed9f08f64563805e0aeab6d5f53dda9305a8348b6118536111be61178e611d81565b6117f26117996116a8565b916117c16117b46117af60095463ffffffff1690565b611723565b63ffffffff166060850152565b6117c9611e92565b6020840152426001600160401b031660408401526117e8601554611926565b60c0840152611926565b60a0820152611802601754611926565b60e0820152611812601854611926565b61010082015261183c61183761182f61182a84611eff565b611926565b808452611912565b601555565b61184e600160ff196019541617601955565b611f43565b0390a161185e611cf7565b61187161186d60195460ff1690565b1590565b61187757565b6102dd61174a565b6109e763ffffffff60001961189960095463ffffffff1690565b0116604051918291630642fe1b60e11b83526004830191909163ffffffff6020820193169052565b6118c9611cf7565b611755565b91908260409103126101e757815180151581036101e7576020909201516106d6816102f7565b60011981019190821161104257565b60001981019190821161104257565b805115611920576020015190565b50600090565b604051906020820152602081526106d681610226565b9061194f602092828151948592016105c1565b0190565b8051156108af5760200190565b80518210156108af5760209160051b010190565b6119ad91611980610ccb565b9061198961291a565b6119a7611a016040926040519788916119a76020988985019061193c565b9061193c565b03966119c1601f199889810183528261028f565b6119f56119e66119e16119d88a5163ffffffff1690565b63ffffffff1690565b612aba565b6040519485938985019061193c565b0387810183528261028f565b916000925b848601805151851015611abe576119a7611ab46119a7611aa88995611a9a8d611a68611a628d60019a611a5c8f611a508f916119a7611a43612931565b91519b8c9485019061193c565b0386810189528861028f565b51611960565b51612b3b565b92611a8e611a806119e186516001600160401b031690565b8d519788938d85019061193c565b0390810185528461028f565b88519485938885019061193c565b038a810183528261028f565b9401939050611a06565b5095509350505050565b6004116101e757600090600490565b6001600160e01b03199035818116939260048110611af457505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b60008051602061408e8339815191528054611b75906001600160a01b0316611b6c611b6686611ac8565b90611ad7565b90843091612c40565b9015611b82575b50505050565b63ffffffff1615611c3c5760008051602061408e833981519152805460ff60a01b1916600160a01b179055611bc490610f4f908190546001600160a01b031690565b91823b156101e757611bf09260009283604051809681958294634a63ebf760e11b845260048401611b03565b03925af18015610ff857611c23575b5060008051602061408e833981519152805460ff60a01b1916905538808080611b7c565b80611c30611c3692610261565b806101dc565b38611bff565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b6013548015611920576007548101809111611042574210600a548015159081611c91575b50811591611c8c575090565b905090565b9050600854111538611c80565b60008051602061408e83398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60135415611d1557611d07611c5c565b611d0d57565b6102dd61309d565b42601355565b604051611d2781610274565b60008152906000368137565b90611d3d82610442565b611d4a604051918261028f565b8281528092611d5b601f1991610442565b0190602036910137565b8015611042576000190190565b60001981146110425760010190565b600c5490600e54918015611e8b57611d9883611d33565b9260005b818110611e615750905b60019081811180611e58575b15611e47578082168203611e0d57611e0590611df3611dd9611dd386611903565b88611960565b51611dec611de687611903565b89611960565b51906131e6565b611dff611dd386611903565b52611d72565b905b1c611da6565b909180611e2f611e22611dd3611e41946118f4565b51611dec611de684611903565b611e3b611dd3836118f4565b52611d65565b91611e07565b50505090611e5490611953565b5190565b50818311611db2565b80611e7a611e7060019361088a565b90549060031b1c90565b611e848288611960565b5201611d9c565b5060009150565b611e9a6112be565b50604051611ea781610226565b6002815263ffffffff46166020820152604051611ec381610226565b600181526001602082015260405191611edb83610226565b8252602082015290565b60405190611ef282610226565b6060602083600081520152565b80516101208201805191604051611f1581610274565b600081528452604051611f2781610274565b600081528252611f3684611f43565b6020815191012093525290565b611f4b610ccb565b611f53612944565b92604080518095602094858301611f699161193c565b611f729161193c565b0394601f19958681018252611f87908261028f565b8451611f92906132df565b908251918291868301611fa49161193c565b611fad9161193c565b038681018252611fbd908261028f565b611fc5612931565b908251918291868301611fd79161193c565b611fe09161193c565b038681018252611ff0908261028f565b83850151611ffd9061332f565b908151612010906001600160401b031690565b61201990612aba565b90835191829187830161202b9161193c565b6120349161193c565b038781018252612044908261028f565b82519182918683016120559161193c565b61205e9161193c565b03868101825261206e908261028f565b612076612957565b9082519182918683016120889161193c565b6120919161193c565b0386810182526120a1908261028f565b848201516001600160401b03166120b790612aba565b9082519182918683016120c99161193c565b6120d29161193c565b0386810182526120e2908261028f565b6120ea61296a565b9082519182918683016120fc9161193c565b6121059161193c565b038681018252612115908261028f565b60608501516121299063ffffffff16612aba565b90825191829186830161213b9161193c565b6121449161193c565b038681018252612154908261028f565b61215c61297d565b90825191829186830161216e9161193c565b6121779161193c565b038681018252612187908261028f565b608085015161219b9063ffffffff16612aba565b9082519182918683016121ad9161193c565b6121b69161193c565b0386810182526121c6908261028f565b6121ce612990565b9082519182918683016121e09161193c565b6121e99161193c565b0386810182526121f9908261028f565b60a0850151612207906132df565b9082519182918683016122199161193c565b6122229161193c565b038681018252612232908261028f565b61223a6129a3565b90825191829186830161224c9161193c565b6122559161193c565b038681018252612265908261028f565b60c0850151612273906132df565b9082519182918683016122859161193c565b61228e9161193c565b03868101825261229e908261028f565b6122a66129e9565b9082519182918683016122b89161193c565b6122c19161193c565b0386810182526122d1908261028f565b60e08501516122df906132df565b9082519182918683016122f19161193c565b6122fa9161193c565b03868101825261230a908261028f565b612312612a08565b9082519182918683016123249161193c565b61232d9161193c565b03868101825261233d908261028f565b61010085015161234c906132df565b90825191829186830161235e9161193c565b6123679161193c565b038681018252612377908261028f565b916000925b6101208601805151851015611abe576119a761240461012093611aa86123c96123c38a6001978f611a5c908f6123b78f6119a7611a43612a27565b0390810188528761028f565b5161349e565b6123f68d8c611a8e8c6119a76123e96119e188516001600160401b031690565b915198899485019061193c565b88519485938c85019061193c565b940193905061237c565b6124379061241a61361c565b61242261361c565b61242a61361c565b61243261361c565b611c9e565b61243f61361c565b61244761361c565b61244f611d1b565b8051906001600160401b03821161024157600160401b821161024157600f5482600f5580831061250b575b50602080910190600f60005260005b8381106124d957505050506124cf906124a86124a3611d1b565b612f79565b6124ba600160ff196019541617601955565b6124c2612e29565b6124ca612e9f565b600755565b6102dd6020600855565b82517f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80282015591810191600101612489565b827f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80291820191015b818110612540575061247a565b60008155600101612533565b6002548110156108af57600260005260011b7f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0190600090565b90600182811c921680156125b6575b60208310146125a057565b634e487b7160e01b600052602260045260246000fd5b91607f1691612595565b90601f81116125ce57505050565b6000916000526020600020906020601f850160051c8301941061260c575b601f0160051c01915b82811061260157505050565b8181556001016125f5565b90925082906125ec565b9291906127115761ffff81511661ffff19845416178355600180930190602080910151938451916001600160401b0383116102415761265f836126598654612586565b866125c0565b602091601f84116001146126a35750508190612694939495600092612698575b50508160011b916000199060031b1c19161790565b9055565b01519050388061267f565b95601f929192198416966126bc86600052602060002090565b936000915b8983106126fa57505050836001959697106126e1575b505050811b019055565b015160001960f88460031b161c191690553880806126d7565b8385015186559485019493810193918101916126c1565b634e487b7160e01b600052600060045260246000fd5b6002549160035480841160001461277d57506102dd92506127566040519261274e84610226565b61ffff168352565b602082015261277760035461277261276d82611d72565b600355565b61254c565b90612616565b61278690611d72565b60035561ffff6040519261279984610226565b1682526020820152600160401b821015610241576127778260016102dd940160025561254c565b906127ca82610442565b60406127d9604051928361028f565b83825281936127ea601f1991610442565b019160009060005b848110612800575050505050565b602090845161280e81610246565b8481528285818301526060878301528285010152016127f2565b9060405161283581610226565b809261ffff81541682526001809101916040519283600082549461285886612586565b93848452602096876001821691826000146128c4575050600114612885575b50506103469250038461028f565b86925060005281600020906000915b8583106128ac57505061034693508201013880612877565b8054838a018501528894508793909201918101612894565b925093505061034694915060ff191682840152151560051b8201013880612877565b604051906128f382610226565b6001825260203681840137565b6040519061290d82610226565b600a825260203681840137565b6129226128e6565b600861292d82611953565b5390565b6129396128e6565b601261292d82611953565b61294c6128e6565b600a61292d82611953565b61295f6128e6565b602861292d82611953565b6129726128e6565b603061292d82611953565b6129856128e6565b603861292d82611953565b6129986128e6565b607a61292d82611953565b6129ab612900565b60a260005b607f808311156129d55790608060019284161760208286010153019060071c906129b0565b50607f600192166020828501015301815290565b6129f1612900565b60f260016000826020850153019060071c906129b0565b612a10612900565b60fa60016000826020850153019060071c906129b0565b612a2f612900565b6101926001600060926020850153019060071c906129b0565b612a506128e6565b601061292d82611953565b612a636128e6565b601a61292d82611953565b612a766128e6565b602261292d82611953565b612a896128e6565b603261292d82611953565b612a9c6128e6565b604261292d82611953565b612aaf6128e6565b601861292d82611953565b9060809160806001600160401b03821610612b1657612ad7612900565b60005b607f80841115612afe57908560019285161760208285010153019160071c91612ada565b5090929350607f600192166020828501015301815290565b909150612b216128e6565b9060f81b6001600160f81b03191660001a61292d82611953565b6106d6612b7c6119a792612c34612c206119a7612c27612b59610ccb565b94612b6261291a565b9060409485928351998a916119a760209b8c85019061193c565b0398612b90601f199a8b810183528261028f565b612bcf89612bc3612bb36119e1612bac612bac895161ffff1690565b61ffff1690565b6119a7885195869485019061193c565b038b810183528261028f565b612bde89612bc3612bb3612a48565b612bfb89612bc3612bb36119e16119d88489015163ffffffff1690565b612c14612c06612a5b565b85519d8e938c85019061193c565b038981018c528b61028f565b01516132df565b915196879485019061193c565b0390810183528261028f565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761024157604093859385528380528360205251915afa612cbd5750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612d0d575b5050610ab057565b6000805160206140ee8339815191525416141590503880612d05565b6040519060125480835282602091602082019060126000526000805160206140ae833981519152936000905b828210612d6b575050506102dd9250038361028f565b855484526001958601958895509381019390910190612d55565b600160401b8111610241576011549080601155818110612da3575050565b60009060116000526000805160206140ce83398151915292830192015b828110612dcc57505050565b818155600101612dc0565b600160401b8111610241576012549080601255818110612df5575050565b60009060126000526000805160206140ae83398151915292830192015b828110612e1e57505050565b818155600101612e12565b600f546001600160401b03811161024157612e4381612d85565b601160009081527f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80280545b838310612e7b5750505050565b60018091920192835492816000805160206140ce8339815191520155019190612e6e565b6010546001600160401b03811161024157612eb981612dd7565b601260009081527f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67280545b838310612ef15750505050565b60018091920192835492816000805160206140ae8339815191520155019190612ee4565b6011546001600160401b03811161024157612f2f81612dd7565b601260009081526000805160206140ce83398151915280545b838310612f555750505050565b60018091920192835492816000805160206140ae8339815191520155019190612f48565b8051906001600160401b03821161024157600160401b82116102415760105482601055808310612ff2575b50602080910190601060005260005b838110612fc05750505050565b82517f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67282015591810191600101612fb3565b827f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67291820191015b8181106130275750612fa4565b6000815560010161301a565b8051906001600160401b0382116102415761304d82612d85565b602080910190601160005260005b8381106130685750505050565b82516000805160206140ce8339815191528201559181019160010161305b565b90600163ffffffff8093160191821161104257565b6130ac61186d60195460ff1690565b6131a4576130bf60ff1960195416601955565b6130ca600b54600c55565b6130d5600d54600e55565b6130ed6130e0612d29565b6130e8612f15565b613033565b6130f76000600b55565b6131016000600d55565b61310b6000600a55565b61311442601355565b6131456131296001546001600160401b031690565b6001600160401b03166001600160401b03196014541617601455565b613150601654601755565b61315b600054601855565b61316a60ff1960195416601955565b6131746000601655565b6102dd61318e61318960095463ffffffff1690565b613088565b63ffffffff1663ffffffff196009541617600955565b6109e763ffffffff6000196131be60095463ffffffff1690565b0116604051918291631c70a36560e21b83526004830191909163ffffffff6020820193169052565b6040516334509dd160e01b8152600481019190915273__$398d4f030862acab53d338aebf0b4256d7$__916020908183602481875af4928315610ff8576000936132ba575b506040516333aec0ad60e21b815260048101919091529192819083908180602481015b03915af4918215610ff857600092613297575b5061329190613283604051938492830195869091604092825260208201520190565b03601f19810183528261028f565b51902090565b8192506132b390613291923d8511610a5057610a41818361028f565b9190613261565b61324e9350906132d78392833d8511610a5057610a41818361028f565b93509061322b565b6106d660206132f76001600160401b03845116612aba565b604051938161330f86935180928680870191016105c1565b8201613323825180938680850191016105c1565b0103808452018261028f565b613337610ccb565b90613340612944565b60408051938460209384928383016133579161193c565b6133609161193c565b0393601f19948581018752613375908761028f565b80516133809061396d565b958651613393906001600160401b031690565b61339c90612aba565b9084519182918583016133ae9161193c565b6133b79161193c565b0386810182526133c7908261028f565b83519687918483016133d89161193c565b6133e19161193c565b0385810187526133f1908761028f565b6133f9612931565b95835196879184830161340b9161193c565b6134149161193c565b038581018752613424908761028f565b015161342f9061396d565b908151613442906001600160401b031690565b61344b90612aba565b94815195869185830161345d9161193c565b6134669161193c565b038481018652613476908661028f565b5193849283016134859161193c565b61348e9161193c565b0390810182526106d6908261028f565b6134a6610ccb565b906134af612944565b91604080805180956020948583016134c69161193c565b6134cf9161193c565b0393601f199485810187526134e4908761028f565b80516134ef90613a25565b958651613502906001600160401b031690565b61350b90612aba565b90835191829187830161351d9161193c565b6135269161193c565b038681018252613536908261028f565b82519687918683016135479161193c565b6135509161193c565b038581018752613560908761028f565b613568612a48565b95825196879186830161357a9161193c565b6135839161193c565b038581018752613593908761028f565b838101516135a39060ff16612aba565b9582519687918683016135b59161193c565b6135be9161193c565b0385810187526135ce908761028f565b6135d6612a5b565b9582519687918683016135e89161193c565b6135f19161193c565b038581018752613601908761028f565b015161360c906132df565b905193849283016134859161193c565b60ff60008051602061410e8339815191525460401c161561363957565b604051631afcd79f60e31b8152600490fd5b6136536112e0565b5060405161366081610246565b60008152600060208201526000604082015290565b9161367e611cf7565b600a5480151590816137b0575b506137a3575b6016541561379a575b600a5490810180911161104257600a55816000556001600160401b03600191166001600160401b031960015416176001556136d6600b54611d72565b6136df81600b55565b906136eb600d54611d72565b926011546136f885611903565b10156137895761372c9061371361370e86611903565b6108b4565b90919082549060031b91821b91600019901b1916179055565b9190915b8083161561373f5750600d5550565b908061377a61376e613759611e7061370e61377f966118f4565b613768611e7061370e86611903565b906131e6565b61371361370e846118f4565b611d65565b91811c9190613730565b61379290613ac2565b919091613730565b8260165561369a565b6137ab61309d565b613691565b905081810180911161104257600854103861368b565b6137ce610ccb565b906137d7612944565b60408051938460209384928383016137ee9161193c565b6137f79161193c565b0393601f1994858101875261380c908761028f565b805161381790613af8565b95865161382a906001600160401b031690565b61383390612aba565b9084519182918583016138459161193c565b61384e9161193c565b03868101825261385e908261028f565b835196879184830161386f9161193c565b6138789161193c565b038581018752613888908761028f565b613890612931565b9583519687918483016138a29161193c565b6138ab9161193c565b0385810187526138bb908761028f565b015161342f90611974565b90813b1561394c576000805160206140ee83398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a28051156139315761392e91613e9a565b50565b50503461393a57565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b6106d66119a76119a7612c34613a156119e16119d860206119a798613a0a6119a76139e4613999610ccb565b6139b36139a461291a565b6040519d8e938985019061193c565b039a6139c7601f199c8d810183528261028f565b612bc36119e66119e16139de6139de895160ff1690565b60ff1690565b6139fe6139ef612a48565b6040519a8b938785019061193c565b0389810189528861028f565b015163ffffffff1690565b604051958693602085019061193c565b6106d66119a76119a7612c34613a1560206119a796612c206119a7613a9c613a4b610ccb565b613a65613a5661291a565b6040519b8c938985019061193c565b0398613a79601f199a8b810183528261028f565b613a906119e66119e16139de6139de895160ff1690565b0389810183528261028f565b613ab6613aa7612931565b6040519889938785019061193c565b0387810187528661028f565b601154600160401b8110156102415760018101806011558110156108af5760116000526000805160206140ce8339815191520155565b613b00610ccb565b90613b09612944565b60409283518092602092838301613b1f9161193c565b613b289161193c565b0391601f19928381018252613b3d908261028f565b8351613b489061332f565b908151613b5b906001600160401b031690565b613b6490612aba565b908651918291858301613b769161193c565b613b7f9161193c565b038481018252613b8f908261028f565b8551918291848301613ba09161193c565b613ba99161193c565b038381018252613bb9908261028f565b80858386018585825151151595613cd1956119a795613c9d956119a795613c65956119a79b613e6f575b5050508091508b018a8a825151613e1d575b9091508c92613c076060850151613ee0565b8051613d6c575b506080613c5994613a0a613c4b956119e195613c3f6119d8966119a7613c32612957565b91519c8d9485019061193c565b0390810189528861028f565b8c519485938b85019061193c565b0388810183528261028f565b8060a08901878b825151613d34575b50505050613c91613c8361297d565b8a519485938985019061193c565b0386810183528261028f565b613cc5613cb76119e160c08901516001600160401b031690565b88519485938785019061193c565b0384810183528261028f565b60e081940190815151613ce8575b50505050905090565b613d2a9450946119a7612c27612c3493613d246119a799613d18613d0a612a94565b87519c8d938b85019061193c565b038881018b528a61028f565b516132df565b8038808080613cdf565b6119a79450613d639392613d24613c5993613d57613c4b946119a76123e9612a81565b038d810186528561028f565b3880878b613c74565b613c5994613a0a613c4b9585613c3f6119a7613e0d6119a7613e016080998b9f9b613df46119d89d6119e19f613dc390613db7613da7612a6e565b6119a7875195869485019061193c565b038c810183528261028f565b613de8613dda6119e186516001600160401b031690565b84519788938d85019061193c565b038a810186528561028f565b519485938885019061193c565b0385810183528261028f565b9a96505095509550509450613c0e565b92613e586119a79593613d24611aa894613e6697613e4c613e3c612a5b565b6119a788519a8b9485019061193c565b0390810187528661028f565b90519485938d85019061193c565b8a388a8a613bf5565b6119a79550611aa892613d24613e90969593613e5893613e4c613e3c612931565b388b818b8b613be3565b6000806106d693602081519101845af43d15613ed8573d91613ebb83610383565b92613ec9604051948561028f565b83523d6000602085013e61402a565b60609161402a565b613ee8610ccb565b9060ff613ef96139de835160ff1690565b16613fd3575b60208101613f146139de6139de835160ff1690565b613f86575b50604001613f2e6139de6139de835160ff1690565b613f36575090565b6106d6906119a7612c34613a156119e16139de6139de6119a798613f6b613f5b612aa7565b604051988993602085019061193c565b0396613f7f601f199889810189528861028f565b5160ff1690565b613fcc6119a7916119a7612c34613fbd6119e16139de6139de6040999a613f6b613fae612a48565b8c51988993602085019061193c565b8651958693602085019061193c565b9190613f19565b906140246119a76119a792613ff9613fe961291a565b604051938493602085019061193c565b039061400d601f199283810183528261028f565b612c34613a156119e16139de6139de895160ff1690565b90613eff565b90614051575080511561403f57602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614084575b614062575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561405a56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00bb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344431ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212205a949ce0ee2fc2b4e0706f0493844fdc8989e7295ca391d13555734473d63c7064736f6c63430008190033",
1061
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c806306c106f9146101d75780631e1afc48146101d2578063264f195b146101cd57806327e935a1146101c857806347453a2a146101c35780634f1ef286146101be57806352d1902d146101b95780635fd689df146101b4578063621fbd59146101af57806373d335eb146101aa5780637a9e5e4b146101a557806382ae9ef7146101a05780638fb360371461019b5780639039e4951461019657806395fabcf0146101915780639b0715001461018c5780639f065a2514610187578063a9e50c1014610182578063ad3cb1cc1461017d578063bf7e214f14610178578063c94c93e714610173578063cd6dc6871461016e578063da55d96a14610169578063e0c14aa814610164578063e11418b71461015f578063e36f9a071461015a578063e44efb5a146101555763f5786b4b1461015057600080fd5b611094565b611074565b611056565b61100d565b610edf565b610ebc565b610d8b565b610d5a565b610d24565b610cde565b610ca4565b610c86565b610c68565b610c4a565b610c27565b610bd4565b610bbb565b610b40565b610b1b565b610afd565b610ac2565b610a57565b61094a565b6108d9565b61082a565b61080e565b6106d9565b6101ec565b60009103126101e757565b600080fd5b346101e75760003660031901126101e757602063ffffffff60095416604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761024157604052565b610210565b606081019081106001600160401b0382111761024157604052565b6001600160401b03811161024157604052565b602081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b6040519061010082018281106001600160401b0382111761024157604052565b604051906102dd82610246565b565b604051906102dd82610226565b60ff8116036101e757565b63ffffffff8116036101e757565b35906102dd826102f7565b91908260409103126101e75760405161032881610226565b60208082948035610338816102ec565b8452013591610346836102f7565b0152565b91906080838203126101e757602061037e6040519261036884610226565b604084966103768382610310565b865201610310565b910152565b6001600160401b03811161024157601f01601f191660200190565b81601f820112156101e7578035906103b582610383565b926103c3604051948561028f565b828452602083830101116101e757816000926020809301838601378301015290565b91908260609103126101e7576040516103fd81610246565b6040808294803561040d816102ec565b8452602081013561041d816102ec565b6020850152013591610346836102ec565b35906001600160401b03821682036101e757565b6001600160401b0381116102415760051b60200190565b6004359061ffff821682036101e757565b359061ffff821682036101e757565b91909160409081818503126101e757815161049381610226565b809482356104a0816102f7565b8252602092838101356001600160401b03918282116101e757019180601f840112156101e7578235906104d282610442565b966104df8151988961028f565b828852868089019360051b860101948286116101e757878101935b86851061050c57505050505050500152565b84358681116101e75782019060609081601f1984880301126101e75784519161053483610246565b61053f8c850161046a565b83528584013561054e816102f7565b8c840152830135918883116101e75761056e878d8096958196010161039e565b868201528152019401936104fa565b90604060206102dd936105a484825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b60005b8381106105d45750506000910152565b81810151838201526020016105c4565b906020916105fd815180928185528580860191016105c1565b601f01601f1916010190565b906106d6916020815261062060208201835161057d565b60208201519061063e6101a0928360a08401526101c08301906105e4565b9160e06106b2610660604087015195601f1996878783030160c08801526105e4565b61068c60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a087015186868303016101608701526105e4565b60c08601516001600160401b031661018085015294015192828503019101526105e4565b90565b346101e7576003196040368201126101e757600480356001600160401b03928382116101e7576101a09082360301126101e7576107146102b0565b906107213682850161034a565b825260848101358481116101e75761073e9084369184010161039e565b602083015260a48101358481116101e75761075e9084369184010161039e565b60408301526107703660c483016103e5565b60608301526107826101248201610305565b60808301526101448101358481116101e7576107a39084369184010161039e565b60a08301526107b5610164820161042e565b60c0830152610184810135908482116101e757836107d6923692010161039e565b60e08201526024359283116101e7576107f86107fe9261080a94369101610479565b906114a6565b60405191829182610609565b0390f35b346101e75760003660031901126101e757602060405160018152f35b346101e75760203660031901126101e7576004356108483633611b3c565b8015610862576004541561085857005b6004556000600355005b604051636ad43cc360e11b8152600490fd5b634e487b7160e01b600052603260045260246000fd5b6012548110156108af5760126000526000805160206140ae8339815191520190600090565b610874565b6011548110156108af5760116000526000805160206140ce8339815191520190600090565b346101e75760203660031901126101e7576004356006548110156101e75760066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01546040516001600160a01b039091168152602090f35b600435906001600160a01b03821682036101e757565b60403660031901126101e75761095e610934565b6024356001600160401b0381116101e75761097d90369060040161039e565b90610986612ccf565b6109903633611b3c565b610998612ccf565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa60009381610a26575b506109eb57604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206140ee8339815191528303610a0d57610a0b92506138c6565b005b604051632a87526960e21b815260048101849052602490fd5b610a4991945060203d602011610a50575b610a41818361028f565b81019061135c565b92386109c1565b503d610a37565b346101e75760003660031901126101e7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610ab05760206040516000805160206140ee8339815191528152f35b60405163703e46dd60e11b8152600490fd5b346101e75760203660031901126101e757600435610ae03633611b3c565b8015610aeb57600855005b604051630e7a0f8f60e11b8152600490fd5b346101e75760003660031901126101e7576020600054604051908152f35b346101e75760003660031901126101e7576020610b36611690565b6040519015158152f35b346101e75760203660031901126101e757610b59610934565b60008051602061408e833981519152546001600160a01b03919082163303610ba457803b15610b8b57610a0b90611c9e565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346101e75760003660031901126101e757610a0b61174a565b346101e75760003660031901126101e75760008051602061408e8339815191525460a01c60ff1615610c1e576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610c0b565b346101e75760203660031901126101e757610c423633611b3c565b600435600755005b346101e75760003660031901126101e7576020600354604051908152f35b346101e75760003660031901126101e7576020600754604051908152f35b346101e75760003660031901126101e7576020600854604051908152f35b346101e75760003660031901126101e75760206001600160401b0360015416604051908152f35b60405190610cd882610274565b60008252565b346101e75760003660031901126101e75761080a604051610cfe81610226565b60058152640352e302e360dc1b60208201526040519182916020835260208301906105e4565b346101e75760003660031901126101e75760008051602061408e833981519152546040516001600160a01b039091168152602090f35b346101e75760203660031901126101e7576004356000526005602052602060ff604060002054166040519015158152f35b346101e75760403660031901126101e757610da4610934565b60008051602061410e83398151915254906001600160401b0360ff8360401c1615921680159081610eb4575b6001149081610eaa575b159081610ea1575b50610e8f5760008051602061410e833981519152805467ffffffffffffffff19166001179055610e1b9082610e6a575b6024359061240e565b610e2157005b60008051602061410e833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b60008051602061410e833981519152805460ff60401b1916600160401b179055610e12565b60405163f92ee8a960e01b8152600490fd5b90501538610de2565b303b159150610dda565b839150610dd0565b346101e75760003660031901126101e757602060ff601954166040519015158152f35b346101e7576040806003193601126101e757610ef9610459565b6024356001600160401b0381116101e757610f1890369060040161039e565b9160045415610ffd57610f2b3633611b3c565b60008051602061408e83398151915254610f5b90610f4f906001600160a01b031681565b6001600160a01b031690565b81516368fc2b7760e11b815261ffff841662010000176004820152336024820152908290829060449082905afa908115610ff857600091610fca575b5015610fa757610a0b8383612727565b51639a28d60760e01b815233600482015261ffff91909116602482015260449150fd5b610fea9150823d8411610ff1575b610fe2818361028f565b8101906118ce565b5038610f97565b503d610fd8565b611417565b5163738c481160e01b8152600490fd5b346101e75760203660031901126101e75760043561102b3633611b3c565b601354806110475750420342811161104257601355005b61170d565b90810390811161104257601355005b346101e75760003660031901126101e7576020600454604051908152f35b346101e75760003660031901126101e75760206004541515604051908152f35b346101e7576020806003193601126101e7576004908135825415611294576110bc3633611b3c565b8015611283578254146110cb57005b6000825560035491821561127457600854908184116112505750506110ee6112ff565b906110f7611e92565b8252611104600054611926565b91604092604082015261111561364b565b6060820152426001600160401b031660c0820152611131611ee5565b600181529261113f856127c0565b9083850191825260005b8681106111d75750505092826111be926111ab61118a6111ca967fd015d18975fb34c32e4bba198aa3c60e2af0ada80a66615e4d3eac9d6b0e25f4986114a6565b9361119783860151611912565b60c08601516001600160401b031690613675565b6111b36102df565b9283528201526137c6565b60405191829182611739565b0390a1610a0b6000600355565b80611249816111f06111ea60019561254c565b50612828565b886111fd825161ffff1690565b910151611232611211825163ffffffff1690565b61122661121c6102d0565b61ffff9095168552565b63ffffffff16838c0152565b868201528651906112438383611960565b52611960565b5001611149565b60408051630f57b5f560e41b81529182019283526020830185905290918291010390fd5b60405163783bc0f160e11b8152fd5b604051636ad43cc360e11b81528390fd5b60405163738c481160e01b81528390fd5b604051906112b282610226565b60006020838281520152565b604051906112cb82610226565b816112d46112a5565b8152602061037e6112a5565b604051906112ed82610246565b60006040838281528260208201520152565b6040519061010082018281106001600160401b0382111761024157604052606060e08361132a6112be565b81528260208201528260408201526113406112e0565b83820152600060808201528260a0820152600060c08201520152565b908160209103126101e7575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b8685106113c05750505050505050505090565b909192939495969799988680611402600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a82015201906105e4565b9b9c9a019897969190910194019291906113ad565b6040513d6000823e3d90fd5b6020818303126101e7578051906001600160401b0382116101e7570181601f820112156101e757805161145581610383565b92611463604051948561028f565b818452602082840101116101e7576106d691602080850191016105c1565b90916114986106d6936040845260408401906105e4565b9160208184039101526105e4565b906114af6112ff565b5073__$b91d2ad766fd07dc99f56c1a0b020615bb$__60405163765809ab60e11b81526020928382806114e5846004830161136b565b0381865af4918215610ff857600092611671575b5060a0850180518051611634575061152c916115229161151b61153995611926565b9052611974565b5163ffffffff1690565b63ffffffff166080850152565b60405162409a0960e81b8152600081806115568760048301610609565b0381855af4908115610ff857600091611613575b5083830180518051806115dc5750505281604051809263b93612a760e01b825281806115998860048301610609565b03915af4908115610ff8576115b7926000926115bf575b5050611926565b60e082015290565b6115d59250803d10610a5057610a41818361028f565b38806115b0565b9150938092935084012090825190830120036115f757505090565b6109e7604051928392630ca2e06d60e11b845260048401611481565b61162e913d8091833e611626818361028f565b810190611423565b3861156a565b90506116409150611912565b9080820361164f575050611539565b604051631d97afef60e31b815260048101919091526024810191909152604490fd5b611689919250843d8611610a5057610a41818361028f565b90386114f9565b60ff60195416156116a3576106d6611c5c565b600190565b6040519061014082018281106001600160401b03821117610241576040526060808352610120836116d76112be565b602082015260006040820152600083820152600060808201528260a08201528260c08201528260e0820152826101008201520152565b634e487b7160e01b600052601160045260246000fd5b63ffffffff908116600019019190821161104257565b9060206106d69281815201906105e4565b60195460ff166118c1575b60195460ff1661187f577f17c789cd9b6ebb5030c7b906ed9f08f64563805e0aeab6d5f53dda9305a8348b6118536111be61178e611d81565b6117f26117996116a8565b916117c16117b46117af60095463ffffffff1690565b611723565b63ffffffff166060850152565b6117c9611e92565b6020840152426001600160401b031660408401526117e8601554611926565b60c0840152611926565b60a0820152611802601754611926565b60e0820152611812601854611926565b61010082015261183c61183761182f61182a84611eff565b611926565b808452611912565b601555565b61184e600160ff196019541617601955565b611f43565b0390a161185e611cf7565b61187161186d60195460ff1690565b1590565b61187757565b6102dd61174a565b6109e763ffffffff60001961189960095463ffffffff1690565b0116604051918291630642fe1b60e11b83526004830191909163ffffffff6020820193169052565b6118c9611cf7565b611755565b91908260409103126101e757815180151581036101e7576020909201516106d6816102f7565b60011981019190821161104257565b60001981019190821161104257565b805115611920576020015190565b50600090565b604051906020820152602081526106d681610226565b9061194f602092828151948592016105c1565b0190565b8051156108af5760200190565b80518210156108af5760209160051b010190565b6119ad91611980610ccb565b9061198961291a565b6119a7611a016040926040519788916119a76020988985019061193c565b9061193c565b03966119c1601f199889810183528261028f565b6119f56119e66119e16119d88a5163ffffffff1690565b63ffffffff1690565b612aba565b6040519485938985019061193c565b0387810183528261028f565b916000925b848601805151851015611abe576119a7611ab46119a7611aa88995611a9a8d611a68611a628d60019a611a5c8f611a508f916119a7611a43612931565b91519b8c9485019061193c565b0386810189528861028f565b51611960565b51612b3b565b92611a8e611a806119e186516001600160401b031690565b8d519788938d85019061193c565b0390810185528461028f565b88519485938885019061193c565b038a810183528261028f565b9401939050611a06565b5095509350505050565b6004116101e757600090600490565b6001600160e01b03199035818116939260048110611af457505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b60008051602061408e8339815191528054611b75906001600160a01b0316611b6c611b6686611ac8565b90611ad7565b90843091612c40565b9015611b82575b50505050565b63ffffffff1615611c3c5760008051602061408e833981519152805460ff60a01b1916600160a01b179055611bc490610f4f908190546001600160a01b031690565b91823b156101e757611bf09260009283604051809681958294634a63ebf760e11b845260048401611b03565b03925af18015610ff857611c23575b5060008051602061408e833981519152805460ff60a01b1916905538808080611b7c565b80611c30611c3692610261565b806101dc565b38611bff565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b6013548015611920576007548101809111611042574210600a548015159081611c91575b50811591611c8c575090565b905090565b9050600854111538611c80565b60008051602061408e83398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60135415611d1557611d07611c5c565b611d0d57565b6102dd61309d565b42601355565b604051611d2781610274565b60008152906000368137565b90611d3d82610442565b611d4a604051918261028f565b8281528092611d5b601f1991610442565b0190602036910137565b8015611042576000190190565b60001981146110425760010190565b600c5490600e54918015611e8b57611d9883611d33565b9260005b818110611e615750905b60019081811180611e58575b15611e47578082168203611e0d57611e0590611df3611dd9611dd386611903565b88611960565b51611dec611de687611903565b89611960565b51906131e6565b611dff611dd386611903565b52611d72565b905b1c611da6565b909180611e2f611e22611dd3611e41946118f4565b51611dec611de684611903565b611e3b611dd3836118f4565b52611d65565b91611e07565b50505090611e5490611953565b5190565b50818311611db2565b80611e7a611e7060019361088a565b90549060031b1c90565b611e848288611960565b5201611d9c565b5060009150565b611e9a6112be565b50604051611ea781610226565b6002815263ffffffff46166020820152604051611ec381610226565b600181526001602082015260405191611edb83610226565b8252602082015290565b60405190611ef282610226565b6060602083600081520152565b80516101208201805191604051611f1581610274565b600081528452604051611f2781610274565b600081528252611f3684611f43565b6020815191012093525290565b611f4b610ccb565b611f53612944565b92604080518095602094858301611f699161193c565b611f729161193c565b0394601f19958681018252611f87908261028f565b8451611f92906132df565b908251918291868301611fa49161193c565b611fad9161193c565b038681018252611fbd908261028f565b611fc5612931565b908251918291868301611fd79161193c565b611fe09161193c565b038681018252611ff0908261028f565b83850151611ffd9061332f565b908151612010906001600160401b031690565b61201990612aba565b90835191829187830161202b9161193c565b6120349161193c565b038781018252612044908261028f565b82519182918683016120559161193c565b61205e9161193c565b03868101825261206e908261028f565b612076612957565b9082519182918683016120889161193c565b6120919161193c565b0386810182526120a1908261028f565b848201516001600160401b03166120b790612aba565b9082519182918683016120c99161193c565b6120d29161193c565b0386810182526120e2908261028f565b6120ea61296a565b9082519182918683016120fc9161193c565b6121059161193c565b038681018252612115908261028f565b60608501516121299063ffffffff16612aba565b90825191829186830161213b9161193c565b6121449161193c565b038681018252612154908261028f565b61215c61297d565b90825191829186830161216e9161193c565b6121779161193c565b038681018252612187908261028f565b608085015161219b9063ffffffff16612aba565b9082519182918683016121ad9161193c565b6121b69161193c565b0386810182526121c6908261028f565b6121ce612990565b9082519182918683016121e09161193c565b6121e99161193c565b0386810182526121f9908261028f565b60a0850151612207906132df565b9082519182918683016122199161193c565b6122229161193c565b038681018252612232908261028f565b61223a6129a3565b90825191829186830161224c9161193c565b6122559161193c565b038681018252612265908261028f565b60c0850151612273906132df565b9082519182918683016122859161193c565b61228e9161193c565b03868101825261229e908261028f565b6122a66129e9565b9082519182918683016122b89161193c565b6122c19161193c565b0386810182526122d1908261028f565b60e08501516122df906132df565b9082519182918683016122f19161193c565b6122fa9161193c565b03868101825261230a908261028f565b612312612a08565b9082519182918683016123249161193c565b61232d9161193c565b03868101825261233d908261028f565b61010085015161234c906132df565b90825191829186830161235e9161193c565b6123679161193c565b038681018252612377908261028f565b916000925b6101208601805151851015611abe576119a761240461012093611aa86123c96123c38a6001978f611a5c908f6123b78f6119a7611a43612a27565b0390810188528761028f565b5161349e565b6123f68d8c611a8e8c6119a76123e96119e188516001600160401b031690565b915198899485019061193c565b88519485938c85019061193c565b940193905061237c565b6124379061241a61361c565b61242261361c565b61242a61361c565b61243261361c565b611c9e565b61243f61361c565b61244761361c565b61244f611d1b565b8051906001600160401b03821161024157600160401b821161024157600f5482600f5580831061250b575b50602080910190600f60005260005b8381106124d957505050506124cf906124a86124a3611d1b565b612f79565b6124ba600160ff196019541617601955565b6124c2612e29565b6124ca612e9f565b600755565b6102dd6020600855565b82517f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80282015591810191600101612489565b827f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80291820191015b818110612540575061247a565b60008155600101612533565b6002548110156108af57600260005260011b7f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0190600090565b90600182811c921680156125b6575b60208310146125a057565b634e487b7160e01b600052602260045260246000fd5b91607f1691612595565b90601f81116125ce57505050565b6000916000526020600020906020601f850160051c8301941061260c575b601f0160051c01915b82811061260157505050565b8181556001016125f5565b90925082906125ec565b9291906127115761ffff81511661ffff19845416178355600180930190602080910151938451916001600160401b0383116102415761265f836126598654612586565b866125c0565b602091601f84116001146126a35750508190612694939495600092612698575b50508160011b916000199060031b1c19161790565b9055565b01519050388061267f565b95601f929192198416966126bc86600052602060002090565b936000915b8983106126fa57505050836001959697106126e1575b505050811b019055565b015160001960f88460031b161c191690553880806126d7565b8385015186559485019493810193918101916126c1565b634e487b7160e01b600052600060045260246000fd5b6002549160035480841160001461277d57506102dd92506127566040519261274e84610226565b61ffff168352565b602082015261277760035461277261276d82611d72565b600355565b61254c565b90612616565b61278690611d72565b60035561ffff6040519261279984610226565b1682526020820152600160401b821015610241576127778260016102dd940160025561254c565b906127ca82610442565b60406127d9604051928361028f565b83825281936127ea601f1991610442565b019160009060005b848110612800575050505050565b602090845161280e81610246565b8481528285818301526060878301528285010152016127f2565b9060405161283581610226565b809261ffff81541682526001809101916040519283600082549461285886612586565b93848452602096876001821691826000146128c4575050600114612885575b50506103469250038461028f565b86925060005281600020906000915b8583106128ac57505061034693508201013880612877565b8054838a018501528894508793909201918101612894565b925093505061034694915060ff191682840152151560051b8201013880612877565b604051906128f382610226565b6001825260203681840137565b6040519061290d82610226565b600a825260203681840137565b6129226128e6565b600861292d82611953565b5390565b6129396128e6565b601261292d82611953565b61294c6128e6565b600a61292d82611953565b61295f6128e6565b602861292d82611953565b6129726128e6565b603061292d82611953565b6129856128e6565b603861292d82611953565b6129986128e6565b607a61292d82611953565b6129ab612900565b60a260005b607f808311156129d55790608060019284161760208286010153019060071c906129b0565b50607f600192166020828501015301815290565b6129f1612900565b60f260016000826020850153019060071c906129b0565b612a10612900565b60fa60016000826020850153019060071c906129b0565b612a2f612900565b6101926001600060926020850153019060071c906129b0565b612a506128e6565b601061292d82611953565b612a636128e6565b601a61292d82611953565b612a766128e6565b602261292d82611953565b612a896128e6565b603261292d82611953565b612a9c6128e6565b604261292d82611953565b612aaf6128e6565b601861292d82611953565b9060809160806001600160401b03821610612b1657612ad7612900565b60005b607f80841115612afe57908560019285161760208285010153019160071c91612ada565b5090929350607f600192166020828501015301815290565b909150612b216128e6565b9060f81b6001600160f81b03191660001a61292d82611953565b6106d6612b7c6119a792612c34612c206119a7612c27612b59610ccb565b94612b6261291a565b9060409485928351998a916119a760209b8c85019061193c565b0398612b90601f199a8b810183528261028f565b612bcf89612bc3612bb36119e1612bac612bac895161ffff1690565b61ffff1690565b6119a7885195869485019061193c565b038b810183528261028f565b612bde89612bc3612bb3612a48565b612bfb89612bc3612bb36119e16119d88489015163ffffffff1690565b612c14612c06612a5b565b85519d8e938c85019061193c565b038981018c528b61028f565b01516132df565b915196879485019061193c565b0390810183528261028f565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761024157604093859385528380528360205251915afa612cbd5750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612d0d575b5050610ab057565b6000805160206140ee8339815191525416141590503880612d05565b6040519060125480835282602091602082019060126000526000805160206140ae833981519152936000905b828210612d6b575050506102dd9250038361028f565b855484526001958601958895509381019390910190612d55565b600160401b8111610241576011549080601155818110612da3575050565b60009060116000526000805160206140ce83398151915292830192015b828110612dcc57505050565b818155600101612dc0565b600160401b8111610241576012549080601255818110612df5575050565b60009060126000526000805160206140ae83398151915292830192015b828110612e1e57505050565b818155600101612e12565b600f546001600160401b03811161024157612e4381612d85565b601160009081527f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80280545b838310612e7b5750505050565b60018091920192835492816000805160206140ce8339815191520155019190612e6e565b6010546001600160401b03811161024157612eb981612dd7565b601260009081527f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67280545b838310612ef15750505050565b60018091920192835492816000805160206140ae8339815191520155019190612ee4565b6011546001600160401b03811161024157612f2f81612dd7565b601260009081526000805160206140ce83398151915280545b838310612f555750505050565b60018091920192835492816000805160206140ae8339815191520155019190612f48565b8051906001600160401b03821161024157600160401b82116102415760105482601055808310612ff2575b50602080910190601060005260005b838110612fc05750505050565b82517f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67282015591810191600101612fb3565b827f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67291820191015b8181106130275750612fa4565b6000815560010161301a565b8051906001600160401b0382116102415761304d82612d85565b602080910190601160005260005b8381106130685750505050565b82516000805160206140ce8339815191528201559181019160010161305b565b90600163ffffffff8093160191821161104257565b6130ac61186d60195460ff1690565b6131a4576130bf60ff1960195416601955565b6130ca600b54600c55565b6130d5600d54600e55565b6130ed6130e0612d29565b6130e8612f15565b613033565b6130f76000600b55565b6131016000600d55565b61310b6000600a55565b61311442601355565b6131456131296001546001600160401b031690565b6001600160401b03166001600160401b03196014541617601455565b613150601654601755565b61315b600054601855565b61316a60ff1960195416601955565b6131746000601655565b6102dd61318e61318960095463ffffffff1690565b613088565b63ffffffff1663ffffffff196009541617600955565b6109e763ffffffff6000196131be60095463ffffffff1690565b0116604051918291631c70a36560e21b83526004830191909163ffffffff6020820193169052565b6040516334509dd160e01b8152600481019190915273__$398d4f030862acab53d338aebf0b4256d7$__916020908183602481875af4928315610ff8576000936132ba575b506040516333aec0ad60e21b815260048101919091529192819083908180602481015b03915af4918215610ff857600092613297575b5061329190613283604051938492830195869091604092825260208201520190565b03601f19810183528261028f565b51902090565b8192506132b390613291923d8511610a5057610a41818361028f565b9190613261565b61324e9350906132d78392833d8511610a5057610a41818361028f565b93509061322b565b6106d660206132f76001600160401b03845116612aba565b604051938161330f86935180928680870191016105c1565b8201613323825180938680850191016105c1565b0103808452018261028f565b613337610ccb565b90613340612944565b60408051938460209384928383016133579161193c565b6133609161193c565b0393601f19948581018752613375908761028f565b80516133809061396d565b958651613393906001600160401b031690565b61339c90612aba565b9084519182918583016133ae9161193c565b6133b79161193c565b0386810182526133c7908261028f565b83519687918483016133d89161193c565b6133e19161193c565b0385810187526133f1908761028f565b6133f9612931565b95835196879184830161340b9161193c565b6134149161193c565b038581018752613424908761028f565b015161342f9061396d565b908151613442906001600160401b031690565b61344b90612aba565b94815195869185830161345d9161193c565b6134669161193c565b038481018652613476908661028f565b5193849283016134859161193c565b61348e9161193c565b0390810182526106d6908261028f565b6134a6610ccb565b906134af612944565b91604080805180956020948583016134c69161193c565b6134cf9161193c565b0393601f199485810187526134e4908761028f565b80516134ef90613a25565b958651613502906001600160401b031690565b61350b90612aba565b90835191829187830161351d9161193c565b6135269161193c565b038681018252613536908261028f565b82519687918683016135479161193c565b6135509161193c565b038581018752613560908761028f565b613568612a48565b95825196879186830161357a9161193c565b6135839161193c565b038581018752613593908761028f565b838101516135a39060ff16612aba565b9582519687918683016135b59161193c565b6135be9161193c565b0385810187526135ce908761028f565b6135d6612a5b565b9582519687918683016135e89161193c565b6135f19161193c565b038581018752613601908761028f565b015161360c906132df565b905193849283016134859161193c565b60ff60008051602061410e8339815191525460401c161561363957565b604051631afcd79f60e31b8152600490fd5b6136536112e0565b5060405161366081610246565b60008152600060208201526000604082015290565b9161367e611cf7565b600a5480151590816137b0575b506137a3575b6016541561379a575b600a5490810180911161104257600a55816000556001600160401b03600191166001600160401b031960015416176001556136d6600b54611d72565b6136df81600b55565b906136eb600d54611d72565b926011546136f885611903565b10156137895761372c9061371361370e86611903565b6108b4565b90919082549060031b91821b91600019901b1916179055565b9190915b8083161561373f5750600d5550565b908061377a61376e613759611e7061370e61377f966118f4565b613768611e7061370e86611903565b906131e6565b61371361370e846118f4565b611d65565b91811c9190613730565b61379290613ac2565b919091613730565b8260165561369a565b6137ab61309d565b613691565b905081810180911161104257600854103861368b565b6137ce610ccb565b906137d7612944565b60408051938460209384928383016137ee9161193c565b6137f79161193c565b0393601f1994858101875261380c908761028f565b805161381790613af8565b95865161382a906001600160401b031690565b61383390612aba565b9084519182918583016138459161193c565b61384e9161193c565b03868101825261385e908261028f565b835196879184830161386f9161193c565b6138789161193c565b038581018752613888908761028f565b613890612931565b9583519687918483016138a29161193c565b6138ab9161193c565b0385810187526138bb908761028f565b015161342f90611974565b90813b1561394c576000805160206140ee83398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a28051156139315761392e91613e9a565b50565b50503461393a57565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b6106d66119a76119a7612c34613a156119e16119d860206119a798613a0a6119a76139e4613999610ccb565b6139b36139a461291a565b6040519d8e938985019061193c565b039a6139c7601f199c8d810183528261028f565b612bc36119e66119e16139de6139de895160ff1690565b60ff1690565b6139fe6139ef612a48565b6040519a8b938785019061193c565b0389810189528861028f565b015163ffffffff1690565b604051958693602085019061193c565b6106d66119a76119a7612c34613a1560206119a796612c206119a7613a9c613a4b610ccb565b613a65613a5661291a565b6040519b8c938985019061193c565b0398613a79601f199a8b810183528261028f565b613a906119e66119e16139de6139de895160ff1690565b0389810183528261028f565b613ab6613aa7612931565b6040519889938785019061193c565b0387810187528661028f565b601154600160401b8110156102415760018101806011558110156108af5760116000526000805160206140ce8339815191520155565b613b00610ccb565b90613b09612944565b60409283518092602092838301613b1f9161193c565b613b289161193c565b0391601f19928381018252613b3d908261028f565b8351613b489061332f565b908151613b5b906001600160401b031690565b613b6490612aba565b908651918291858301613b769161193c565b613b7f9161193c565b038481018252613b8f908261028f565b8551918291848301613ba09161193c565b613ba99161193c565b038381018252613bb9908261028f565b80858386018585825151151595613cd1956119a795613c9d956119a795613c65956119a79b613e6f575b5050508091508b018a8a825151613e1d575b9091508c92613c076060850151613ee0565b8051613d6c575b506080613c5994613a0a613c4b956119e195613c3f6119d8966119a7613c32612957565b91519c8d9485019061193c565b0390810189528861028f565b8c519485938b85019061193c565b0388810183528261028f565b8060a08901878b825151613d34575b50505050613c91613c8361297d565b8a519485938985019061193c565b0386810183528261028f565b613cc5613cb76119e160c08901516001600160401b031690565b88519485938785019061193c565b0384810183528261028f565b60e081940190815151613ce8575b50505050905090565b613d2a9450946119a7612c27612c3493613d246119a799613d18613d0a612a94565b87519c8d938b85019061193c565b038881018b528a61028f565b516132df565b8038808080613cdf565b6119a79450613d639392613d24613c5993613d57613c4b946119a76123e9612a81565b038d810186528561028f565b3880878b613c74565b613c5994613a0a613c4b9585613c3f6119a7613e0d6119a7613e016080998b9f9b613df46119d89d6119e19f613dc390613db7613da7612a6e565b6119a7875195869485019061193c565b038c810183528261028f565b613de8613dda6119e186516001600160401b031690565b84519788938d85019061193c565b038a810186528561028f565b519485938885019061193c565b0385810183528261028f565b9a96505095509550509450613c0e565b92613e586119a79593613d24611aa894613e6697613e4c613e3c612a5b565b6119a788519a8b9485019061193c565b0390810187528661028f565b90519485938d85019061193c565b8a388a8a613bf5565b6119a79550611aa892613d24613e90969593613e5893613e4c613e3c612931565b388b818b8b613be3565b6000806106d693602081519101845af43d15613ed8573d91613ebb83610383565b92613ec9604051948561028f565b83523d6000602085013e61402a565b60609161402a565b613ee8610ccb565b9060ff613ef96139de835160ff1690565b16613fd3575b60208101613f146139de6139de835160ff1690565b613f86575b50604001613f2e6139de6139de835160ff1690565b613f36575090565b6106d6906119a7612c34613a156119e16139de6139de6119a798613f6b613f5b612aa7565b604051988993602085019061193c565b0396613f7f601f199889810189528861028f565b5160ff1690565b613fcc6119a7916119a7612c34613fbd6119e16139de6139de6040999a613f6b613fae612a48565b8c51988993602085019061193c565b8651958693602085019061193c565b9190613f19565b906140246119a76119a792613ff9613fe961291a565b604051938493602085019061193c565b039061400d601f199283810183528261028f565b612c34613a156119e16139de6139de895160ff1690565b90613eff565b90614051575080511561403f57602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614084575b614062575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561405a56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00bb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344431ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212205a949ce0ee2fc2b4e0706f0493844fdc8989e7295ca391d13555734473d63c7064736f6c63430008190033",
1062
+ "linkReferences": {
1063
+ "contracts/common/sysio_merkle.sol": {
1064
+ "sysio_merkle": [
1065
+ {
1066
+ "length": 20,
1067
+ "start": 12844
1068
+ }
1069
+ ]
1070
+ },
1071
+ "contracts/outpost/OPPCommon.sol": {
1072
+ "OPPCommon": [
1073
+ {
1074
+ "length": 20,
1075
+ "start": 5345
1076
+ }
1077
+ ]
1078
+ }
1079
+ },
1080
+ "deployedLinkReferences": {
1081
+ "contracts/common/sysio_merkle.sol": {
1082
+ "sysio_merkle": [
1083
+ {
1084
+ "length": 20,
1085
+ "start": 12797
1086
+ }
1087
+ ]
1088
+ },
1089
+ "contracts/outpost/OPPCommon.sol": {
1090
+ "OPPCommon": [
1091
+ {
1092
+ "length": 20,
1093
+ "start": 5298
1094
+ }
1095
+ ]
1096
+ }
1097
+ }
1098
+ }