@wireio/stake 0.3.1 → 0.3.69

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 (557) hide show
  1. package/README.md +185 -243
  2. package/lib/stake.browser.js +58399 -13167
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +16786 -3248
  5. package/lib/stake.js +59136 -13805
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +58399 -13167
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +6 -3
  10. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.dbg.json +4 -0
  11. package/src/assets/ethereum/hoodi/common/Base58.sol/Base58.json +164 -0
  12. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  13. package/src/assets/ethereum/hoodi/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  14. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  15. package/src/assets/ethereum/hoodi/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  16. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.dbg.json +4 -0
  17. package/src/assets/ethereum/hoodi/common/iodata.sol/iodata.json +618 -0
  18. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  19. package/src/assets/ethereum/hoodi/common/iodata_util.sol/iodata_util.json +40 -0
  20. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  21. package/src/assets/ethereum/hoodi/common/sysio_data.sol/sysio_data.json +10 -0
  22. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  23. package/src/assets/ethereum/hoodi/common/sysio_errors.sol/sysio_errors.json +10 -0
  24. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  25. package/src/assets/ethereum/hoodi/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  26. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  27. package/src/assets/ethereum/hoodi/common/sysio_name.sol/sysio_name.json +49 -0
  28. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  29. package/src/assets/ethereum/hoodi/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  30. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  31. package/src/assets/ethereum/hoodi/common/sysio_read.sol/sysio_read.json +1458 -0
  32. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  33. package/src/assets/ethereum/hoodi/common/sysio_tester.sol/SysioTester.json +1532 -0
  34. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  35. package/src/assets/ethereum/hoodi/common/sysio_verify.sol/sysio_verify.json +1525 -0
  36. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  37. package/src/assets/ethereum/hoodi/common/sysio_write.sol/sysio_write.json +1076 -0
  38. package/src/assets/ethereum/hoodi/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  39. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  40. package/src/assets/ethereum/hoodi/liqEth/DepositManager.sol/DepositManagerV2.json +985 -0
  41. package/src/assets/ethereum/hoodi/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  42. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  43. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IAccounting.json +182 -0
  44. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  45. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  46. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  47. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  48. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  49. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  50. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  51. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  52. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IStakingModule.json +1 -1
  53. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  54. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  55. package/src/assets/ethereum/hoodi/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  56. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/LiqEthCommon.json +2 -2
  57. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  58. package/src/assets/ethereum/hoodi/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  59. package/src/assets/ethereum/hoodi/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  60. package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthManaged.sol/LiqEthManaged.json +2 -2
  61. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  62. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  63. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  64. package/src/assets/ethereum/hoodi/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  65. package/src/assets/ethereum/hoodi/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  66. package/src/assets/ethereum/{ABI → hoodi}/liqEth/Yield.sol/YieldOracle.json +2 -2
  67. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.dbg.json +4 -0
  68. package/src/assets/ethereum/hoodi/liqEth/accounting.sol/AccountingV2.json +629 -0
  69. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  70. package/src/assets/ethereum/hoodi/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  71. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  72. package/src/assets/ethereum/hoodi/liqEth/stakingModule.sol/StakingModuleV2.json +1779 -0
  73. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  74. package/src/assets/ethereum/hoodi/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  75. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  76. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IAccounting.json +1 -1
  77. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  78. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  79. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  80. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  81. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  82. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  83. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  84. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20.json +1 -1
  85. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  86. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/LiqEthCommon.sol/IRewardsERC20Pausable.json +1 -1
  87. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  88. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  89. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  90. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  91. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  92. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  93. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  94. package/src/assets/ethereum/hoodi/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  95. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  96. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20.sol/RewardsERC20Upgradeable.json +1 -1
  97. package/src/assets/ethereum/hoodi/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  98. package/src/assets/ethereum/{ABI/liqEth → hoodi/liqEth/v1}/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +1 -1
  99. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  100. package/src/assets/ethereum/hoodi/liqEth/v1/accounting.sol/Accounting.json +548 -0
  101. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  102. package/src/assets/ethereum/hoodi/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  103. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  104. package/src/assets/ethereum/hoodi/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  105. package/src/assets/ethereum/hoodi/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  106. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +2 -2
  107. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  108. package/src/assets/ethereum/{ABI → hoodi}/liqEth/withdrawalVault.sol/Uint64BE.json +2 -2
  109. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  110. package/src/assets/ethereum/hoodi/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  111. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.dbg.json +4 -0
  112. package/src/assets/ethereum/hoodi/outpost/BAR.sol/BAR.json +1111 -0
  113. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.dbg.json +4 -0
  114. package/src/assets/ethereum/hoodi/outpost/Depositor.sol/Depositor.json +1696 -0
  115. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  116. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  117. package/src/assets/ethereum/hoodi/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +274 -0
  118. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.dbg.json +4 -0
  119. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeDepositCodec.json +10 -0
  120. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.dbg.json +4 -0
  121. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawCodec.json +10 -0
  122. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.dbg.json +4 -0
  123. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/BridgeWithdrawConfirmCodec.json +10 -0
  124. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.dbg.json +4 -0
  125. package/src/assets/ethereum/hoodi/outpost/InstaswapBridgeAttestations.sol/InstaswapBridgeAttestationTypeLib.json +10 -0
  126. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.dbg.json +4 -0
  127. package/src/assets/ethereum/hoodi/outpost/LiqEthBridge.sol/LiqEthBridge.json +1044 -0
  128. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.dbg.json +4 -0
  129. package/src/assets/ethereum/hoodi/outpost/OPP.sol/OPP.json +1055 -0
  130. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  131. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPP.json +81 -0
  132. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  133. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  134. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPInbound.json +330 -0
  135. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  136. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPReceiver.json +29 -0
  137. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  138. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/IOPPSender.json +41 -0
  139. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  140. package/src/assets/ethereum/hoodi/outpost/OPPCommon.sol/OPPCommon.json +287 -0
  141. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  142. package/src/assets/ethereum/hoodi/outpost/OPPEndpoint.sol/OPPEndpoint.json +294 -0
  143. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  144. package/src/assets/ethereum/hoodi/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +415 -0
  145. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  146. package/src/assets/ethereum/hoodi/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +399 -0
  147. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  148. package/src/assets/ethereum/hoodi/outpost/OPPErrors.sol/OPPErrors.json +245 -0
  149. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  150. package/src/assets/ethereum/hoodi/outpost/OPPInbound.sol/OPPInbound.json +1204 -0
  151. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  152. package/src/assets/ethereum/hoodi/outpost/OPPReceiver.sol/OPPReceiver.json +312 -0
  153. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  154. package/src/assets/ethereum/hoodi/outpost/OPPSender.sol/OPPSender.json +324 -0
  155. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.dbg.json +4 -0
  156. package/src/assets/ethereum/hoodi/outpost/OperatorRegistry.sol/OperatorRegistry.json +1068 -0
  157. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  158. package/src/assets/ethereum/hoodi/outpost/OutpostErrors.sol/OutpostErrors.json +211 -0
  159. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  160. package/src/assets/ethereum/hoodi/outpost/OutpostManaged.sol/OutpostManaged.json +229 -0
  161. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  162. package/src/assets/ethereum/hoodi/outpost/OutpostManager.sol/OutpostManager.json +751 -0
  163. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  164. package/src/assets/ethereum/hoodi/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +1432 -0
  165. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  166. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostManager.json +130 -0
  167. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  168. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  169. package/src/assets/ethereum/hoodi/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +141 -0
  170. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  171. package/src/assets/ethereum/hoodi/outpost/OutpostOwnable.sol/OutpostOwnable.json +213 -0
  172. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.dbg.json +4 -0
  173. package/src/assets/ethereum/hoodi/outpost/OutpostReserve.sol/OutpostReserve.json +888 -0
  174. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.dbg.json +4 -0
  175. package/src/assets/ethereum/hoodi/outpost/Pool.sol/Pool.json +659 -0
  176. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.dbg.json +4 -0
  177. package/src/assets/ethereum/hoodi/outpost/Pretoken.sol/Pretoken.json +1393 -0
  178. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  179. package/src/assets/ethereum/hoodi/outpost/ReceiptNFT.sol/ReceiptNFT.json +1738 -0
  180. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.dbg.json +4 -0
  181. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapConfirmCodec.json +10 -0
  182. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.dbg.json +4 -0
  183. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapFailedCodec.json +10 -0
  184. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.dbg.json +4 -0
  185. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapRequestCodec.json +10 -0
  186. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.dbg.json +4 -0
  187. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/InstaswapSettlementCodec.json +10 -0
  188. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.dbg.json +4 -0
  189. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitConfirmCodec.json +10 -0
  190. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.dbg.json +4 -0
  191. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitFailedCodec.json +10 -0
  192. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.dbg.json +4 -0
  193. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalExitRequestCodec.json +10 -0
  194. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.dbg.json +4 -0
  195. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/PrincipalStakeDeltaCodec.json +10 -0
  196. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.dbg.json +4 -0
  197. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAssetCodec.json +10 -0
  198. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.dbg.json +4 -0
  199. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestationTypeLib.json +10 -0
  200. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.dbg.json +4 -0
  201. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/WireYieldHubAttestations.json +1437 -0
  202. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.dbg.json +4 -0
  203. package/src/assets/ethereum/hoodi/outpost/WireYieldHubAttestations.sol/YieldDepositCodec.json +10 -0
  204. package/src/assets/ethereum/hoodi/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  205. package/src/assets/ethereum/hoodi/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  206. package/src/assets/ethereum/hoodi/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  207. package/src/assets/ethereum/hoodi/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  208. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  209. package/src/assets/ethereum/hoodi/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  210. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  211. package/src/assets/ethereum/hoodi/token/ERC20Token.sol/ERC20Token.json +330 -0
  212. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  213. package/src/assets/ethereum/hoodi/token/ERC721Token.sol/ERC721Token.json +449 -0
  214. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.dbg.json +4 -0
  215. package/src/assets/ethereum/hoodi/token/Eman1155.sol/Eman1155.json +560 -0
  216. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.dbg.json +4 -0
  217. package/src/assets/ethereum/hoodi/token/Eman20.sol/Eman20.json +460 -0
  218. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.dbg.json +4 -0
  219. package/src/assets/ethereum/hoodi/token/Eman721.sol/Eman721.json +624 -0
  220. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.dbg.json +4 -0
  221. package/src/assets/ethereum/mainnet/common/Base58.sol/Base58.json +164 -0
  222. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.dbg.json +4 -0
  223. package/src/assets/ethereum/mainnet/common/OpenZepArtifacts.sol/__Dummy_OZ_UUPS__.json +76 -0
  224. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.dbg.json +4 -0
  225. package/src/assets/ethereum/mainnet/common/RestrictedCallers.sol/RestrictedCallers.json +10 -0
  226. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.dbg.json +4 -0
  227. package/src/assets/ethereum/mainnet/common/iodata.sol/iodata.json +618 -0
  228. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.dbg.json +4 -0
  229. package/src/assets/ethereum/mainnet/common/iodata_util.sol/iodata_util.json +40 -0
  230. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.dbg.json +4 -0
  231. package/src/assets/ethereum/mainnet/common/sysio_data.sol/sysio_data.json +10 -0
  232. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.dbg.json +4 -0
  233. package/src/assets/ethereum/mainnet/common/sysio_errors.sol/sysio_errors.json +10 -0
  234. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.dbg.json +4 -0
  235. package/src/assets/ethereum/mainnet/common/sysio_merkle.sol/sysio_merkle.json +233 -0
  236. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.dbg.json +4 -0
  237. package/src/assets/ethereum/mainnet/common/sysio_name.sol/sysio_name.json +49 -0
  238. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.dbg.json +4 -0
  239. package/src/assets/ethereum/mainnet/common/sysio_pubkey.sol/sysio_pubkey.json +64 -0
  240. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.dbg.json +4 -0
  241. package/src/assets/ethereum/mainnet/common/sysio_read.sol/sysio_read.json +1458 -0
  242. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.dbg.json +4 -0
  243. package/src/assets/ethereum/mainnet/common/sysio_tester.sol/SysioTester.json +1532 -0
  244. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.dbg.json +4 -0
  245. package/src/assets/ethereum/mainnet/common/sysio_verify.sol/sysio_verify.json +1525 -0
  246. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.dbg.json +4 -0
  247. package/src/assets/ethereum/mainnet/common/sysio_write.sol/sysio_write.json +1076 -0
  248. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.dbg.json +4 -0
  249. package/src/assets/ethereum/mainnet/liqEth/BeaconState.sol/BeaconState.json +807 -0
  250. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.dbg.json +4 -0
  251. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/DepositManagerV2.json +1004 -0
  252. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.dbg.json +4 -0
  253. package/src/assets/ethereum/mainnet/liqEth/DepositManager.sol/IStakingModuleBondLocker.json +29 -0
  254. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.dbg.json +4 -0
  255. package/src/assets/ethereum/mainnet/liqEth/KeyBondManager.sol/KeyBondManager.json +897 -0
  256. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +4 -0
  257. package/src/assets/ethereum/mainnet/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +1289 -0
  258. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  259. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  260. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  261. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  262. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.dbg.json +4 -0
  263. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IKeyBondManager.json +189 -0
  264. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  265. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  266. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  267. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20.json +319 -0
  268. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  269. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.json +333 -0
  270. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  271. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IStakingModule.json +279 -0
  272. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  273. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  274. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  275. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  276. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  277. package/src/assets/ethereum/mainnet/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  278. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.dbg.json +4 -0
  279. package/src/assets/ethereum/mainnet/liqEth/LiqEthDeepFreeze.sol/LiqEthDeepFreeze.json +236 -0
  280. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +4 -0
  281. package/src/assets/ethereum/mainnet/liqEth/LiqEthManaged.sol/LiqEthManaged.json +229 -0
  282. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.dbg.json +4 -0
  283. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20.sol/RewardsERC20UpgradeableV2.json +957 -0
  284. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.dbg.json +4 -0
  285. package/src/assets/ethereum/mainnet/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeableV2.json +1020 -0
  286. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.dbg.json +4 -0
  287. package/src/assets/ethereum/mainnet/liqEth/StakingLib.sol/StakingLib.json +89 -0
  288. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  289. package/src/assets/ethereum/mainnet/liqEth/Yield.sol/YieldOracle.json +1376 -0
  290. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.dbg.json +4 -0
  291. package/src/assets/ethereum/mainnet/liqEth/liqEth.sol/LiqEthTokenV2.json +1323 -0
  292. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.dbg.json +4 -0
  293. package/src/assets/ethereum/mainnet/liqEth/stakingModule.sol/StakingModuleV2.json +1896 -0
  294. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.dbg.json +4 -0
  295. package/src/assets/ethereum/mainnet/liqEth/v1/DepositManager.sol/DepositManager.json +978 -0
  296. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  297. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IAccounting.json +176 -0
  298. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  299. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositContract.json +39 -0
  300. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  301. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IDepositManager.json +64 -0
  302. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +4 -0
  303. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/ILiqEthUpgradeable.json +29 -0
  304. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  305. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20.json +249 -0
  306. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +4 -0
  307. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IRewardsERC20Pausable.json +263 -0
  308. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  309. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IStakingModule.json +344 -0
  310. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  311. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IValidatorBalanceVerifier.json +129 -0
  312. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  313. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/IWithdrawalRecord.json +66 -0
  314. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  315. package/src/assets/ethereum/mainnet/liqEth/v1/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  316. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +4 -0
  317. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20.sol/RewardsERC20Upgradeable.json +874 -0
  318. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +4 -0
  319. package/src/assets/ethereum/mainnet/liqEth/v1/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.json +937 -0
  320. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.dbg.json +4 -0
  321. package/src/assets/ethereum/mainnet/liqEth/v1/accounting.sol/Accounting.json +542 -0
  322. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.dbg.json +4 -0
  323. package/src/assets/ethereum/mainnet/liqEth/v1/liqEth.sol/LiqEthToken.json +1233 -0
  324. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.dbg.json +4 -0
  325. package/src/assets/ethereum/mainnet/liqEth/v1/stakingModule.sol/StakingModule.json +1772 -0
  326. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  327. package/src/assets/ethereum/mainnet/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +973 -0
  328. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  329. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  330. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  331. package/src/assets/ethereum/mainnet/liqEth/withdrawalVault.sol/WithdrawalVault.json +441 -0
  332. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.dbg.json +4 -0
  333. package/src/assets/ethereum/mainnet/outpost/BAR.sol/BARV2.json +1915 -0
  334. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.dbg.json +4 -0
  335. package/src/assets/ethereum/mainnet/outpost/Depositor.sol/DepositorV2.json +1845 -0
  336. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +4 -0
  337. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +122 -0
  338. package/src/assets/ethereum/mainnet/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +4 -0
  339. package/src/assets/ethereum/{ABI → mainnet}/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.json +31 -29
  340. package/src/assets/ethereum/mainnet/outpost/OPP.sol/OPP.dbg.json +4 -0
  341. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPP.dbg.json +4 -0
  342. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +4 -0
  343. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPEndpoint.json +29 -0
  344. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPInbound.dbg.json +4 -0
  345. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +4 -0
  346. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/IOPPSender.dbg.json +4 -0
  347. package/src/assets/ethereum/mainnet/outpost/OPPCommon.sol/OPPCommon.dbg.json +4 -0
  348. package/src/assets/ethereum/mainnet/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +4 -0
  349. package/src/assets/ethereum/mainnet/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +4 -0
  350. package/src/assets/ethereum/mainnet/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +4 -0
  351. package/src/assets/ethereum/mainnet/outpost/OPPErrors.sol/OPPErrors.dbg.json +4 -0
  352. package/src/assets/ethereum/mainnet/outpost/OPPInbound.sol/OPPInbound.dbg.json +4 -0
  353. package/src/assets/ethereum/mainnet/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +4 -0
  354. package/src/assets/ethereum/mainnet/outpost/OPPSender.sol/OPPSender.dbg.json +4 -0
  355. package/src/assets/ethereum/mainnet/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +4 -0
  356. package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostErrors.sol/OutpostErrors.json +33 -18
  357. package/src/assets/ethereum/mainnet/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +4 -0
  358. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.dbg.json +4 -0
  359. package/src/assets/ethereum/mainnet/outpost/OutpostManager.sol/OutpostManagerV2.json +737 -0
  360. package/src/assets/ethereum/mainnet/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +4 -0
  361. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +4 -0
  362. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +4 -0
  363. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +29 -0
  364. package/src/assets/ethereum/mainnet/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +4 -0
  365. package/src/assets/ethereum/mainnet/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +4 -0
  366. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.dbg.json +4 -0
  367. package/src/assets/ethereum/mainnet/outpost/Pool.sol/PoolV2.json +943 -0
  368. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.dbg.json +4 -0
  369. package/src/assets/ethereum/mainnet/outpost/Pretoken.sol/PretokenV2.json +1703 -0
  370. package/src/assets/ethereum/mainnet/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +4 -0
  371. package/src/assets/ethereum/{ABI → mainnet}/outpost/ReceiptNFT.sol/ReceiptNFT.json +33 -18
  372. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +4 -0
  373. package/src/assets/ethereum/mainnet/outpost/interfaces/IPretoken.sol/IPretoken.json +29 -0
  374. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +4 -0
  375. package/src/assets/ethereum/mainnet/outpost/interfaces/IWarrant.sol/IWarrant.json +29 -0
  376. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +4 -0
  377. package/src/assets/ethereum/mainnet/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +858 -0
  378. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +4 -0
  379. package/src/assets/ethereum/mainnet/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +30 -0
  380. package/src/assets/ethereum/mainnet/outpost/v1/BAR.sol/BAR.dbg.json +4 -0
  381. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/BAR.sol/BAR.json +34 -19
  382. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.dbg.json +4 -0
  383. package/src/assets/ethereum/mainnet/outpost/v1/Depositor.sol/Depositor.json +1653 -0
  384. package/src/assets/ethereum/mainnet/outpost/v1/OutpostManager.sol/OutpostManager.dbg.json +4 -0
  385. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/OutpostManager.sol/OutpostManager.json +3 -3
  386. package/src/assets/ethereum/mainnet/outpost/v1/Pool.sol/Pool.dbg.json +4 -0
  387. package/src/assets/ethereum/{ABI/outpost → mainnet/outpost/v1}/Pool.sol/Pool.json +34 -19
  388. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.dbg.json +4 -0
  389. package/src/assets/ethereum/mainnet/outpost/v1/Pretoken.sol/Pretoken.json +1665 -0
  390. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  391. package/src/assets/ethereum/mainnet/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  392. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  393. package/src/assets/ethereum/mainnet/token/ERC20Token.sol/ERC20Token.json +330 -0
  394. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  395. package/src/assets/ethereum/mainnet/token/ERC721Token.sol/ERC721Token.json +449 -0
  396. package/src/assets/solana/devnet/idl/liqsol_core.json +8566 -0
  397. package/src/assets/solana/{idl → devnet/idl}/liqsol_token.json +35 -1
  398. package/src/assets/solana/devnet/idl/transfer_hook.json +490 -0
  399. package/src/assets/solana/devnet/idl/validator_leaderboard.json +735 -0
  400. package/src/assets/solana/devnet/types/liqsol_core.ts +8572 -0
  401. package/src/assets/solana/{types → devnet/types}/liqsol_token.ts +35 -1
  402. package/src/assets/solana/devnet/types/transfer_hook.ts +496 -0
  403. package/src/assets/solana/devnet/types/validator_leaderboard.ts +741 -0
  404. package/src/assets/solana/{idl → mainnet/idl}/liqsol_core.json +3816 -1567
  405. package/src/assets/solana/mainnet/idl/liqsol_token.json +217 -0
  406. package/src/assets/solana/mainnet/idl/transfer_hook.json +479 -0
  407. package/src/assets/solana/{idl → mainnet/idl}/validator_leaderboard.json +4 -4
  408. package/src/assets/solana/{types → mainnet/types}/liqsol_core.ts +3816 -1567
  409. package/src/assets/solana/mainnet/types/liqsol_token.ts +223 -0
  410. package/src/assets/solana/mainnet/types/transfer_hook.ts +485 -0
  411. package/src/assets/solana/{types → mainnet/types}/validator_leaderboard.ts +4 -4
  412. package/src/assets/solana/realdevnet/idl/liqsol_core.json +7112 -0
  413. package/src/assets/solana/realdevnet/idl/liqsol_token.json +217 -0
  414. package/src/assets/solana/realdevnet/idl/transfer_hook.json +479 -0
  415. package/src/assets/solana/realdevnet/idl/validator_leaderboard.json +735 -0
  416. package/src/assets/solana/realdevnet/types/liqsol_core.ts +7118 -0
  417. package/src/assets/solana/realdevnet/types/liqsol_token.ts +223 -0
  418. package/src/assets/solana/realdevnet/types/transfer_hook.ts +485 -0
  419. package/src/assets/solana/realdevnet/types/validator_leaderboard.ts +741 -0
  420. package/src/index.ts +2 -2
  421. package/src/networks/ethereum/clients/{deposit.client.ts → convert.client.ts} +66 -5
  422. package/src/networks/ethereum/clients/opp.client.ts +389 -0
  423. package/src/networks/ethereum/clients/pretoken.client.ts +87 -49
  424. package/src/networks/ethereum/clients/receipt.client.ts +199 -0
  425. package/src/networks/ethereum/clients/stake.client.ts +86 -161
  426. package/src/networks/ethereum/clients/validator.client.ts +61 -0
  427. package/src/networks/ethereum/contract.ts +424 -151
  428. package/src/networks/ethereum/ethereum.ts +454 -244
  429. package/src/networks/ethereum/types.ts +65 -27
  430. package/src/networks/ethereum/utils.ts +104 -72
  431. package/src/networks/solana/clients/convert.client.ts +341 -0
  432. package/src/networks/solana/clients/distribution.client.ts +269 -263
  433. package/src/networks/solana/clients/leaderboard.client.ts +68 -26
  434. package/src/networks/solana/clients/outpost.client.ts +224 -357
  435. package/src/networks/solana/clients/token.client.ts +96 -106
  436. package/src/networks/solana/constants.ts +88 -216
  437. package/src/networks/solana/program.ts +432 -28
  438. package/src/networks/solana/solana.ts +1064 -292
  439. package/src/networks/solana/types.ts +688 -78
  440. package/src/networks/solana/utils.ts +161 -358
  441. package/src/staker.ts +25 -4
  442. package/src/types.ts +267 -31
  443. package/src/assets/ethereum/ABI/liqEth/BeaconState.sol/BeaconState.dbg.json +0 -4
  444. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +0 -4
  445. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +0 -952
  446. package/src/assets/ethereum/ABI/liqEth/LiqEthAuthority.sol/LiqEthAuthority.dbg.json +0 -4
  447. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +0 -4
  448. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +0 -4
  449. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +0 -4
  450. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.dbg.json +0 -4
  451. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +0 -4
  452. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20Pausable.dbg.json +0 -4
  453. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +0 -4
  454. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +0 -4
  455. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +0 -4
  456. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +0 -4
  457. package/src/assets/ethereum/ABI/liqEth/LiqEthManaged.sol/LiqEthManaged.dbg.json +0 -4
  458. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20Upgradeable.dbg.json +0 -4
  459. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20PausableUpgradeable.dbg.json +0 -4
  460. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +0 -4
  461. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.json +0 -10
  462. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +0 -4
  463. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.json +0 -10
  464. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZExtras.dbg.json +0 -4
  465. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZExtras.json +0 -10
  466. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZVec48.dbg.json +0 -4
  467. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZVec48.json +0 -10
  468. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +0 -4
  469. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json +0 -291
  470. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +0 -4
  471. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +0 -4
  472. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +0 -555
  473. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +0 -4
  474. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +0 -1202
  475. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +0 -4
  476. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +0 -1791
  477. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +0 -4
  478. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +0 -4
  479. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +0 -4
  480. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +0 -460
  481. package/src/assets/ethereum/ABI/outpost/Aggregator.sol/Aggregator.json +0 -82
  482. package/src/assets/ethereum/ABI/outpost/BAR.sol/BAR.dbg.json +0 -4
  483. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.dbg.json +0 -4
  484. package/src/assets/ethereum/ABI/outpost/Depositor.sol/Depositor.json +0 -1638
  485. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.dbg.json +0 -4
  486. package/src/assets/ethereum/ABI/outpost/EthUsdPriceConsumer.sol/EthUsdPriceConsumer.dbg.json +0 -4
  487. package/src/assets/ethereum/ABI/outpost/OPP.sol/OPP.dbg.json +0 -4
  488. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPP.dbg.json +0 -4
  489. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPEndpoint.dbg.json +0 -4
  490. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPInbound.dbg.json +0 -4
  491. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPReceiver.dbg.json +0 -4
  492. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/IOPPSender.dbg.json +0 -4
  493. package/src/assets/ethereum/ABI/outpost/OPPCommon.sol/OPPCommon.dbg.json +0 -4
  494. package/src/assets/ethereum/ABI/outpost/OPPEndpoint.sol/OPPEndpoint.dbg.json +0 -4
  495. package/src/assets/ethereum/ABI/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.dbg.json +0 -4
  496. package/src/assets/ethereum/ABI/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.dbg.json +0 -4
  497. package/src/assets/ethereum/ABI/outpost/OPPErrors.sol/OPPErrors.dbg.json +0 -4
  498. package/src/assets/ethereum/ABI/outpost/OPPInbound.sol/OPPInbound.dbg.json +0 -4
  499. package/src/assets/ethereum/ABI/outpost/OPPReceiver.sol/OPPReceiver.dbg.json +0 -4
  500. package/src/assets/ethereum/ABI/outpost/OPPSender.sol/OPPSender.dbg.json +0 -4
  501. package/src/assets/ethereum/ABI/outpost/OutpostErrors.sol/OutpostErrors.dbg.json +0 -4
  502. package/src/assets/ethereum/ABI/outpost/OutpostManaged.sol/OutpostManaged.dbg.json +0 -4
  503. package/src/assets/ethereum/ABI/outpost/OutpostManager.sol/OutpostManager.dbg.json +0 -4
  504. package/src/assets/ethereum/ABI/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.dbg.json +0 -4
  505. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostManager.dbg.json +0 -4
  506. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.dbg.json +0 -4
  507. package/src/assets/ethereum/ABI/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.dbg.json +0 -4
  508. package/src/assets/ethereum/ABI/outpost/OutpostOwnable.sol/OutpostOwnable.dbg.json +0 -4
  509. package/src/assets/ethereum/ABI/outpost/Pool.sol/Pool.dbg.json +0 -4
  510. package/src/assets/ethereum/ABI/outpost/Pretoken.sol/Pretoken.dbg.json +0 -4
  511. package/src/assets/ethereum/ABI/outpost/Pretoken.sol/Pretoken.json +0 -1650
  512. package/src/assets/ethereum/ABI/outpost/ReceiptNFT.sol/ReceiptNFT.dbg.json +0 -4
  513. package/src/assets/ethereum/ABI/outpost/interfaces/IPretoken.sol/IPretoken.dbg.json +0 -4
  514. package/src/assets/ethereum/ABI/outpost/interfaces/IWarrant.sol/IWarrant.dbg.json +0 -4
  515. package/src/assets/ethereum/ABI/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.dbg.json +0 -4
  516. package/src/assets/ethereum/ABI/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.dbg.json +0 -4
  517. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +0 -4
  518. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +0 -472
  519. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +0 -4
  520. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +0 -330
  521. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +0 -4
  522. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +0 -449
  523. package/src/networks/ethereum/clients/liq.client.ts +0 -47
  524. package/src/networks/solana/clients/deposit.client.ts +0 -127
  525. package/src/staker/types.ts +0 -62
  526. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/BeaconState.sol/BeaconState.json +0 -0
  527. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthAuthority.sol/LiqEthAuthority.json +0 -0
  528. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositContract.json +0 -0
  529. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IDepositManager.json +0 -0
  530. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/ILiqEthUpgradeable.json +0 -0
  531. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +0 -0
  532. /package/src/assets/ethereum/{ABI → hoodi}/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +0 -0
  533. /package/src/assets/ethereum/{ABI → hoodi}/outpost/EthUsdPriceConsumer.sol/AggregatorV3Interface.json +0 -0
  534. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OPPCommon.sol/IOPPEndpoint.json +0 -0
  535. /package/src/assets/ethereum/{ABI → hoodi}/outpost/OutpostManagerCommon.sol/IOutpostUpgradeable.json +0 -0
  536. /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IPretoken.sol/IPretoken.json +0 -0
  537. /package/src/assets/ethereum/{ABI → hoodi}/outpost/interfaces/IWarrant.sol/IWarrant.json +0 -0
  538. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/ERC721EthEquivalentVotesUpgradeable.sol/ERC721EthEquivalentVotesUpgradeable.json +0 -0
  539. /package/src/assets/ethereum/{ABI → hoodi}/outpost/token/IERC721EthEquivalent.sol/IERC721EthEquivalent.json +0 -0
  540. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPP.sol/OPP.json +0 -0
  541. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPP.json +0 -0
  542. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPInbound.json +0 -0
  543. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPReceiver.json +0 -0
  544. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/IOPPSender.json +0 -0
  545. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPCommon.sol/OPPCommon.json +0 -0
  546. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpoint.sol/OPPEndpoint.json +0 -0
  547. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointManaged.sol/OPPEndpointManaged.json +0 -0
  548. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPEndpointOwnable.sol/OPPEndpointOwnable.json +0 -0
  549. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPErrors.sol/OPPErrors.json +0 -0
  550. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPInbound.sol/OPPInbound.json +0 -0
  551. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPReceiver.sol/OPPReceiver.json +0 -0
  552. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OPPSender.sol/OPPSender.json +0 -0
  553. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManaged.sol/OutpostManaged.json +0 -0
  554. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerAuthority.sol/OutpostManagerAuthority.json +0 -0
  555. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/IOutpostManager.json +0 -0
  556. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostManagerCommon.sol/OutpostManagerCommon.json +0 -0
  557. /package/src/assets/ethereum/{ABI → mainnet}/outpost/OutpostOwnable.sol/OutpostOwnable.json +0 -0
@@ -0,0 +1,1055 @@
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": "bytes32",
90
+ "name": "expected",
91
+ "type": "bytes32"
92
+ },
93
+ {
94
+ "internalType": "bytes32",
95
+ "name": "actual",
96
+ "type": "bytes32"
97
+ }
98
+ ],
99
+ "name": "OPP_EpochHashMismatch",
100
+ "type": "error"
101
+ },
102
+ {
103
+ "inputs": [
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "required",
107
+ "type": "uint256"
108
+ },
109
+ {
110
+ "internalType": "uint256",
111
+ "name": "provided",
112
+ "type": "uint256"
113
+ }
114
+ ],
115
+ "name": "OPP_InsufficientSignatureWeight",
116
+ "type": "error"
117
+ },
118
+ {
119
+ "inputs": [
120
+ {
121
+ "internalType": "address",
122
+ "name": "caller",
123
+ "type": "address"
124
+ },
125
+ {
126
+ "internalType": "address",
127
+ "name": "expected",
128
+ "type": "address"
129
+ }
130
+ ],
131
+ "name": "OPP_InvalidOPPAddress",
132
+ "type": "error"
133
+ },
134
+ {
135
+ "inputs": [
136
+ {
137
+ "internalType": "bytes",
138
+ "name": "expected",
139
+ "type": "bytes"
140
+ },
141
+ {
142
+ "internalType": "bytes",
143
+ "name": "actual",
144
+ "type": "bytes"
145
+ }
146
+ ],
147
+ "name": "OPP_MessageIDMismatch",
148
+ "type": "error"
149
+ },
150
+ {
151
+ "inputs": [],
152
+ "name": "OPP_NoAttestationsSent",
153
+ "type": "error"
154
+ },
155
+ {
156
+ "inputs": [],
157
+ "name": "OPP_NoPendingAttestations",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [
162
+ {
163
+ "internalType": "uint32",
164
+ "name": "expected",
165
+ "type": "uint32"
166
+ },
167
+ {
168
+ "internalType": "uint32",
169
+ "name": "actual",
170
+ "type": "uint32"
171
+ }
172
+ ],
173
+ "name": "OPP_NonSequentialEpoch",
174
+ "type": "error"
175
+ },
176
+ {
177
+ "inputs": [],
178
+ "name": "OPP_NotSending",
179
+ "type": "error"
180
+ },
181
+ {
182
+ "inputs": [],
183
+ "name": "OPP_OPPAddressNotSet",
184
+ "type": "error"
185
+ },
186
+ {
187
+ "inputs": [
188
+ {
189
+ "internalType": "bytes32",
190
+ "name": "expected",
191
+ "type": "bytes32"
192
+ },
193
+ {
194
+ "internalType": "bytes32",
195
+ "name": "actual",
196
+ "type": "bytes32"
197
+ }
198
+ ],
199
+ "name": "OPP_PayloadChecksumMismatch",
200
+ "type": "error"
201
+ },
202
+ {
203
+ "inputs": [
204
+ {
205
+ "internalType": "uint32",
206
+ "name": "epochIndex",
207
+ "type": "uint32"
208
+ },
209
+ {
210
+ "internalType": "uint256",
211
+ "name": "messageCount",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "name": "OPP_PreviousEpochPendingMessages",
216
+ "type": "error"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "uint32",
222
+ "name": "epochIndex",
223
+ "type": "uint32"
224
+ }
225
+ ],
226
+ "name": "OPP_PreviousEpochSent",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "uint32",
233
+ "name": "epochIndex",
234
+ "type": "uint32"
235
+ }
236
+ ],
237
+ "name": "OPP_PreviousEpochUnsent",
238
+ "type": "error"
239
+ },
240
+ {
241
+ "inputs": [
242
+ {
243
+ "internalType": "uint256",
244
+ "name": "stack",
245
+ "type": "uint256"
246
+ }
247
+ ],
248
+ "name": "OPP_SendStackError",
249
+ "type": "error"
250
+ },
251
+ {
252
+ "inputs": [
253
+ {
254
+ "internalType": "uint256",
255
+ "name": "expectedMaxAttestations",
256
+ "type": "uint256"
257
+ },
258
+ {
259
+ "internalType": "uint256",
260
+ "name": "actualAttestations",
261
+ "type": "uint256"
262
+ }
263
+ ],
264
+ "name": "OPP_TooManyAttestations",
265
+ "type": "error"
266
+ },
267
+ {
268
+ "inputs": [
269
+ {
270
+ "internalType": "uint256",
271
+ "name": "expectedMaxMessages",
272
+ "type": "uint256"
273
+ },
274
+ {
275
+ "internalType": "uint256",
276
+ "name": "actualMessages",
277
+ "type": "uint256"
278
+ }
279
+ ],
280
+ "name": "OPP_TooManyMessages",
281
+ "type": "error"
282
+ },
283
+ {
284
+ "inputs": [
285
+ {
286
+ "internalType": "address",
287
+ "name": "sender",
288
+ "type": "address"
289
+ },
290
+ {
291
+ "internalType": "AttestationType",
292
+ "name": "attestationType",
293
+ "type": "uint16"
294
+ }
295
+ ],
296
+ "name": "OPP_UnauthorizedAttestationType",
297
+ "type": "error"
298
+ },
299
+ {
300
+ "inputs": [
301
+ {
302
+ "internalType": "AttestationType",
303
+ "name": "attestationType",
304
+ "type": "uint16"
305
+ }
306
+ ],
307
+ "name": "OPP_UnhandledAttestationType",
308
+ "type": "error"
309
+ },
310
+ {
311
+ "inputs": [],
312
+ "name": "OPP_ZeroMaxAttestations",
313
+ "type": "error"
314
+ },
315
+ {
316
+ "inputs": [],
317
+ "name": "OPP_ZeroTag",
318
+ "type": "error"
319
+ },
320
+ {
321
+ "inputs": [],
322
+ "name": "UUPSUnauthorizedCallContext",
323
+ "type": "error"
324
+ },
325
+ {
326
+ "inputs": [
327
+ {
328
+ "internalType": "bytes32",
329
+ "name": "slot",
330
+ "type": "bytes32"
331
+ }
332
+ ],
333
+ "name": "UUPSUnsupportedProxiableUUID",
334
+ "type": "error"
335
+ },
336
+ {
337
+ "anonymous": false,
338
+ "inputs": [
339
+ {
340
+ "indexed": false,
341
+ "internalType": "address",
342
+ "name": "authority",
343
+ "type": "address"
344
+ }
345
+ ],
346
+ "name": "AuthorityUpdated",
347
+ "type": "event"
348
+ },
349
+ {
350
+ "anonymous": false,
351
+ "inputs": [
352
+ {
353
+ "indexed": false,
354
+ "internalType": "uint64",
355
+ "name": "version",
356
+ "type": "uint64"
357
+ }
358
+ ],
359
+ "name": "Initialized",
360
+ "type": "event"
361
+ },
362
+ {
363
+ "anonymous": false,
364
+ "inputs": [
365
+ {
366
+ "indexed": false,
367
+ "internalType": "bytes",
368
+ "name": "data",
369
+ "type": "bytes"
370
+ }
371
+ ],
372
+ "name": "OPPEpoch",
373
+ "type": "event"
374
+ },
375
+ {
376
+ "anonymous": false,
377
+ "inputs": [
378
+ {
379
+ "indexed": false,
380
+ "internalType": "bytes",
381
+ "name": "data",
382
+ "type": "bytes"
383
+ }
384
+ ],
385
+ "name": "OPPMessage",
386
+ "type": "event"
387
+ },
388
+ {
389
+ "anonymous": false,
390
+ "inputs": [
391
+ {
392
+ "indexed": true,
393
+ "internalType": "address",
394
+ "name": "implementation",
395
+ "type": "address"
396
+ }
397
+ ],
398
+ "name": "Upgraded",
399
+ "type": "event"
400
+ },
401
+ {
402
+ "inputs": [],
403
+ "name": "MESSAGE_EPOCH_MAX_ATTESTATIONS",
404
+ "outputs": [
405
+ {
406
+ "internalType": "uint256",
407
+ "name": "",
408
+ "type": "uint256"
409
+ }
410
+ ],
411
+ "stateMutability": "view",
412
+ "type": "function"
413
+ },
414
+ {
415
+ "inputs": [],
416
+ "name": "MESSAGE_EPOCH_SECS",
417
+ "outputs": [
418
+ {
419
+ "internalType": "uint256",
420
+ "name": "",
421
+ "type": "uint256"
422
+ }
423
+ ],
424
+ "stateMutability": "view",
425
+ "type": "function"
426
+ },
427
+ {
428
+ "inputs": [],
429
+ "name": "UPGRADE_INTERFACE_VERSION",
430
+ "outputs": [
431
+ {
432
+ "internalType": "string",
433
+ "name": "",
434
+ "type": "string"
435
+ }
436
+ ],
437
+ "stateMutability": "view",
438
+ "type": "function"
439
+ },
440
+ {
441
+ "inputs": [],
442
+ "name": "WIRE_NETWORK_ID",
443
+ "outputs": [
444
+ {
445
+ "internalType": "uint32",
446
+ "name": "",
447
+ "type": "uint32"
448
+ }
449
+ ],
450
+ "stateMutability": "view",
451
+ "type": "function"
452
+ },
453
+ {
454
+ "inputs": [
455
+ {
456
+ "internalType": "AttestationType",
457
+ "name": "attestationType",
458
+ "type": "uint16"
459
+ },
460
+ {
461
+ "internalType": "bytes",
462
+ "name": "data",
463
+ "type": "bytes"
464
+ }
465
+ ],
466
+ "name": "addAttestation",
467
+ "outputs": [],
468
+ "stateMutability": "nonpayable",
469
+ "type": "function"
470
+ },
471
+ {
472
+ "inputs": [
473
+ {
474
+ "internalType": "uint256",
475
+ "name": "",
476
+ "type": "uint256"
477
+ }
478
+ ],
479
+ "name": "allAuthorizedSenders",
480
+ "outputs": [
481
+ {
482
+ "internalType": "address",
483
+ "name": "",
484
+ "type": "address"
485
+ }
486
+ ],
487
+ "stateMutability": "view",
488
+ "type": "function"
489
+ },
490
+ {
491
+ "inputs": [],
492
+ "name": "authority",
493
+ "outputs": [
494
+ {
495
+ "internalType": "address",
496
+ "name": "",
497
+ "type": "address"
498
+ }
499
+ ],
500
+ "stateMutability": "view",
501
+ "type": "function"
502
+ },
503
+ {
504
+ "inputs": [
505
+ {
506
+ "internalType": "bytes32",
507
+ "name": "",
508
+ "type": "bytes32"
509
+ }
510
+ ],
511
+ "name": "authorizedSenders",
512
+ "outputs": [
513
+ {
514
+ "internalType": "bool",
515
+ "name": "",
516
+ "type": "bool"
517
+ }
518
+ ],
519
+ "stateMutability": "view",
520
+ "type": "function"
521
+ },
522
+ {
523
+ "inputs": [],
524
+ "name": "canFinalizeEpoch",
525
+ "outputs": [
526
+ {
527
+ "internalType": "bool",
528
+ "name": "",
529
+ "type": "bool"
530
+ }
531
+ ],
532
+ "stateMutability": "view",
533
+ "type": "function"
534
+ },
535
+ {
536
+ "inputs": [
537
+ {
538
+ "internalType": "uint256",
539
+ "name": "tag",
540
+ "type": "uint256"
541
+ }
542
+ ],
543
+ "name": "enterSendMode",
544
+ "outputs": [],
545
+ "stateMutability": "nonpayable",
546
+ "type": "function"
547
+ },
548
+ {
549
+ "inputs": [],
550
+ "name": "epochIndex",
551
+ "outputs": [
552
+ {
553
+ "internalType": "uint32",
554
+ "name": "",
555
+ "type": "uint32"
556
+ }
557
+ ],
558
+ "stateMutability": "view",
559
+ "type": "function"
560
+ },
561
+ {
562
+ "inputs": [
563
+ {
564
+ "internalType": "uint256",
565
+ "name": "tag",
566
+ "type": "uint256"
567
+ }
568
+ ],
569
+ "name": "exitSendMode",
570
+ "outputs": [],
571
+ "stateMutability": "nonpayable",
572
+ "type": "function"
573
+ },
574
+ {
575
+ "inputs": [],
576
+ "name": "finalizeEpoch",
577
+ "outputs": [],
578
+ "stateMutability": "nonpayable",
579
+ "type": "function"
580
+ },
581
+ {
582
+ "inputs": [],
583
+ "name": "inSendMode",
584
+ "outputs": [
585
+ {
586
+ "internalType": "bool",
587
+ "name": "",
588
+ "type": "bool"
589
+ }
590
+ ],
591
+ "stateMutability": "view",
592
+ "type": "function"
593
+ },
594
+ {
595
+ "inputs": [
596
+ {
597
+ "internalType": "address",
598
+ "name": "_authority",
599
+ "type": "address"
600
+ },
601
+ {
602
+ "internalType": "uint256",
603
+ "name": "messageEpochSecs",
604
+ "type": "uint256"
605
+ }
606
+ ],
607
+ "name": "initialize",
608
+ "outputs": [],
609
+ "stateMutability": "nonpayable",
610
+ "type": "function"
611
+ },
612
+ {
613
+ "inputs": [],
614
+ "name": "isConsumingScheduledOp",
615
+ "outputs": [
616
+ {
617
+ "internalType": "bytes4",
618
+ "name": "",
619
+ "type": "bytes4"
620
+ }
621
+ ],
622
+ "stateMutability": "view",
623
+ "type": "function"
624
+ },
625
+ {
626
+ "inputs": [],
627
+ "name": "lastMessageID",
628
+ "outputs": [
629
+ {
630
+ "internalType": "bytes32",
631
+ "name": "",
632
+ "type": "bytes32"
633
+ }
634
+ ],
635
+ "stateMutability": "view",
636
+ "type": "function"
637
+ },
638
+ {
639
+ "inputs": [],
640
+ "name": "lastMessageTimestamp",
641
+ "outputs": [
642
+ {
643
+ "internalType": "uint64",
644
+ "name": "",
645
+ "type": "uint64"
646
+ }
647
+ ],
648
+ "stateMutability": "view",
649
+ "type": "function"
650
+ },
651
+ {
652
+ "inputs": [],
653
+ "name": "pendingAttestationCount",
654
+ "outputs": [
655
+ {
656
+ "internalType": "uint256",
657
+ "name": "",
658
+ "type": "uint256"
659
+ }
660
+ ],
661
+ "stateMutability": "view",
662
+ "type": "function"
663
+ },
664
+ {
665
+ "inputs": [],
666
+ "name": "prevEpochSent",
667
+ "outputs": [
668
+ {
669
+ "internalType": "bool",
670
+ "name": "",
671
+ "type": "bool"
672
+ }
673
+ ],
674
+ "stateMutability": "view",
675
+ "type": "function"
676
+ },
677
+ {
678
+ "inputs": [],
679
+ "name": "proxiableUUID",
680
+ "outputs": [
681
+ {
682
+ "internalType": "bytes32",
683
+ "name": "",
684
+ "type": "bytes32"
685
+ }
686
+ ],
687
+ "stateMutability": "view",
688
+ "type": "function"
689
+ },
690
+ {
691
+ "inputs": [],
692
+ "name": "sendModeTag",
693
+ "outputs": [
694
+ {
695
+ "internalType": "uint256",
696
+ "name": "",
697
+ "type": "uint256"
698
+ }
699
+ ],
700
+ "stateMutability": "view",
701
+ "type": "function"
702
+ },
703
+ {
704
+ "inputs": [
705
+ {
706
+ "components": [
707
+ {
708
+ "components": [
709
+ {
710
+ "components": [
711
+ {
712
+ "internalType": "ChainKind",
713
+ "name": "kind",
714
+ "type": "uint8"
715
+ },
716
+ {
717
+ "internalType": "uint32",
718
+ "name": "id",
719
+ "type": "uint32"
720
+ }
721
+ ],
722
+ "internalType": "struct ChainId",
723
+ "name": "start",
724
+ "type": "tuple"
725
+ },
726
+ {
727
+ "components": [
728
+ {
729
+ "internalType": "ChainKind",
730
+ "name": "kind",
731
+ "type": "uint8"
732
+ },
733
+ {
734
+ "internalType": "uint32",
735
+ "name": "id",
736
+ "type": "uint32"
737
+ }
738
+ ],
739
+ "internalType": "struct ChainId",
740
+ "name": "end",
741
+ "type": "tuple"
742
+ }
743
+ ],
744
+ "internalType": "struct Endpoints",
745
+ "name": "endpoints",
746
+ "type": "tuple"
747
+ },
748
+ {
749
+ "internalType": "bytes",
750
+ "name": "messageId",
751
+ "type": "bytes"
752
+ },
753
+ {
754
+ "internalType": "bytes",
755
+ "name": "previousMessageId",
756
+ "type": "bytes"
757
+ },
758
+ {
759
+ "components": [
760
+ {
761
+ "internalType": "Endianness",
762
+ "name": "endianness",
763
+ "type": "uint8"
764
+ },
765
+ {
766
+ "internalType": "HashAlgorithm",
767
+ "name": "hashAlgorithm",
768
+ "type": "uint8"
769
+ },
770
+ {
771
+ "internalType": "LengthEncoding",
772
+ "name": "lengthEncoding",
773
+ "type": "uint8"
774
+ }
775
+ ],
776
+ "internalType": "struct EncodingFlags",
777
+ "name": "encodingFlags",
778
+ "type": "tuple"
779
+ },
780
+ {
781
+ "internalType": "uint32",
782
+ "name": "payloadSize",
783
+ "type": "uint32"
784
+ },
785
+ {
786
+ "internalType": "bytes",
787
+ "name": "payloadChecksum",
788
+ "type": "bytes"
789
+ },
790
+ {
791
+ "internalType": "uint64",
792
+ "name": "timestamp",
793
+ "type": "uint64"
794
+ },
795
+ {
796
+ "internalType": "bytes",
797
+ "name": "headerChecksum",
798
+ "type": "bytes"
799
+ }
800
+ ],
801
+ "internalType": "struct MessageHeader",
802
+ "name": "header",
803
+ "type": "tuple"
804
+ },
805
+ {
806
+ "components": [
807
+ {
808
+ "internalType": "uint32",
809
+ "name": "version",
810
+ "type": "uint32"
811
+ },
812
+ {
813
+ "components": [
814
+ {
815
+ "internalType": "AttestationType",
816
+ "name": "type_",
817
+ "type": "uint16"
818
+ },
819
+ {
820
+ "internalType": "uint32",
821
+ "name": "dataSize",
822
+ "type": "uint32"
823
+ },
824
+ {
825
+ "internalType": "bytes",
826
+ "name": "data",
827
+ "type": "bytes"
828
+ }
829
+ ],
830
+ "internalType": "struct AttestationEntry[]",
831
+ "name": "attestations",
832
+ "type": "tuple[]"
833
+ }
834
+ ],
835
+ "internalType": "struct MessagePayload",
836
+ "name": "payload",
837
+ "type": "tuple"
838
+ }
839
+ ],
840
+ "name": "serializeMessage",
841
+ "outputs": [
842
+ {
843
+ "components": [
844
+ {
845
+ "components": [
846
+ {
847
+ "components": [
848
+ {
849
+ "internalType": "ChainKind",
850
+ "name": "kind",
851
+ "type": "uint8"
852
+ },
853
+ {
854
+ "internalType": "uint32",
855
+ "name": "id",
856
+ "type": "uint32"
857
+ }
858
+ ],
859
+ "internalType": "struct ChainId",
860
+ "name": "start",
861
+ "type": "tuple"
862
+ },
863
+ {
864
+ "components": [
865
+ {
866
+ "internalType": "ChainKind",
867
+ "name": "kind",
868
+ "type": "uint8"
869
+ },
870
+ {
871
+ "internalType": "uint32",
872
+ "name": "id",
873
+ "type": "uint32"
874
+ }
875
+ ],
876
+ "internalType": "struct ChainId",
877
+ "name": "end",
878
+ "type": "tuple"
879
+ }
880
+ ],
881
+ "internalType": "struct Endpoints",
882
+ "name": "endpoints",
883
+ "type": "tuple"
884
+ },
885
+ {
886
+ "internalType": "bytes",
887
+ "name": "messageId",
888
+ "type": "bytes"
889
+ },
890
+ {
891
+ "internalType": "bytes",
892
+ "name": "previousMessageId",
893
+ "type": "bytes"
894
+ },
895
+ {
896
+ "components": [
897
+ {
898
+ "internalType": "Endianness",
899
+ "name": "endianness",
900
+ "type": "uint8"
901
+ },
902
+ {
903
+ "internalType": "HashAlgorithm",
904
+ "name": "hashAlgorithm",
905
+ "type": "uint8"
906
+ },
907
+ {
908
+ "internalType": "LengthEncoding",
909
+ "name": "lengthEncoding",
910
+ "type": "uint8"
911
+ }
912
+ ],
913
+ "internalType": "struct EncodingFlags",
914
+ "name": "encodingFlags",
915
+ "type": "tuple"
916
+ },
917
+ {
918
+ "internalType": "uint32",
919
+ "name": "payloadSize",
920
+ "type": "uint32"
921
+ },
922
+ {
923
+ "internalType": "bytes",
924
+ "name": "payloadChecksum",
925
+ "type": "bytes"
926
+ },
927
+ {
928
+ "internalType": "uint64",
929
+ "name": "timestamp",
930
+ "type": "uint64"
931
+ },
932
+ {
933
+ "internalType": "bytes",
934
+ "name": "headerChecksum",
935
+ "type": "bytes"
936
+ }
937
+ ],
938
+ "internalType": "struct MessageHeader",
939
+ "name": "",
940
+ "type": "tuple"
941
+ }
942
+ ],
943
+ "stateMutability": "pure",
944
+ "type": "function"
945
+ },
946
+ {
947
+ "inputs": [
948
+ {
949
+ "internalType": "address",
950
+ "name": "newAuthority",
951
+ "type": "address"
952
+ }
953
+ ],
954
+ "name": "setAuthority",
955
+ "outputs": [],
956
+ "stateMutability": "nonpayable",
957
+ "type": "function"
958
+ },
959
+ {
960
+ "inputs": [
961
+ {
962
+ "internalType": "uint256",
963
+ "name": "maxAttestations",
964
+ "type": "uint256"
965
+ }
966
+ ],
967
+ "name": "setMessageEpochMaxAttestations",
968
+ "outputs": [],
969
+ "stateMutability": "nonpayable",
970
+ "type": "function"
971
+ },
972
+ {
973
+ "inputs": [
974
+ {
975
+ "internalType": "uint256",
976
+ "name": "secs",
977
+ "type": "uint256"
978
+ }
979
+ ],
980
+ "name": "setMessageEpochSecs",
981
+ "outputs": [],
982
+ "stateMutability": "nonpayable",
983
+ "type": "function"
984
+ },
985
+ {
986
+ "inputs": [
987
+ {
988
+ "internalType": "uint256",
989
+ "name": "adjustment",
990
+ "type": "uint256"
991
+ }
992
+ ],
993
+ "name": "testAdvanceEpochClock",
994
+ "outputs": [],
995
+ "stateMutability": "nonpayable",
996
+ "type": "function"
997
+ },
998
+ {
999
+ "inputs": [
1000
+ {
1001
+ "internalType": "address",
1002
+ "name": "newImplementation",
1003
+ "type": "address"
1004
+ },
1005
+ {
1006
+ "internalType": "bytes",
1007
+ "name": "data",
1008
+ "type": "bytes"
1009
+ }
1010
+ ],
1011
+ "name": "upgradeToAndCall",
1012
+ "outputs": [],
1013
+ "stateMutability": "payable",
1014
+ "type": "function"
1015
+ }
1016
+ ],
1017
+ "bytecode": "0x60a0806040523460295730608052614166908161002f8239608051818181610a6a0152612cbe0152f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c806306c106f9146101d75780631e1afc48146101d2578063264f195b146101cd57806327e935a1146101c857806347453a2a146101c35780634f1ef286146101be57806352d1902d146101b95780635fd689df146101b4578063621fbd59146101af57806373d335eb146101aa5780637a9e5e4b146101a557806382ae9ef7146101a05780638fb360371461019b5780639039e4951461019657806395fabcf0146101915780639b0715001461018c5780639f065a2514610187578063a9e50c1014610182578063ad3cb1cc1461017d578063bf7e214f14610178578063c94c93e714610173578063cd6dc6871461016e578063da55d96a14610169578063e0c14aa814610164578063e11418b71461015f578063e36f9a071461015a578063e44efb5a146101555763f5786b4b1461015057600080fd5b611094565b611074565b611056565b61100d565b610edf565b610ebc565b610d8b565b610d5a565b610d24565b610cde565b610ca4565b610c86565b610c68565b610c4a565b610c27565b610bd4565b610bbb565b610b40565b610b1b565b610afd565b610ac2565b610a57565b61094a565b6108d9565b61082a565b61080e565b6106d9565b6101ec565b60009103126101e757565b600080fd5b346101e75760003660031901126101e757602063ffffffff60095416604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761024157604052565b610210565b606081019081106001600160401b0382111761024157604052565b6001600160401b03811161024157604052565b602081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b6040519061010082018281106001600160401b0382111761024157604052565b604051906102dd82610246565b565b604051906102dd82610226565b60ff8116036101e757565b63ffffffff8116036101e757565b35906102dd826102f7565b91908260409103126101e75760405161032881610226565b60208082948035610338816102ec565b8452013591610346836102f7565b0152565b91906080838203126101e757602061037e6040519261036884610226565b604084966103768382610310565b865201610310565b910152565b6001600160401b03811161024157601f01601f191660200190565b81601f820112156101e7578035906103b582610383565b926103c3604051948561028f565b828452602083830101116101e757816000926020809301838601378301015290565b91908260609103126101e7576040516103fd81610246565b6040808294803561040d816102ec565b8452602081013561041d816102ec565b6020850152013591610346836102ec565b35906001600160401b03821682036101e757565b6001600160401b0381116102415760051b60200190565b6004359061ffff821682036101e757565b359061ffff821682036101e757565b91909160409081818503126101e757815161049381610226565b809482356104a0816102f7565b8252602092838101356001600160401b03918282116101e757019180601f840112156101e7578235906104d282610442565b966104df8151988961028f565b828852868089019360051b860101948286116101e757878101935b86851061050c57505050505050500152565b84358681116101e75782019060609081601f1984880301126101e75784519161053483610246565b61053f8c850161046a565b83528584013561054e816102f7565b8c840152830135918883116101e75761056e878d8096958196010161039e565b868201528152019401936104fa565b90604060206102dd936105a484825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b60005b8381106105d45750506000910152565b81810151838201526020016105c4565b906020916105fd815180928185528580860191016105c1565b601f01601f1916010190565b906106d6916020815261062060208201835161057d565b60208201519061063e6101a0928360a08401526101c08301906105e4565b9160e06106b2610660604087015195601f1996878783030160c08801526105e4565b61068c60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a087015186868303016101608701526105e4565b60c08601516001600160401b031661018085015294015192828503019101526105e4565b90565b346101e7576003196040368201126101e757600480356001600160401b03928382116101e7576101a09082360301126101e7576107146102b0565b906107213682850161034a565b825260848101358481116101e75761073e9084369184010161039e565b602083015260a48101358481116101e75761075e9084369184010161039e565b60408301526107703660c483016103e5565b60608301526107826101248201610305565b60808301526101448101358481116101e7576107a39084369184010161039e565b60a08301526107b5610164820161042e565b60c0830152610184810135908482116101e757836107d6923692010161039e565b60e08201526024359283116101e7576107f86107fe9261080a94369101610479565b906114a6565b60405191829182610609565b0390f35b346101e75760003660031901126101e757602060405160018152f35b346101e75760203660031901126101e7576004356108483633611b3c565b8015610862576004541561085857005b6004556000600355005b604051636ad43cc360e11b8152600490fd5b634e487b7160e01b600052603260045260246000fd5b6012548110156108af5760126000526000805160206140b18339815191520190600090565b610874565b6011548110156108af5760116000526000805160206140d18339815191520190600090565b346101e75760203660031901126101e7576004356006548110156101e75760066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01546040516001600160a01b039091168152602090f35b600435906001600160a01b03821682036101e757565b60403660031901126101e75761095e610934565b6024356001600160401b0381116101e75761097d90369060040161039e565b90610986612cb4565b6109903633611b3c565b610998612cb4565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa60009381610a26575b506109eb57604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206140f18339815191528303610a0d57610a0b92506138ab565b005b604051632a87526960e21b815260048101849052602490fd5b610a4991945060203d602011610a50575b610a41818361028f565b81019061135c565b92386109c1565b503d610a37565b346101e75760003660031901126101e7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610ab05760206040516000805160206140f18339815191528152f35b60405163703e46dd60e11b8152600490fd5b346101e75760203660031901126101e757600435610ae03633611b3c565b8015610aeb57600855005b604051630e7a0f8f60e11b8152600490fd5b346101e75760003660031901126101e7576020600054604051908152f35b346101e75760003660031901126101e7576020610b36611690565b6040519015158152f35b346101e75760203660031901126101e757610b59610934565b600080516020614091833981519152546001600160a01b03919082163303610ba457803b15610b8b57610a0b90611c9e565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346101e75760003660031901126101e757610a0b61174a565b346101e75760003660031901126101e7576000805160206140918339815191525460a01c60ff1615610c1e576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610c0b565b346101e75760203660031901126101e757610c423633611b3c565b600435600755005b346101e75760003660031901126101e7576020600354604051908152f35b346101e75760003660031901126101e7576020600754604051908152f35b346101e75760003660031901126101e7576020600854604051908152f35b346101e75760003660031901126101e75760206001600160401b0360015416604051908152f35b60405190610cd882610274565b60008252565b346101e75760003660031901126101e75761080a604051610cfe81610226565b60058152640352e302e360dc1b60208201526040519182916020835260208301906105e4565b346101e75760003660031901126101e757600080516020614091833981519152546040516001600160a01b039091168152602090f35b346101e75760203660031901126101e7576004356000526005602052602060ff604060002054166040519015158152f35b346101e75760403660031901126101e757610da4610934565b60008051602061411183398151915254906001600160401b0360ff8360401c1615921680159081610eb4575b6001149081610eaa575b159081610ea1575b50610e8f57600080516020614111833981519152805467ffffffffffffffff19166001179055610e1b9082610e6a575b602435906123d9565b610e2157005b600080516020614111833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b600080516020614111833981519152805460ff60401b1916600160401b179055610e12565b60405163f92ee8a960e01b8152600490fd5b90501538610de2565b303b159150610dda565b839150610dd0565b346101e75760003660031901126101e757602060ff601954166040519015158152f35b346101e7576040806003193601126101e757610ef9610459565b6024356001600160401b0381116101e757610f1890369060040161039e565b9160045415610ffd57610f2b3633611b3c565b60008051602061409183398151915254610f5b90610f4f906001600160a01b031681565b6001600160a01b031690565b81516368fc2b7760e11b815261ffff841662010000176004820152336024820152908290829060449082905afa908115610ff857600091610fca575b5015610fa757610a0b83836126f2565b51639a28d60760e01b815233600482015261ffff91909116602482015260449150fd5b610fea9150823d8411610ff1575b610fe2818361028f565b8101906118ce565b5038610f97565b503d610fd8565b611417565b5163738c481160e01b8152600490fd5b346101e75760203660031901126101e75760043561102b3633611b3c565b601354806110475750420342811161104257601355005b61170d565b90810390811161104257601355005b346101e75760003660031901126101e7576020600454604051908152f35b346101e75760003660031901126101e75760206004541515604051908152f35b346101e7576020806003193601126101e7576004908135825415611294576110bc3633611b3c565b8015611283578254146110cb57005b6000825560035491821561127457600854908184116112505750506110ee6112ff565b906110f7611e92565b8252611104600054611926565b916040926040820152611115613630565b6060820152426001600160401b031660c082015261113161278b565b600181529261113f856127a5565b9083850191825260005b8681106111d75750505092826111be926111ab61118a6111ca967fd015d18975fb34c32e4bba198aa3c60e2af0ada80a66615e4d3eac9d6b0e25f4986114a6565b9361119783860151611912565b60c08601516001600160401b03169061365a565b6111b36102df565b9283528201526137ab565b60405191829182611739565b0390a1610a0b6000600355565b80611249816111f06111ea600195612517565b5061280d565b886111fd825161ffff1690565b910151611232611211825163ffffffff1690565b61122661121c6102d0565b61ffff9095168552565b63ffffffff16838c0152565b868201528651906112438383611960565b52611960565b5001611149565b60408051630f57b5f560e41b81529182019283526020830185905290918291010390fd5b60405163783bc0f160e11b8152fd5b604051636ad43cc360e11b81528390fd5b60405163738c481160e01b81528390fd5b604051906112b282610226565b60006020838281520152565b604051906112cb82610226565b816112d46112a5565b8152602061037e6112a5565b604051906112ed82610246565b60006040838281528260208201520152565b6040519061010082018281106001600160401b0382111761024157604052606060e08361132a6112be565b81528260208201528260408201526113406112e0565b83820152600060808201528260a0820152600060c08201520152565b908160209103126101e7575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b8685106113c05750505050505050505090565b909192939495969799988680611402600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a82015201906105e4565b9b9c9a019897969190910194019291906113ad565b6040513d6000823e3d90fd5b6020818303126101e7578051906001600160401b0382116101e7570181601f820112156101e757805161145581610383565b92611463604051948561028f565b818452602082840101116101e7576106d691602080850191016105c1565b90916114986106d6936040845260408401906105e4565b9160208184039101526105e4565b906114af6112ff565b5073__$b91d2ad766fd07dc99f56c1a0b020615bb$__60405163765809ab60e11b81526020928382806114e5846004830161136b565b0381865af4918215610ff857600092611671575b5060a0850180518051611634575061152c916115229161151b61153995611926565b9052611974565b5163ffffffff1690565b63ffffffff166080850152565b60405162409a0960e81b8152600081806115568760048301610609565b0381855af4908115610ff857600091611613575b5083830180518051806115dc5750505281604051809263b93612a760e01b825281806115998860048301610609565b03915af4908115610ff8576115b7926000926115bf575b5050611926565b60e082015290565b6115d59250803d10610a5057610a41818361028f565b38806115b0565b9150938092935084012090825190830120036115f757505090565b6109e7604051928392630ca2e06d60e11b845260048401611481565b61162e913d8091833e611626818361028f565b810190611423565b3861156a565b90506116409150611912565b9080820361164f575050611539565b604051631d97afef60e31b815260048101919091526024810191909152604490fd5b611689919250843d8611610a5057610a41818361028f565b90386114f9565b60ff60195416156116a3576106d6611c5c565b600190565b6040519061014082018281106001600160401b03821117610241576040526060808352610120836116d76112be565b602082015260006040820152600083820152600060808201528260a08201528260c08201528260e0820152826101008201520152565b634e487b7160e01b600052601160045260246000fd5b63ffffffff908116600019019190821161104257565b9060206106d69281815201906105e4565b60195460ff166118c1575b60195460ff1661187f577f17c789cd9b6ebb5030c7b906ed9f08f64563805e0aeab6d5f53dda9305a8348b6118536111be61178e611d81565b6117f26117996116a8565b916117c16117b46117af60095463ffffffff1690565b611723565b63ffffffff166060850152565b6117c9611e92565b6020840152426001600160401b031660408401526117e8601554611926565b60c0840152611926565b60a0820152611802601754611926565b60e0820152611812601854611926565b61010082015261183c61183761182f61182a84611ee5565b611926565b808452611912565b601555565b61184e600160ff196019541617601955565b611f0e565b0390a161185e611cf7565b61187161186d60195460ff1690565b1590565b61187757565b6102dd61174a565b6109e763ffffffff60001961189960095463ffffffff1690565b0116604051918291630642fe1b60e11b83526004830191909163ffffffff6020820193169052565b6118c9611cf7565b611755565b91908260409103126101e757815180151581036101e7576020909201516106d6816102f7565b60011981019190821161104257565b60001981019190821161104257565b805115611920576020015190565b50600090565b604051906020820152602081526106d681610226565b9061194f602092828151948592016105c1565b0190565b8051156108af5760200190565b80518210156108af5760209160051b010190565b6119ad91611980610ccb565b906119896128ff565b6119a7611a016040926040519788916119a76020988985019061193c565b9061193c565b03966119c1601f199889810183528261028f565b6119f56119e66119e16119d88a5163ffffffff1690565b63ffffffff1690565b612a9f565b6040519485938985019061193c565b0387810183528261028f565b916000925b848601805151851015611abe576119a7611ab46119a7611aa88995611a9a8d611a68611a628d60019a611a5c8f611a508f916119a7611a43612916565b91519b8c9485019061193c565b0386810189528861028f565b51611960565b51612b20565b92611a8e611a806119e186516001600160401b031690565b8d519788938d85019061193c565b0390810185528461028f565b88519485938885019061193c565b038a810183528261028f565b9401939050611a06565b5095509350505050565b6004116101e757600090600490565b6001600160e01b03199035818116939260048110611af457505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b6000805160206140918339815191528054611b75906001600160a01b0316611b6c611b6686611ac8565b90611ad7565b90843091612c25565b9015611b82575b50505050565b63ffffffff1615611c3c57600080516020614091833981519152805460ff60a01b1916600160a01b179055611bc490610f4f908190546001600160a01b031690565b91823b156101e757611bf09260009283604051809681958294634a63ebf760e11b845260048401611b03565b03925af18015610ff857611c23575b50600080516020614091833981519152805460ff60a01b1916905538808080611b7c565b80611c30611c3692610261565b806101dc565b38611bff565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b6013548015611920576007548101809111611042574210600a548015159081611c91575b50811591611c8c575090565b905090565b9050600854111538611c80565b60008051602061409183398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60135415611d1557611d07611c5c565b611d0d57565b6102dd613082565b42601355565b604051611d2781610274565b60008152906000368137565b90611d3d82610442565b611d4a604051918261028f565b8281528092611d5b601f1991610442565b0190602036910137565b8015611042576000190190565b60001981146110425760010190565b600c5490600e54918015611e8b57611d9883611d33565b9260005b818110611e615750905b60019081811180611e58575b15611e47578082168203611e0d57611e0590611df3611dd9611dd386611903565b88611960565b51611dec611de687611903565b89611960565b51906131cb565b611dff611dd386611903565b52611d72565b905b1c611da6565b909180611e2f611e22611dd3611e41946118f4565b51611dec611de684611903565b611e3b611dd3836118f4565b52611d65565b91611e07565b50505090611e5490611953565b5190565b50818311611db2565b80611e7a611e7060019361088a565b90549060031b1c90565b611e848288611960565b5201611d9c565b5060009150565b611e9a6112be565b50604051611ea781610226565b6002815263ffffffff46166020820152604051611ec381610226565b600181526001602082015260405191611edb83610226565b8252602082015290565b8051604051611ef381610274565b600081528252611f0282611f0e565b60208151910120915290565b611f16610ccb565b611f1e612929565b92604080518095602094858301611f349161193c565b611f3d9161193c565b0394601f19958681018252611f52908261028f565b8451611f5d906132c4565b908251918291868301611f6f9161193c565b611f789161193c565b038681018252611f88908261028f565b611f90612916565b908251918291868301611fa29161193c565b611fab9161193c565b038681018252611fbb908261028f565b83850151611fc890613314565b908151611fdb906001600160401b031690565b611fe490612a9f565b908351918291878301611ff69161193c565b611fff9161193c565b03878101825261200f908261028f565b82519182918683016120209161193c565b6120299161193c565b038681018252612039908261028f565b61204161293c565b9082519182918683016120539161193c565b61205c9161193c565b03868101825261206c908261028f565b848201516001600160401b031661208290612a9f565b9082519182918683016120949161193c565b61209d9161193c565b0386810182526120ad908261028f565b6120b561294f565b9082519182918683016120c79161193c565b6120d09161193c565b0386810182526120e0908261028f565b60608501516120f49063ffffffff16612a9f565b9082519182918683016121069161193c565b61210f9161193c565b03868101825261211f908261028f565b612127612962565b9082519182918683016121399161193c565b6121429161193c565b038681018252612152908261028f565b60808501516121669063ffffffff16612a9f565b9082519182918683016121789161193c565b6121819161193c565b038681018252612191908261028f565b612199612975565b9082519182918683016121ab9161193c565b6121b49161193c565b0386810182526121c4908261028f565b60a08501516121d2906132c4565b9082519182918683016121e49161193c565b6121ed9161193c565b0386810182526121fd908261028f565b612205612988565b9082519182918683016122179161193c565b6122209161193c565b038681018252612230908261028f565b60c085015161223e906132c4565b9082519182918683016122509161193c565b6122599161193c565b038681018252612269908261028f565b6122716129ce565b9082519182918683016122839161193c565b61228c9161193c565b03868101825261229c908261028f565b60e08501516122aa906132c4565b9082519182918683016122bc9161193c565b6122c59161193c565b0386810182526122d5908261028f565b6122dd6129ed565b9082519182918683016122ef9161193c565b6122f89161193c565b038681018252612308908261028f565b610100850151612317906132c4565b9082519182918683016123299161193c565b6123329161193c565b038681018252612342908261028f565b916000925b6101208601805151851015611abe576119a76123cf61012093611aa861239461238e8a6001978f611a5c908f6123828f6119a7611a43612a0c565b0390810188528761028f565b51613483565b6123c18d8c611a8e8c6119a76123b46119e188516001600160401b031690565b915198899485019061193c565b88519485938c85019061193c565b9401939050612347565b612402906123e5613601565b6123ed613601565b6123f5613601565b6123fd613601565b611c9e565b61240a613601565b612412613601565b61241a611d1b565b8051906001600160401b03821161024157600160401b821161024157600f5482600f558083106124d6575b50602080910190600f60005260005b8381106124a4575050505061249a9061247361246e611d1b565b612f5e565b612485600160ff196019541617601955565b61248d612e0e565b612495612e84565b600755565b6102dd6020600855565b82517f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80282015591810191600101612454565b827f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80291820191015b81811061250b5750612445565b600081556001016124fe565b6002548110156108af57600260005260011b7f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0190600090565b90600182811c92168015612581575b602083101461256b57565b634e487b7160e01b600052602260045260246000fd5b91607f1691612560565b90601f811161259957505050565b6000916000526020600020906020601f850160051c830194106125d7575b601f0160051c01915b8281106125cc57505050565b8181556001016125c0565b90925082906125b7565b9291906126dc5761ffff81511661ffff19845416178355600180930190602080910151938451916001600160401b0383116102415761262a836126248654612551565b8661258b565b602091601f841160011461266e575050819061265f939495600092612663575b50508160011b916000199060031b1c19161790565b9055565b01519050388061264a565b95601f9291921984169661268786600052602060002090565b936000915b8983106126c557505050836001959697106126ac575b505050811b019055565b015160001960f88460031b161c191690553880806126a2565b83850151865594850194938101939181019161268c565b634e487b7160e01b600052600060045260246000fd5b6002549160035480841160001461274857506102dd92506127216040519261271984610226565b61ffff168352565b602082015261274260035461273d61273882611d72565b600355565b612517565b906125e1565b61275190611d72565b60035561ffff6040519261276484610226565b1682526020820152600160401b821015610241576127428260016102dd9401600255612517565b6040519061279882610226565b6060602083600081520152565b906127af82610442565b60406127be604051928361028f565b83825281936127cf601f1991610442565b019160009060005b8481106127e5575050505050565b60209084516127f381610246565b8481528285818301526060878301528285010152016127d7565b9060405161281a81610226565b809261ffff81541682526001809101916040519283600082549461283d86612551565b93848452602096876001821691826000146128a957505060011461286a575b50506103469250038461028f565b86925060005281600020906000915b8583106128915750506103469350820101388061285c565b8054838a018501528894508793909201918101612879565b925093505061034694915060ff191682840152151560051b820101388061285c565b604051906128d882610226565b6001825260203681840137565b604051906128f282610226565b600a825260203681840137565b6129076128cb565b600861291282611953565b5390565b61291e6128cb565b601261291282611953565b6129316128cb565b600a61291282611953565b6129446128cb565b602861291282611953565b6129576128cb565b603061291282611953565b61296a6128cb565b603861291282611953565b61297d6128cb565b607a61291282611953565b6129906128e5565b60a260005b607f808311156129ba5790608060019284161760208286010153019060071c90612995565b50607f600192166020828501015301815290565b6129d66128e5565b60f260016000826020850153019060071c90612995565b6129f56128e5565b60fa60016000826020850153019060071c90612995565b612a146128e5565b6101926001600060926020850153019060071c90612995565b612a356128cb565b601061291282611953565b612a486128cb565b601a61291282611953565b612a5b6128cb565b602261291282611953565b612a6e6128cb565b603261291282611953565b612a816128cb565b604261291282611953565b612a946128cb565b601861291282611953565b9060809160806001600160401b03821610612afb57612abc6128e5565b60005b607f80841115612ae357908560019285161760208285010153019160071c91612abf565b5090929350607f600192166020828501015301815290565b909150612b066128cb565b9060f81b6001600160f81b03191660001a61291282611953565b6106d6612b616119a792612c19612c056119a7612c0c612b3e610ccb565b94612b476128ff565b9060409485928351998a916119a760209b8c85019061193c565b0398612b75601f199a8b810183528261028f565b612bb489612ba8612b986119e1612b91612b91895161ffff1690565b61ffff1690565b6119a7885195869485019061193c565b038b810183528261028f565b612bc389612ba8612b98612a2d565b612be089612ba8612b986119e16119d88489015163ffffffff1690565b612bf9612beb612a40565b85519d8e938c85019061193c565b038981018c528b61028f565b01516132c4565b915196879485019061193c565b0390810183528261028f565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761024157604093859385528380528360205251915afa612ca25750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612cf2575b5050610ab057565b6000805160206140f18339815191525416141590503880612cea565b6040519060125480835282602091602082019060126000526000805160206140b1833981519152936000905b828210612d50575050506102dd9250038361028f565b855484526001958601958895509381019390910190612d3a565b600160401b8111610241576011549080601155818110612d88575050565b60009060116000526000805160206140d183398151915292830192015b828110612db157505050565b818155600101612da5565b600160401b8111610241576012549080601255818110612dda575050565b60009060126000526000805160206140b183398151915292830192015b828110612e0357505050565b818155600101612df7565b600f546001600160401b03811161024157612e2881612d6a565b601160009081527f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80280545b838310612e605750505050565b60018091920192835492816000805160206140d18339815191520155019190612e53565b6010546001600160401b03811161024157612e9e81612dbc565b601260009081527f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67280545b838310612ed65750505050565b60018091920192835492816000805160206140b18339815191520155019190612ec9565b6011546001600160401b03811161024157612f1481612dbc565b601260009081526000805160206140d183398151915280545b838310612f3a5750505050565b60018091920192835492816000805160206140b18339815191520155019190612f2d565b8051906001600160401b03821161024157600160401b82116102415760105482601055808310612fd7575b50602080910190601060005260005b838110612fa55750505050565b82517f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67282015591810191600101612f98565b827f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67291820191015b81811061300c5750612f89565b60008155600101612fff565b8051906001600160401b0382116102415761303282612d6a565b602080910190601160005260005b83811061304d5750505050565b82516000805160206140d183398151915282015591810191600101613040565b90600163ffffffff8093160191821161104257565b61309161186d60195460ff1690565b613189576130a460ff1960195416601955565b6130af600b54600c55565b6130ba600d54600e55565b6130d26130c5612d0e565b6130cd612efa565b613018565b6130dc6000600b55565b6130e66000600d55565b6130f06000600a55565b6130f942601355565b61312a61310e6001546001600160401b031690565b6001600160401b03166001600160401b03196014541617601455565b613135601654601755565b613140600054601855565b61314f60ff1960195416601955565b6131596000601655565b6102dd61317361316e60095463ffffffff1690565b61306d565b63ffffffff1663ffffffff196009541617600955565b6109e763ffffffff6000196131a360095463ffffffff1690565b0116604051918291631c70a36560e21b83526004830191909163ffffffff6020820193169052565b6040516334509dd160e01b8152600481019190915273__$398d4f030862acab53d338aebf0b4256d7$__916020908183602481875af4928315610ff85760009361329f575b506040516333aec0ad60e21b815260048101919091529192819083908180602481015b03915af4918215610ff85760009261327c575b5061327690613268604051938492830195869091604092825260208201520190565b03601f19810183528261028f565b51902090565b81925061329890613276923d8511610a5057610a41818361028f565b9190613246565b6132339350906132bc8392833d8511610a5057610a41818361028f565b935090613210565b6106d660206132dc6001600160401b03845116612a9f565b60405193816132f486935180928680870191016105c1565b8201613308825180938680850191016105c1565b0103808452018261028f565b61331c610ccb565b90613325612929565b604080519384602093849283830161333c9161193c565b6133459161193c565b0393601f1994858101875261335a908761028f565b805161336590613952565b958651613378906001600160401b031690565b61338190612a9f565b9084519182918583016133939161193c565b61339c9161193c565b0386810182526133ac908261028f565b83519687918483016133bd9161193c565b6133c69161193c565b0385810187526133d6908761028f565b6133de612916565b9583519687918483016133f09161193c565b6133f99161193c565b038581018752613409908761028f565b015161341490613952565b908151613427906001600160401b031690565b61343090612a9f565b9481519586918583016134429161193c565b61344b9161193c565b03848101865261345b908661028f565b51938492830161346a9161193c565b6134739161193c565b0390810182526106d6908261028f565b61348b610ccb565b90613494612929565b91604080805180956020948583016134ab9161193c565b6134b49161193c565b0393601f199485810187526134c9908761028f565b80516134d490613a0a565b9586516134e7906001600160401b031690565b6134f090612a9f565b9083519182918783016135029161193c565b61350b9161193c565b03868101825261351b908261028f565b825196879186830161352c9161193c565b6135359161193c565b038581018752613545908761028f565b61354d612a2d565b95825196879186830161355f9161193c565b6135689161193c565b038581018752613578908761028f565b838101516135889060ff16612a9f565b95825196879186830161359a9161193c565b6135a39161193c565b0385810187526135b3908761028f565b6135bb612a40565b9582519687918683016135cd9161193c565b6135d69161193c565b0385810187526135e6908761028f565b01516135f1906132c4565b9051938492830161346a9161193c565b60ff6000805160206141118339815191525460401c161561361e57565b604051631afcd79f60e31b8152600490fd5b6136386112e0565b5060405161364581610246565b60008152600060208201526000604082015290565b91613663611cf7565b600a548015159081613795575b50613788575b6016541561377f575b600a5490810180911161104257600a55816000556001600160401b03600191166001600160401b031960015416176001556136bb600b54611d72565b6136c481600b55565b906136d0600d54611d72565b926011546136dd85611903565b101561376e57613711906136f86136f386611903565b6108b4565b90919082549060031b91821b91600019901b1916179055565b9190915b808316156137245750600d5550565b908061375f61375361373e611e706136f3613764966118f4565b61374d611e706136f386611903565b906131cb565b6136f86136f3846118f4565b611d65565b91811c9190613715565b61377790613aa7565b919091613715565b8260165561367f565b613790613082565b613676565b9050818101809111611042576008541038613670565b6137b3610ccb565b906137bc612929565b60408051938460209384928383016137d39161193c565b6137dc9161193c565b0393601f199485810187526137f1908761028f565b80516137fc90613add565b95865161380f906001600160401b031690565b61381890612a9f565b90845191829185830161382a9161193c565b6138339161193c565b038681018252613843908261028f565b83519687918483016138549161193c565b61385d9161193c565b03858101875261386d908761028f565b613875612916565b9583519687918483016138879161193c565b6138909161193c565b0385810187526138a0908761028f565b015161341490611974565b90813b15613931576000805160206140f183398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a28051156139165761391391613eb9565b50565b50503461391f57565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b6106d66119a76119a7612c196139fa6119e16119d860206119a7986139ef6119a76139c961397e610ccb565b6139986139896128ff565b6040519d8e938985019061193c565b039a6139ac601f199c8d810183528261028f565b612ba86119e66119e16139c36139c3895160ff1690565b60ff1690565b6139e36139d4612a2d565b6040519a8b938785019061193c565b0389810189528861028f565b015163ffffffff1690565b604051958693602085019061193c565b6106d66119a76119a7612c196139fa60206119a796612c056119a7613a81613a30610ccb565b613a4a613a3b6128ff565b6040519b8c938985019061193c565b0398613a5e601f199a8b810183528261028f565b613a756119e66119e16139c36139c3895160ff1690565b0389810183528261028f565b613a9b613a8c612916565b6040519889938785019061193c565b0387810187528661028f565b601154600160401b8110156102415760018101806011558110156108af5760116000526000805160206140d18339815191520155565b613ae5610ccb565b90613aee612929565b91604080518094602093848301613b049161193c565b613b0d9161193c565b0392601f19938481018652613b22908661028f565b8051613b2d90613314565b948551613b40906001600160401b031690565b613b4990612a9f565b908351918291868301613b5b9161193c565b613b649161193c565b038581018252613b74908261028f565b8251958691858301613b859161193c565b613b8e9161193c565b038481018652613b9e908661028f565b613ba6612916565b948251958691858301613bb89161193c565b613bc19161193c565b038481018652613bd1908661028f565b82810151613bde906132c4565b948251958691858301613bf09161193c565b613bf99161193c565b038481018652613c09908661028f565b613c11612a40565b948251958691858301613c239161193c565b613c2c9161193c565b038481018652613c3c908661028f565b81810151613c49906132c4565b948251958691858301613c5b9161193c565b613c649161193c565b038481018652613c74908661028f565b613c7c612a53565b948251958691858301613c8e9161193c565b613c979161193c565b038481018652613ca7908661028f565b6060810151613cb590613eff565b948551613cc8906001600160401b031690565b613cd190612a9f565b908351918291868301613ce39161193c565b613cec9161193c565b038581018252613cfc908261028f565b8251958691858301613d0d9161193c565b613d169161193c565b038481018652613d26908661028f565b613d2e61293c565b948251958691858301613d409161193c565b613d499161193c565b038481018652613d59908661028f565b6080810151613d6d9063ffffffff16612a9f565b948251958691858301613d7f9161193c565b613d889161193c565b038481018652613d98908661028f565b613da0612a66565b948251958691858301613db29161193c565b613dbb9161193c565b038481018652613dcb908661028f565b60a0810151613dd9906132c4565b948251958691858301613deb9161193c565b613df49161193c565b038481018652613e04908661028f565b613e0c612962565b948251958691858301613e1e9161193c565b613e279161193c565b038481018652613e37908661028f565b60c08101516001600160401b0316613e4e90612a9f565b948251958691858301613e609161193c565b613e699161193c565b038481018652613e79908661028f565b613e81612a79565b948251958691858301613e939161193c565b613e9c9161193c565b038481018652613eac908661028f565b60e001516135f1906132c4565b6000806106d693602081519101845af43d15613ef7573d91613eda83610383565b92613ee8604051948561028f565b83523d6000602085013e61402d565b60609161402d565b613f07610ccb565b90613f106128ff565b9160408080518095602094858301613f279161193c565b613f309161193c565b0393601f19948581018752613f45908761028f565b8051613f539060ff16612a9f565b958251968791868301613f659161193c565b613f6e9161193c565b038581018752613f7e908761028f565b613f86612a2d565b958251968791868301613f989161193c565b613fa19161193c565b038581018752613fb1908761028f565b83810151613fc19060ff16612a9f565b958251968791868301613fd39161193c565b613fdc9161193c565b038581018752613fec908761028f565b613ff4612a8c565b9582519687918683016140069161193c565b61400f9161193c565b03858101875261401f908761028f565b01516135f19060ff16612a9f565b90614054575080511561404257602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614087575b614065575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561405d56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00bb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344431ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212206d2cb472a9636cfce694915c68d0842740a881a1ce7a49946b6ea4f7e2dbeb4664736f6c63430008190033",
1018
+ "deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c806306c106f9146101d75780631e1afc48146101d2578063264f195b146101cd57806327e935a1146101c857806347453a2a146101c35780634f1ef286146101be57806352d1902d146101b95780635fd689df146101b4578063621fbd59146101af57806373d335eb146101aa5780637a9e5e4b146101a557806382ae9ef7146101a05780638fb360371461019b5780639039e4951461019657806395fabcf0146101915780639b0715001461018c5780639f065a2514610187578063a9e50c1014610182578063ad3cb1cc1461017d578063bf7e214f14610178578063c94c93e714610173578063cd6dc6871461016e578063da55d96a14610169578063e0c14aa814610164578063e11418b71461015f578063e36f9a071461015a578063e44efb5a146101555763f5786b4b1461015057600080fd5b611094565b611074565b611056565b61100d565b610edf565b610ebc565b610d8b565b610d5a565b610d24565b610cde565b610ca4565b610c86565b610c68565b610c4a565b610c27565b610bd4565b610bbb565b610b40565b610b1b565b610afd565b610ac2565b610a57565b61094a565b6108d9565b61082a565b61080e565b6106d9565b6101ec565b60009103126101e757565b600080fd5b346101e75760003660031901126101e757602063ffffffff60095416604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111761024157604052565b610210565b606081019081106001600160401b0382111761024157604052565b6001600160401b03811161024157604052565b602081019081106001600160401b0382111761024157604052565b90601f801991011681019081106001600160401b0382111761024157604052565b6040519061010082018281106001600160401b0382111761024157604052565b604051906102dd82610246565b565b604051906102dd82610226565b60ff8116036101e757565b63ffffffff8116036101e757565b35906102dd826102f7565b91908260409103126101e75760405161032881610226565b60208082948035610338816102ec565b8452013591610346836102f7565b0152565b91906080838203126101e757602061037e6040519261036884610226565b604084966103768382610310565b865201610310565b910152565b6001600160401b03811161024157601f01601f191660200190565b81601f820112156101e7578035906103b582610383565b926103c3604051948561028f565b828452602083830101116101e757816000926020809301838601378301015290565b91908260609103126101e7576040516103fd81610246565b6040808294803561040d816102ec565b8452602081013561041d816102ec565b6020850152013591610346836102ec565b35906001600160401b03821682036101e757565b6001600160401b0381116102415760051b60200190565b6004359061ffff821682036101e757565b359061ffff821682036101e757565b91909160409081818503126101e757815161049381610226565b809482356104a0816102f7565b8252602092838101356001600160401b03918282116101e757019180601f840112156101e7578235906104d282610442565b966104df8151988961028f565b828852868089019360051b860101948286116101e757878101935b86851061050c57505050505050500152565b84358681116101e75782019060609081601f1984880301126101e75784519161053483610246565b61053f8c850161046a565b83528584013561054e816102f7565b8c840152830135918883116101e75761056e878d8096958196010161039e565b868201528152019401936104fa565b90604060206102dd936105a484825163ffffffff6020809260ff8151168552015116910152565b015191019063ffffffff6020809260ff8151168552015116910152565b60005b8381106105d45750506000910152565b81810151838201526020016105c4565b906020916105fd815180928185528580860191016105c1565b601f01601f1916010190565b906106d6916020815261062060208201835161057d565b60208201519061063e6101a0928360a08401526101c08301906105e4565b9160e06106b2610660604087015195601f1996878783030160c08801526105e4565b61068c60608801518487019060ff60408092828151168552826020820151166020860152015116910152565b608087015163ffffffff1661014086015260a087015186868303016101608701526105e4565b60c08601516001600160401b031661018085015294015192828503019101526105e4565b90565b346101e7576003196040368201126101e757600480356001600160401b03928382116101e7576101a09082360301126101e7576107146102b0565b906107213682850161034a565b825260848101358481116101e75761073e9084369184010161039e565b602083015260a48101358481116101e75761075e9084369184010161039e565b60408301526107703660c483016103e5565b60608301526107826101248201610305565b60808301526101448101358481116101e7576107a39084369184010161039e565b60a08301526107b5610164820161042e565b60c0830152610184810135908482116101e757836107d6923692010161039e565b60e08201526024359283116101e7576107f86107fe9261080a94369101610479565b906114a6565b60405191829182610609565b0390f35b346101e75760003660031901126101e757602060405160018152f35b346101e75760203660031901126101e7576004356108483633611b3c565b8015610862576004541561085857005b6004556000600355005b604051636ad43cc360e11b8152600490fd5b634e487b7160e01b600052603260045260246000fd5b6012548110156108af5760126000526000805160206140b18339815191520190600090565b610874565b6011548110156108af5760116000526000805160206140d18339815191520190600090565b346101e75760203660031901126101e7576004356006548110156101e75760066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01546040516001600160a01b039091168152602090f35b600435906001600160a01b03821682036101e757565b60403660031901126101e75761095e610934565b6024356001600160401b0381116101e75761097d90369060040161039e565b90610986612cb4565b6109903633611b3c565b610998612cb4565b6040516352d1902d60e01b8152916020836004816001600160a01b0386165afa60009381610a26575b506109eb57604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b0390fd5b906000805160206140f18339815191528303610a0d57610a0b92506138ab565b005b604051632a87526960e21b815260048101849052602490fd5b610a4991945060203d602011610a50575b610a41818361028f565b81019061135c565b92386109c1565b503d610a37565b346101e75760003660031901126101e7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610ab05760206040516000805160206140f18339815191528152f35b60405163703e46dd60e11b8152600490fd5b346101e75760203660031901126101e757600435610ae03633611b3c565b8015610aeb57600855005b604051630e7a0f8f60e11b8152600490fd5b346101e75760003660031901126101e7576020600054604051908152f35b346101e75760003660031901126101e7576020610b36611690565b6040519015158152f35b346101e75760203660031901126101e757610b59610934565b600080516020614091833981519152546001600160a01b03919082163303610ba457803b15610b8b57610a0b90611c9e565b6040516361798f2f60e11b815291166004820152602490fd5b60405162d1953b60e31b8152336004820152602490fd5b346101e75760003660031901126101e757610a0b61174a565b346101e75760003660031901126101e7576000805160206140918339815191525460a01c60ff1615610c1e576020638fb3603760e01b5b6040516001600160e01b03199091168152f35b60206000610c0b565b346101e75760203660031901126101e757610c423633611b3c565b600435600755005b346101e75760003660031901126101e7576020600354604051908152f35b346101e75760003660031901126101e7576020600754604051908152f35b346101e75760003660031901126101e7576020600854604051908152f35b346101e75760003660031901126101e75760206001600160401b0360015416604051908152f35b60405190610cd882610274565b60008252565b346101e75760003660031901126101e75761080a604051610cfe81610226565b60058152640352e302e360dc1b60208201526040519182916020835260208301906105e4565b346101e75760003660031901126101e757600080516020614091833981519152546040516001600160a01b039091168152602090f35b346101e75760203660031901126101e7576004356000526005602052602060ff604060002054166040519015158152f35b346101e75760403660031901126101e757610da4610934565b60008051602061411183398151915254906001600160401b0360ff8360401c1615921680159081610eb4575b6001149081610eaa575b159081610ea1575b50610e8f57600080516020614111833981519152805467ffffffffffffffff19166001179055610e1b9082610e6a575b602435906123d9565b610e2157005b600080516020614111833981519152805460ff60401b19169055604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1005b600080516020614111833981519152805460ff60401b1916600160401b179055610e12565b60405163f92ee8a960e01b8152600490fd5b90501538610de2565b303b159150610dda565b839150610dd0565b346101e75760003660031901126101e757602060ff601954166040519015158152f35b346101e7576040806003193601126101e757610ef9610459565b6024356001600160401b0381116101e757610f1890369060040161039e565b9160045415610ffd57610f2b3633611b3c565b60008051602061409183398151915254610f5b90610f4f906001600160a01b031681565b6001600160a01b031690565b81516368fc2b7760e11b815261ffff841662010000176004820152336024820152908290829060449082905afa908115610ff857600091610fca575b5015610fa757610a0b83836126f2565b51639a28d60760e01b815233600482015261ffff91909116602482015260449150fd5b610fea9150823d8411610ff1575b610fe2818361028f565b8101906118ce565b5038610f97565b503d610fd8565b611417565b5163738c481160e01b8152600490fd5b346101e75760203660031901126101e75760043561102b3633611b3c565b601354806110475750420342811161104257601355005b61170d565b90810390811161104257601355005b346101e75760003660031901126101e7576020600454604051908152f35b346101e75760003660031901126101e75760206004541515604051908152f35b346101e7576020806003193601126101e7576004908135825415611294576110bc3633611b3c565b8015611283578254146110cb57005b6000825560035491821561127457600854908184116112505750506110ee6112ff565b906110f7611e92565b8252611104600054611926565b916040926040820152611115613630565b6060820152426001600160401b031660c082015261113161278b565b600181529261113f856127a5565b9083850191825260005b8681106111d75750505092826111be926111ab61118a6111ca967fd015d18975fb34c32e4bba198aa3c60e2af0ada80a66615e4d3eac9d6b0e25f4986114a6565b9361119783860151611912565b60c08601516001600160401b03169061365a565b6111b36102df565b9283528201526137ab565b60405191829182611739565b0390a1610a0b6000600355565b80611249816111f06111ea600195612517565b5061280d565b886111fd825161ffff1690565b910151611232611211825163ffffffff1690565b61122661121c6102d0565b61ffff9095168552565b63ffffffff16838c0152565b868201528651906112438383611960565b52611960565b5001611149565b60408051630f57b5f560e41b81529182019283526020830185905290918291010390fd5b60405163783bc0f160e11b8152fd5b604051636ad43cc360e11b81528390fd5b60405163738c481160e01b81528390fd5b604051906112b282610226565b60006020838281520152565b604051906112cb82610226565b816112d46112a5565b8152602061037e6112a5565b604051906112ed82610246565b60006040838281528260208201520152565b6040519061010082018281106001600160401b0382111761024157604052606060e08361132a6112be565b81528260208201528260408201526113406112e0565b83820152600060808201528260a0820152600060c08201520152565b908160209103126101e7575190565b90602080835260609060608401908063ffffffff94858151168288015201519460408080830152865180945260808201908360808660051b8501019801956000935b8685106113c05750505050505050505090565b909192939495969799988680611402600193868f89908f607f198a8603018d52519061ffff8251168552868201511686850152015191818a82015201906105e4565b9b9c9a019897969190910194019291906113ad565b6040513d6000823e3d90fd5b6020818303126101e7578051906001600160401b0382116101e7570181601f820112156101e757805161145581610383565b92611463604051948561028f565b818452602082840101116101e7576106d691602080850191016105c1565b90916114986106d6936040845260408401906105e4565b9160208184039101526105e4565b906114af6112ff565b5073__$b91d2ad766fd07dc99f56c1a0b020615bb$__60405163765809ab60e11b81526020928382806114e5846004830161136b565b0381865af4918215610ff857600092611671575b5060a0850180518051611634575061152c916115229161151b61153995611926565b9052611974565b5163ffffffff1690565b63ffffffff166080850152565b60405162409a0960e81b8152600081806115568760048301610609565b0381855af4908115610ff857600091611613575b5083830180518051806115dc5750505281604051809263b93612a760e01b825281806115998860048301610609565b03915af4908115610ff8576115b7926000926115bf575b5050611926565b60e082015290565b6115d59250803d10610a5057610a41818361028f565b38806115b0565b9150938092935084012090825190830120036115f757505090565b6109e7604051928392630ca2e06d60e11b845260048401611481565b61162e913d8091833e611626818361028f565b810190611423565b3861156a565b90506116409150611912565b9080820361164f575050611539565b604051631d97afef60e31b815260048101919091526024810191909152604490fd5b611689919250843d8611610a5057610a41818361028f565b90386114f9565b60ff60195416156116a3576106d6611c5c565b600190565b6040519061014082018281106001600160401b03821117610241576040526060808352610120836116d76112be565b602082015260006040820152600083820152600060808201528260a08201528260c08201528260e0820152826101008201520152565b634e487b7160e01b600052601160045260246000fd5b63ffffffff908116600019019190821161104257565b9060206106d69281815201906105e4565b60195460ff166118c1575b60195460ff1661187f577f17c789cd9b6ebb5030c7b906ed9f08f64563805e0aeab6d5f53dda9305a8348b6118536111be61178e611d81565b6117f26117996116a8565b916117c16117b46117af60095463ffffffff1690565b611723565b63ffffffff166060850152565b6117c9611e92565b6020840152426001600160401b031660408401526117e8601554611926565b60c0840152611926565b60a0820152611802601754611926565b60e0820152611812601854611926565b61010082015261183c61183761182f61182a84611ee5565b611926565b808452611912565b601555565b61184e600160ff196019541617601955565b611f0e565b0390a161185e611cf7565b61187161186d60195460ff1690565b1590565b61187757565b6102dd61174a565b6109e763ffffffff60001961189960095463ffffffff1690565b0116604051918291630642fe1b60e11b83526004830191909163ffffffff6020820193169052565b6118c9611cf7565b611755565b91908260409103126101e757815180151581036101e7576020909201516106d6816102f7565b60011981019190821161104257565b60001981019190821161104257565b805115611920576020015190565b50600090565b604051906020820152602081526106d681610226565b9061194f602092828151948592016105c1565b0190565b8051156108af5760200190565b80518210156108af5760209160051b010190565b6119ad91611980610ccb565b906119896128ff565b6119a7611a016040926040519788916119a76020988985019061193c565b9061193c565b03966119c1601f199889810183528261028f565b6119f56119e66119e16119d88a5163ffffffff1690565b63ffffffff1690565b612a9f565b6040519485938985019061193c565b0387810183528261028f565b916000925b848601805151851015611abe576119a7611ab46119a7611aa88995611a9a8d611a68611a628d60019a611a5c8f611a508f916119a7611a43612916565b91519b8c9485019061193c565b0386810189528861028f565b51611960565b51612b20565b92611a8e611a806119e186516001600160401b031690565b8d519788938d85019061193c565b0390810185528461028f565b88519485938885019061193c565b038a810183528261028f565b9401939050611a06565b5095509350505050565b6004116101e757600090600490565b6001600160e01b03199035818116939260048110611af457505050565b60040360031b82901b16169150565b6001600160a01b0390911681526040602082018190528101829052606091806000848401376000828201840152601f01601f1916010190565b6000805160206140918339815191528054611b75906001600160a01b0316611b6c611b6686611ac8565b90611ad7565b90843091612c25565b9015611b82575b50505050565b63ffffffff1615611c3c57600080516020614091833981519152805460ff60a01b1916600160a01b179055611bc490610f4f908190546001600160a01b031690565b91823b156101e757611bf09260009283604051809681958294634a63ebf760e11b845260048401611b03565b03925af18015610ff857611c23575b50600080516020614091833981519152805460ff60a01b1916905538808080611b7c565b80611c30611c3692610261565b806101dc565b38611bff565b60405162d1953b60e31b81526001600160a01b0383166004820152602490fd5b6013548015611920576007548101809111611042574210600a548015159081611c91575b50811591611c8c575090565b905090565b9050600854111538611c80565b60008051602061409183398151915280546001600160a01b0319166001600160a01b0390921691821790556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602090a1565b60135415611d1557611d07611c5c565b611d0d57565b6102dd613082565b42601355565b604051611d2781610274565b60008152906000368137565b90611d3d82610442565b611d4a604051918261028f565b8281528092611d5b601f1991610442565b0190602036910137565b8015611042576000190190565b60001981146110425760010190565b600c5490600e54918015611e8b57611d9883611d33565b9260005b818110611e615750905b60019081811180611e58575b15611e47578082168203611e0d57611e0590611df3611dd9611dd386611903565b88611960565b51611dec611de687611903565b89611960565b51906131cb565b611dff611dd386611903565b52611d72565b905b1c611da6565b909180611e2f611e22611dd3611e41946118f4565b51611dec611de684611903565b611e3b611dd3836118f4565b52611d65565b91611e07565b50505090611e5490611953565b5190565b50818311611db2565b80611e7a611e7060019361088a565b90549060031b1c90565b611e848288611960565b5201611d9c565b5060009150565b611e9a6112be565b50604051611ea781610226565b6002815263ffffffff46166020820152604051611ec381610226565b600181526001602082015260405191611edb83610226565b8252602082015290565b8051604051611ef381610274565b600081528252611f0282611f0e565b60208151910120915290565b611f16610ccb565b611f1e612929565b92604080518095602094858301611f349161193c565b611f3d9161193c565b0394601f19958681018252611f52908261028f565b8451611f5d906132c4565b908251918291868301611f6f9161193c565b611f789161193c565b038681018252611f88908261028f565b611f90612916565b908251918291868301611fa29161193c565b611fab9161193c565b038681018252611fbb908261028f565b83850151611fc890613314565b908151611fdb906001600160401b031690565b611fe490612a9f565b908351918291878301611ff69161193c565b611fff9161193c565b03878101825261200f908261028f565b82519182918683016120209161193c565b6120299161193c565b038681018252612039908261028f565b61204161293c565b9082519182918683016120539161193c565b61205c9161193c565b03868101825261206c908261028f565b848201516001600160401b031661208290612a9f565b9082519182918683016120949161193c565b61209d9161193c565b0386810182526120ad908261028f565b6120b561294f565b9082519182918683016120c79161193c565b6120d09161193c565b0386810182526120e0908261028f565b60608501516120f49063ffffffff16612a9f565b9082519182918683016121069161193c565b61210f9161193c565b03868101825261211f908261028f565b612127612962565b9082519182918683016121399161193c565b6121429161193c565b038681018252612152908261028f565b60808501516121669063ffffffff16612a9f565b9082519182918683016121789161193c565b6121819161193c565b038681018252612191908261028f565b612199612975565b9082519182918683016121ab9161193c565b6121b49161193c565b0386810182526121c4908261028f565b60a08501516121d2906132c4565b9082519182918683016121e49161193c565b6121ed9161193c565b0386810182526121fd908261028f565b612205612988565b9082519182918683016122179161193c565b6122209161193c565b038681018252612230908261028f565b60c085015161223e906132c4565b9082519182918683016122509161193c565b6122599161193c565b038681018252612269908261028f565b6122716129ce565b9082519182918683016122839161193c565b61228c9161193c565b03868101825261229c908261028f565b60e08501516122aa906132c4565b9082519182918683016122bc9161193c565b6122c59161193c565b0386810182526122d5908261028f565b6122dd6129ed565b9082519182918683016122ef9161193c565b6122f89161193c565b038681018252612308908261028f565b610100850151612317906132c4565b9082519182918683016123299161193c565b6123329161193c565b038681018252612342908261028f565b916000925b6101208601805151851015611abe576119a76123cf61012093611aa861239461238e8a6001978f611a5c908f6123828f6119a7611a43612a0c565b0390810188528761028f565b51613483565b6123c18d8c611a8e8c6119a76123b46119e188516001600160401b031690565b915198899485019061193c565b88519485938c85019061193c565b9401939050612347565b612402906123e5613601565b6123ed613601565b6123f5613601565b6123fd613601565b611c9e565b61240a613601565b612412613601565b61241a611d1b565b8051906001600160401b03821161024157600160401b821161024157600f5482600f558083106124d6575b50602080910190600f60005260005b8381106124a4575050505061249a9061247361246e611d1b565b612f5e565b612485600160ff196019541617601955565b61248d612e0e565b612495612e84565b600755565b6102dd6020600855565b82517f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80282015591810191600101612454565b827f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80291820191015b81811061250b5750612445565b600081556001016124fe565b6002548110156108af57600260005260011b7f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0190600090565b90600182811c92168015612581575b602083101461256b57565b634e487b7160e01b600052602260045260246000fd5b91607f1691612560565b90601f811161259957505050565b6000916000526020600020906020601f850160051c830194106125d7575b601f0160051c01915b8281106125cc57505050565b8181556001016125c0565b90925082906125b7565b9291906126dc5761ffff81511661ffff19845416178355600180930190602080910151938451916001600160401b0383116102415761262a836126248654612551565b8661258b565b602091601f841160011461266e575050819061265f939495600092612663575b50508160011b916000199060031b1c19161790565b9055565b01519050388061264a565b95601f9291921984169661268786600052602060002090565b936000915b8983106126c557505050836001959697106126ac575b505050811b019055565b015160001960f88460031b161c191690553880806126a2565b83850151865594850194938101939181019161268c565b634e487b7160e01b600052600060045260246000fd5b6002549160035480841160001461274857506102dd92506127216040519261271984610226565b61ffff168352565b602082015261274260035461273d61273882611d72565b600355565b612517565b906125e1565b61275190611d72565b60035561ffff6040519261276484610226565b1682526020820152600160401b821015610241576127428260016102dd9401600255612517565b6040519061279882610226565b6060602083600081520152565b906127af82610442565b60406127be604051928361028f565b83825281936127cf601f1991610442565b019160009060005b8481106127e5575050505050565b60209084516127f381610246565b8481528285818301526060878301528285010152016127d7565b9060405161281a81610226565b809261ffff81541682526001809101916040519283600082549461283d86612551565b93848452602096876001821691826000146128a957505060011461286a575b50506103469250038461028f565b86925060005281600020906000915b8583106128915750506103469350820101388061285c565b8054838a018501528894508793909201918101612879565b925093505061034694915060ff191682840152151560051b820101388061285c565b604051906128d882610226565b6001825260203681840137565b604051906128f282610226565b600a825260203681840137565b6129076128cb565b600861291282611953565b5390565b61291e6128cb565b601261291282611953565b6129316128cb565b600a61291282611953565b6129446128cb565b602861291282611953565b6129576128cb565b603061291282611953565b61296a6128cb565b603861291282611953565b61297d6128cb565b607a61291282611953565b6129906128e5565b60a260005b607f808311156129ba5790608060019284161760208286010153019060071c90612995565b50607f600192166020828501015301815290565b6129d66128e5565b60f260016000826020850153019060071c90612995565b6129f56128e5565b60fa60016000826020850153019060071c90612995565b612a146128e5565b6101926001600060926020850153019060071c90612995565b612a356128cb565b601061291282611953565b612a486128cb565b601a61291282611953565b612a5b6128cb565b602261291282611953565b612a6e6128cb565b603261291282611953565b612a816128cb565b604261291282611953565b612a946128cb565b601861291282611953565b9060809160806001600160401b03821610612afb57612abc6128e5565b60005b607f80841115612ae357908560019285161760208285010153019160071c91612abf565b5090929350607f600192166020828501015301815290565b909150612b066128cb565b9060f81b6001600160f81b03191660001a61291282611953565b6106d6612b616119a792612c19612c056119a7612c0c612b3e610ccb565b94612b476128ff565b9060409485928351998a916119a760209b8c85019061193c565b0398612b75601f199a8b810183528261028f565b612bb489612ba8612b986119e1612b91612b91895161ffff1690565b61ffff1690565b6119a7885195869485019061193c565b038b810183528261028f565b612bc389612ba8612b98612a2d565b612be089612ba8612b986119e16119d88489015163ffffffff1690565b612bf9612beb612a40565b85519d8e938c85019061193c565b038981018c528b61028f565b01516132c4565b915196879485019061193c565b0390810183528261028f565b60405163b700961360e01b602082019081526001600160a01b0393841660248301529290931660448401526001600160e01b03199093166064808401919091528252600093849390928492909160a08301916001600160401b0383118484101761024157604093859385528380528360205251915afa612ca25750565b9150915051906020518060201c150290565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116308114918215612cf2575b5050610ab057565b6000805160206140f18339815191525416141590503880612cea565b6040519060125480835282602091602082019060126000526000805160206140b1833981519152936000905b828210612d50575050506102dd9250038361028f565b855484526001958601958895509381019390910190612d3a565b600160401b8111610241576011549080601155818110612d88575050565b60009060116000526000805160206140d183398151915292830192015b828110612db157505050565b818155600101612da5565b600160401b8111610241576012549080601255818110612dda575050565b60009060126000526000805160206140b183398151915292830192015b828110612e0357505050565b818155600101612df7565b600f546001600160401b03811161024157612e2881612d6a565b601160009081527f8d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac80280545b838310612e605750505050565b60018091920192835492816000805160206140d18339815191520155019190612e53565b6010546001600160401b03811161024157612e9e81612dbc565b601260009081527f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67280545b838310612ed65750505050565b60018091920192835492816000805160206140b18339815191520155019190612ec9565b6011546001600160401b03811161024157612f1481612dbc565b601260009081526000805160206140d183398151915280545b838310612f3a5750505050565b60018091920192835492816000805160206140b18339815191520155019190612f2d565b8051906001600160401b03821161024157600160401b82116102415760105482601055808310612fd7575b50602080910190601060005260005b838110612fa55750505050565b82517f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67282015591810191600101612f98565b827f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae67291820191015b81811061300c5750612f89565b60008155600101612fff565b8051906001600160401b0382116102415761303282612d6a565b602080910190601160005260005b83811061304d5750505050565b82516000805160206140d183398151915282015591810191600101613040565b90600163ffffffff8093160191821161104257565b61309161186d60195460ff1690565b613189576130a460ff1960195416601955565b6130af600b54600c55565b6130ba600d54600e55565b6130d26130c5612d0e565b6130cd612efa565b613018565b6130dc6000600b55565b6130e66000600d55565b6130f06000600a55565b6130f942601355565b61312a61310e6001546001600160401b031690565b6001600160401b03166001600160401b03196014541617601455565b613135601654601755565b613140600054601855565b61314f60ff1960195416601955565b6131596000601655565b6102dd61317361316e60095463ffffffff1690565b61306d565b63ffffffff1663ffffffff196009541617600955565b6109e763ffffffff6000196131a360095463ffffffff1690565b0116604051918291631c70a36560e21b83526004830191909163ffffffff6020820193169052565b6040516334509dd160e01b8152600481019190915273__$398d4f030862acab53d338aebf0b4256d7$__916020908183602481875af4928315610ff85760009361329f575b506040516333aec0ad60e21b815260048101919091529192819083908180602481015b03915af4918215610ff85760009261327c575b5061327690613268604051938492830195869091604092825260208201520190565b03601f19810183528261028f565b51902090565b81925061329890613276923d8511610a5057610a41818361028f565b9190613246565b6132339350906132bc8392833d8511610a5057610a41818361028f565b935090613210565b6106d660206132dc6001600160401b03845116612a9f565b60405193816132f486935180928680870191016105c1565b8201613308825180938680850191016105c1565b0103808452018261028f565b61331c610ccb565b90613325612929565b604080519384602093849283830161333c9161193c565b6133459161193c565b0393601f1994858101875261335a908761028f565b805161336590613952565b958651613378906001600160401b031690565b61338190612a9f565b9084519182918583016133939161193c565b61339c9161193c565b0386810182526133ac908261028f565b83519687918483016133bd9161193c565b6133c69161193c565b0385810187526133d6908761028f565b6133de612916565b9583519687918483016133f09161193c565b6133f99161193c565b038581018752613409908761028f565b015161341490613952565b908151613427906001600160401b031690565b61343090612a9f565b9481519586918583016134429161193c565b61344b9161193c565b03848101865261345b908661028f565b51938492830161346a9161193c565b6134739161193c565b0390810182526106d6908261028f565b61348b610ccb565b90613494612929565b91604080805180956020948583016134ab9161193c565b6134b49161193c565b0393601f199485810187526134c9908761028f565b80516134d490613a0a565b9586516134e7906001600160401b031690565b6134f090612a9f565b9083519182918783016135029161193c565b61350b9161193c565b03868101825261351b908261028f565b825196879186830161352c9161193c565b6135359161193c565b038581018752613545908761028f565b61354d612a2d565b95825196879186830161355f9161193c565b6135689161193c565b038581018752613578908761028f565b838101516135889060ff16612a9f565b95825196879186830161359a9161193c565b6135a39161193c565b0385810187526135b3908761028f565b6135bb612a40565b9582519687918683016135cd9161193c565b6135d69161193c565b0385810187526135e6908761028f565b01516135f1906132c4565b9051938492830161346a9161193c565b60ff6000805160206141118339815191525460401c161561361e57565b604051631afcd79f60e31b8152600490fd5b6136386112e0565b5060405161364581610246565b60008152600060208201526000604082015290565b91613663611cf7565b600a548015159081613795575b50613788575b6016541561377f575b600a5490810180911161104257600a55816000556001600160401b03600191166001600160401b031960015416176001556136bb600b54611d72565b6136c481600b55565b906136d0600d54611d72565b926011546136dd85611903565b101561376e57613711906136f86136f386611903565b6108b4565b90919082549060031b91821b91600019901b1916179055565b9190915b808316156137245750600d5550565b908061375f61375361373e611e706136f3613764966118f4565b61374d611e706136f386611903565b906131cb565b6136f86136f3846118f4565b611d65565b91811c9190613715565b61377790613aa7565b919091613715565b8260165561367f565b613790613082565b613676565b9050818101809111611042576008541038613670565b6137b3610ccb565b906137bc612929565b60408051938460209384928383016137d39161193c565b6137dc9161193c565b0393601f199485810187526137f1908761028f565b80516137fc90613add565b95865161380f906001600160401b031690565b61381890612a9f565b90845191829185830161382a9161193c565b6138339161193c565b038681018252613843908261028f565b83519687918483016138549161193c565b61385d9161193c565b03858101875261386d908761028f565b613875612916565b9583519687918483016138879161193c565b6138909161193c565b0385810187526138a0908761028f565b015161341490611974565b90813b15613931576000805160206140f183398151915280546001600160a01b0319166001600160a01b0384169081179091557fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a28051156139165761391391613eb9565b50565b50503461391f57565b60405163b398979f60e01b8152600490fd5b604051634c9c8ce360e01b81526001600160a01b0383166004820152602490fd5b6106d66119a76119a7612c196139fa6119e16119d860206119a7986139ef6119a76139c961397e610ccb565b6139986139896128ff565b6040519d8e938985019061193c565b039a6139ac601f199c8d810183528261028f565b612ba86119e66119e16139c36139c3895160ff1690565b60ff1690565b6139e36139d4612a2d565b6040519a8b938785019061193c565b0389810189528861028f565b015163ffffffff1690565b604051958693602085019061193c565b6106d66119a76119a7612c196139fa60206119a796612c056119a7613a81613a30610ccb565b613a4a613a3b6128ff565b6040519b8c938985019061193c565b0398613a5e601f199a8b810183528261028f565b613a756119e66119e16139c36139c3895160ff1690565b0389810183528261028f565b613a9b613a8c612916565b6040519889938785019061193c565b0387810187528661028f565b601154600160401b8110156102415760018101806011558110156108af5760116000526000805160206140d18339815191520155565b613ae5610ccb565b90613aee612929565b91604080518094602093848301613b049161193c565b613b0d9161193c565b0392601f19938481018652613b22908661028f565b8051613b2d90613314565b948551613b40906001600160401b031690565b613b4990612a9f565b908351918291868301613b5b9161193c565b613b649161193c565b038581018252613b74908261028f565b8251958691858301613b859161193c565b613b8e9161193c565b038481018652613b9e908661028f565b613ba6612916565b948251958691858301613bb89161193c565b613bc19161193c565b038481018652613bd1908661028f565b82810151613bde906132c4565b948251958691858301613bf09161193c565b613bf99161193c565b038481018652613c09908661028f565b613c11612a40565b948251958691858301613c239161193c565b613c2c9161193c565b038481018652613c3c908661028f565b81810151613c49906132c4565b948251958691858301613c5b9161193c565b613c649161193c565b038481018652613c74908661028f565b613c7c612a53565b948251958691858301613c8e9161193c565b613c979161193c565b038481018652613ca7908661028f565b6060810151613cb590613eff565b948551613cc8906001600160401b031690565b613cd190612a9f565b908351918291868301613ce39161193c565b613cec9161193c565b038581018252613cfc908261028f565b8251958691858301613d0d9161193c565b613d169161193c565b038481018652613d26908661028f565b613d2e61293c565b948251958691858301613d409161193c565b613d499161193c565b038481018652613d59908661028f565b6080810151613d6d9063ffffffff16612a9f565b948251958691858301613d7f9161193c565b613d889161193c565b038481018652613d98908661028f565b613da0612a66565b948251958691858301613db29161193c565b613dbb9161193c565b038481018652613dcb908661028f565b60a0810151613dd9906132c4565b948251958691858301613deb9161193c565b613df49161193c565b038481018652613e04908661028f565b613e0c612962565b948251958691858301613e1e9161193c565b613e279161193c565b038481018652613e37908661028f565b60c08101516001600160401b0316613e4e90612a9f565b948251958691858301613e609161193c565b613e699161193c565b038481018652613e79908661028f565b613e81612a79565b948251958691858301613e939161193c565b613e9c9161193c565b038481018652613eac908661028f565b60e001516135f1906132c4565b6000806106d693602081519101845af43d15613ef7573d91613eda83610383565b92613ee8604051948561028f565b83523d6000602085013e61402d565b60609161402d565b613f07610ccb565b90613f106128ff565b9160408080518095602094858301613f279161193c565b613f309161193c565b0393601f19948581018752613f45908761028f565b8051613f539060ff16612a9f565b958251968791868301613f659161193c565b613f6e9161193c565b038581018752613f7e908761028f565b613f86612a2d565b958251968791868301613f989161193c565b613fa19161193c565b038581018752613fb1908761028f565b83810151613fc19060ff16612a9f565b958251968791868301613fd39161193c565b613fdc9161193c565b038581018752613fec908761028f565b613ff4612a8c565b9582519687918683016140069161193c565b61400f9161193c565b03858101875261401f908761028f565b01516135f19060ff16612a9f565b90614054575080511561404257602081519101fd5b60405163d6bda27560e01b8152600490fd5b81511580614087575b614065575090565b604051639996b31560e01b81526001600160a01b039091166004820152602490fd5b50803b1561405d56fef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00bb8a6a4669ba250d26cd7a459eca9d215f8307e33aebe50379bc5a3617ec344431ecc21a745e3968a04e9570e4425bc18fa8019c68028196b546d1669c200c68360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbcf0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212206d2cb472a9636cfce694915c68d0842740a881a1ce7a49946b6ea4f7e2dbeb4664736f6c63430008190033",
1019
+ "linkReferences": {
1020
+ "contracts/common/sysio_merkle.sol": {
1021
+ "sysio_merkle": [
1022
+ {
1023
+ "length": 20,
1024
+ "start": 12817
1025
+ }
1026
+ ]
1027
+ },
1028
+ "contracts/outpost/OPPCommon.sol": {
1029
+ "OPPCommon": [
1030
+ {
1031
+ "length": 20,
1032
+ "start": 5345
1033
+ }
1034
+ ]
1035
+ }
1036
+ },
1037
+ "deployedLinkReferences": {
1038
+ "contracts/common/sysio_merkle.sol": {
1039
+ "sysio_merkle": [
1040
+ {
1041
+ "length": 20,
1042
+ "start": 12770
1043
+ }
1044
+ ]
1045
+ },
1046
+ "contracts/outpost/OPPCommon.sol": {
1047
+ "OPPCommon": [
1048
+ {
1049
+ "length": 20,
1050
+ "start": 5298
1051
+ }
1052
+ ]
1053
+ }
1054
+ }
1055
+ }